- Apr 13, 2012
-
-
Benjamin Kramer authored
llvm-svn: 154661
-
Craig Topper authored
Silence various build warnings from Hexagon backend that show up in release builds. Mostly converting 'assert(0)' to 'llvm_unreachable' to silence warnings about missing returns. Also fold some variable declarations into asserts to prevent the variables from being unused in release builds. llvm-svn: 154660
-
Dan Gohman authored
library return value optimization for phi uses. Even when the phi itself is not dominated, the specific use may be dominated. llvm-svn: 154647
-
Bill Wendling authored
obviously cannot know that this code is present, let alone used. So prevent the internalize pass from internalizing those global values which code-gen may insert. llvm-svn: 154645
-
Dan Gohman authored
optimizing autorelease calls on phi nodes with null operands. This fixes rdar://11207070. llvm-svn: 154642
-
Dan Gohman authored
as Eli noticed. llvm-svn: 154641
-
Dan Gohman authored
directly instead of a user Instruction. This allows them to test whether a def dominates a particular operand if the user instruction is a PHI. llvm-svn: 154631
-
Kevin Enderby authored
symbolic operands added when using the C disassembler API. llvm-svn: 154628
-
Ted Kremenek authored
llvm-svn: 154622
-
- Apr 12, 2012
-
-
Evandro Menezes authored
llvm-svn: 154620
-
Sirish Pande authored
llvm-svn: 154616
-
Preston Gurd authored
of zero-initialized sections, virtual sections and common symbols and preventing the loading of sections which are not required for execution such as debug information. Patch by Andy Kaylor! llvm-svn: 154610
-
Evan Cheng authored
Generalize r153635 to deal with TokenFactor chains; also clean up the logic and fix the tests. rdar://11069732, rdar://11236106 llvm-svn: 154604
-
Evandro Menezes authored
llvm-svn: 154597
-
Benjamin Kramer authored
llvm-svn: 154588
-
Craig Topper authored
llvm-svn: 154580
-
Jim Grosbach authored
They reference the PC directly, so things work properly that way. rdar://11231229 llvm-svn: 154576
-
Akira Hatanaka authored
otherwise expand FNEG during legalization. llvm-svn: 154546
-
Akira Hatanaka authored
Invalid operation is signaled if the operand of these instructions is NaN. llvm-svn: 154545
-
Kevin Enderby authored
of a VST instruction. llvm-svn: 154544
-
Akira Hatanaka authored
- FCOPYSIGN nodes that have operands of different types were not handled. - Different code was generated depending on the endianness of the target. Additionally, code is added that emits INS and EXT instructions, if they are supported by target (they are R2 instructions). llvm-svn: 154540
-
- Apr 11, 2012
-
-
Chad Rosier authored
llvm-svn: 154522
-
Jim Grosbach authored
While there is an encoding for it in VUZP, the result of that is undefined, so we should avoid it. Define the instruction as a pseudo for VTRN.32 instead, as the ARM ARM indicates. rdar://11222366 llvm-svn: 154511
-
Jim Grosbach authored
While there is an encoding for it in VZIP, the result of that is undefined, so we should avoid it. Define the instruction as a pseudo for VTRN.32 instead, as the ARM ARM indicates. rdar://11221911 llvm-svn: 154505
-
Sylvestre Ledru authored
Thanks to Pino Toscano for the patch llvm-svn: 154500
-
Benjamin Kramer authored
FoldingSet is implemented as a chained hash table. When there is a hash collision during insertion, which is common as we fill the table until a load factor of 2.0 is hit, we walk the chained elements, comparing every operand with the new element's operands. This can be very expensive if the MDNode has many operands. We sacrifice a word of space in MDNode to cache the full hash value, reducing compares on collision to a minimum. MDNode grows from 28 to 32 bytes + operands on x86. On x86_64 the new bits fit nicely into existing padding, not growing the struct at all. The actual speedup depends a lot on the test case and is typically between 1% and 2% for C++ code with clang -c -O0 -g. llvm-svn: 154497
-
Benjamin Kramer authored
llvm-svn: 154496
-
Benjamin Kramer authored
llvm-svn: 154495
-
Nadav Rotem authored
llvm-svn: 154494
-
Duncan Sands authored
binary and assembly. Patch by Carlo Kok. Emitting was inspired by but not based on the D llvm bindings. llvm-svn: 154493
-
Chandler Carruth authored
Yea, 'NumCallerCallersAnalyzed' isn't a great name, suggestions welcome. llvm-svn: 154492
-
Nadav Rotem authored
Fix a dagcombine optimization which assumes that the vsetcc result type is always of the same size as the compared values. This is ture for SSE/AVX/NEON but not for all targets. llvm-svn: 154490
-
-
Nadav Rotem authored
Original message: Modify the code that lowers shuffles to blends from using blendvXX to vblendXX. blendV uses a register for the selection while Vblend uses an immediate. On sandybridge they still have the same latency and execute on the same execution ports. llvm-svn: 154483
-
Evan Cheng authored
predicates. Also remove NEON2 since it's not really useful and it is confusing. If NEON + VFP4 implies NEON2 but NEON2 doesn't imply NEON + VFP4, what does it really mean? rdar://10139676 llvm-svn: 154480
-
Craig Topper authored
llvm-svn: 154479
-
Craig Topper authored
llvm-svn: 154478
-
Craig Topper authored
llvm-svn: 154473
-
-
Charles Davis authored
ret instructions. llvm-svn: 154468
-