Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Split -enable-finite-only-fp-math to two options: | Evan Cheng | 2010-07-15 | 6 | -26/+22 |
| | | | | | | -enable-no-nans-fp-math and -enable-no-infs-fp-math. All of the current codegen fp math optimizations only care whether the fp arithmetics arguments and results can never be NaN. llvm-svn: 108465 | ||||
* | fix the definitions of ConstTextCoalSection/ConstDataCoalSection | Chris Lattner | 2010-07-15 | 1 | -2/+3 |
| | | | | | | | | | | | to keep "Text" in sync with the "pure instructions" section attribute. Lack of this attribute was preventing the assembler from emitting multibyte noops instructions for templates (and inlines, and other coalesced stuff) and was causing the assembler to mismatch .o files. This fixes rdar://8018335 llvm-svn: 108461 | ||||
* | fix indentation and 80 cols | Chris Lattner | 2010-07-15 | 1 | -2/+3 |
| | | | | llvm-svn: 108460 | ||||
* | Don't merge uses when they are targetting fixup sites with | Dan Gohman | 2010-07-15 | 1 | -1/+20 |
| | | | | | | | | | | | | | different widths. In a use with a narrower fixup, formulae may be wider than the fixup, in which case the high bits aren't necessarily meaningful, so it isn't safe to reuse them for uses with wider fixups. This fixes PR7618, though the testcase is too large for a reasonable regression test, since it heavily dependes on hitting LSR's heuristics in a certain way. llvm-svn: 108455 | ||||
* | fix the encoding of MMX_MOVFR642Qrr, it starts with 0xF2 not 0xF3, | Chris Lattner | 2010-07-15 | 1 | -1/+1 |
| | | | | | | | | this fixes rdar://8192860. Unfortunately it can only be triggered with llc because llvm-mc matches another (correctly encoded) version of this, so no testcase. llvm-svn: 108454 | ||||
* | Use dbgs() instead of errs() in a DEBUG. | Dan Gohman | 2010-07-15 | 1 | -1/+1 |
| | | | | llvm-svn: 108453 | ||||
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. | Bill Wendling | 2010-07-15 | 1 | -3/+3 |
| | | | | llvm-svn: 108452 | ||||
* | Teach ScalarEvolution how to fold trunc(undef) and anyext(undef) to undef. | Dan Gohman | 2010-07-15 | 1 | -0/+14 |
| | | | | | | This helps LSR behave more consistently on bugpoint-reduced testcases. llvm-svn: 108451 | ||||
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. | Bill Wendling | 2010-07-15 | 1 | -2/+3 |
| | | | | llvm-svn: 108450 | ||||
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. This time | Bill Wendling | 2010-07-15 | 3 | -18/+24 |
| | | | | | | make sure to allocate enough space in the std::vector. llvm-svn: 108449 | ||||
* | Reserve a goodly amount of room for the vectors. | Bill Wendling | 2010-07-15 | 1 | -2/+4 |
| | | | | llvm-svn: 108448 | ||||
* | Fix crash reported in PR7653. | Devang Patel | 2010-07-15 | 1 | -1/+1 |
| | | | | llvm-svn: 108441 | ||||
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. | Bill Wendling | 2010-07-15 | 2 | -14/+14 |
| | | | | llvm-svn: 108440 | ||||
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. | Bill Wendling | 2010-07-15 | 1 | -1/+1 |
| | | | | llvm-svn: 108438 | ||||
* | Speculatively revert r108429 to fix the clang self-host. | Owen Anderson | 2010-07-15 | 2 | -19/+28 |
| | | | | llvm-svn: 108436 | ||||
* | Per Chris' suggestion, get rid of the select canonicalization and just add | Owen Anderson | 2010-07-15 | 2 | -28/+19 |
| | | | | | | | | the corresponding or-icmp-and pattern. This has the added benefit of doing the matching earlier, and thus being less susceptible to being confused by earlier transforms. llvm-svn: 108429 | ||||
* | Remove unneeded check, and correct style. | Owen Anderson | 2010-07-15 | 1 | -3/+2 |
| | | | | llvm-svn: 108427 | ||||
* | Watch out for a constant offset cancelling out a base register, forming | Dan Gohman | 2010-07-15 | 1 | -2/+9 |
| | | | | | | | a zero. This situation arrises in Fortran code with induction variables that start at 1 instead of 0. This fixes PR7651. llvm-svn: 108424 | ||||
* | Reapply r108378, with bugfixes, testcase, and improved comment formatting. | Owen Anderson | 2010-07-15 | 2 | -0/+47 |
| | | | | | | This now passes LIT, nighty test, and llvm-gcc bootstrap on my machine. llvm-svn: 108422 | ||||
* | cache another dereferenced iterator | Gabor Greif | 2010-07-15 | 1 | -4/+6 |
| | | | | llvm-svn: 108421 | ||||
* | revert bill's patches in an attempt to fix the buildbot. | Chris Lattner | 2010-07-15 | 4 | -27/+22 |
| | | | | llvm-svn: 108419 | ||||
* | This is a full sentence. | Nick Lewycky | 2010-07-15 | 1 | -1/+1 |
| | | | | llvm-svn: 108418 | ||||
* | Disable aliases on all platforms. | Nick Lewycky | 2010-07-15 | 1 | -0/+5 |
| | | | | llvm-svn: 108417 | ||||
* | Fix PR7647, handling the case when 'To' ends up being | Chris Lattner | 2010-07-15 | 1 | -14/+34 |
| | | | | | | | | | | mutated by recursive simplification. This also enhances ReplaceAndSimplifyAllUses to actually do a real RAUW at the end of it, which updates any value handles pointing to "From" to start pointing to "To". This seems useful for debug info and random other VH users. llvm-svn: 108415 | ||||
* | make various clients of ReplaceAndSimplifyAllUses tolerate | Chris Lattner | 2010-07-15 | 1 | -2/+3 |
| | | | | | | | | it *changing* the things it replaces, not just causing them to drop to null. There is no functionality change yet, but this is required for a subsequent patch. llvm-svn: 108414 | ||||
* | Fix headers. | Bill Wendling | 2010-07-15 | 2 | -1/+1 |
| | | | | llvm-svn: 108413 | ||||
* | Use std::vector instead of a hard-coded array. The length of that array could | Bill Wendling | 2010-07-15 | 2 | -17/+20 |
| | | | | | | get *very* large, but we only need it to be the size of the number of pregs. llvm-svn: 108412 | ||||
* | Use std::vector instead of a hard-coded array. The length of that array could | Bill Wendling | 2010-07-15 | 2 | -6/+8 |
| | | | | | | get *very* large, but we only need it to be the size of thenumber of pregs. llvm-svn: 108411 | ||||
* | Revert r108401; it breaks bootstrap :( | Eli Friedman | 2010-07-15 | 1 | -3/+1 |
| | | | | llvm-svn: 108407 | ||||
* | Add AssertingVH which makes PR7647 break consistently. | Eli Friedman | 2010-07-15 | 1 | -1/+3 |
| | | | | llvm-svn: 108401 | ||||
* | Random note about bswap. | Eli Friedman | 2010-07-15 | 1 | -0/+26 |
| | | | | llvm-svn: 108396 | ||||
* | a more graceful fix for test/Other/inline-asm-newline-terminator.ll, | Chris Lattner | 2010-07-15 | 2 | -15/+1 |
| | | | | | | follow on to r103765 llvm-svn: 108390 | ||||
* | Speculatively revert r108378; may be causing bootstrap failures. | Eli Friedman | 2010-07-15 | 2 | -43/+0 |
| | | | | llvm-svn: 108389 | ||||
* | Last COPY conversion. | Jakob Stoklund Olesen | 2010-07-14 | 1 | -3/+2 |
| | | | | llvm-svn: 108387 | ||||
* | Remove restriction on NEON alignment values. Some of the NEON ld/st | Bob Wilson | 2010-07-14 | 3 | -9/+4 |
| | | | | | | | instructions use different values (e.g., 2-byte or 4-byte alignment). Also fix ARMInstPrinter to print these alignments as bits instead of bytes. llvm-svn: 108386 | ||||
* | Use TargetOpcode::COPY instead of X86-native register copy instructions when | Jakob Stoklund Olesen | 2010-07-14 | 2 | -30/+27 |
| | | | | | | | lowering atomics. This will allow those copies to still be coalesced after TII::isMoveInstr is removed. llvm-svn: 108385 | ||||
* | 80-col. | Eric Christopher | 2010-07-14 | 1 | -2/+3 |
| | | | | llvm-svn: 108381 | ||||
* | Add instcombine transforms to optimize tests of multiple bits of the same ↵ | Owen Anderson | 2010-07-14 | 2 | -0/+43 |
| | | | | | | value into a single larger comparison. llvm-svn: 108378 | ||||
* | Make the order in which variables are described in debug information | Dan Gohman | 2010-07-14 | 1 | -0/+23 |
| | | | | | | | | independent of the order that isel happens to visit the dbg_declare intrinsics. This fixes a bug in which the formal arguments were being printed in reverse order, now that fast isel is going bottom up. llvm-svn: 108369 | ||||
* | fix indentation | Chris Lattner | 2010-07-14 | 1 | -9/+7 |
| | | | | llvm-svn: 108368 | ||||
* | Don't pass StringRef by reference. | Benjamin Kramer | 2010-07-14 | 30 | -55/+54 |
| | | | | llvm-svn: 108366 | ||||
* | Properly restore DebugLoc after leaving the local constant area. | Dan Gohman | 2010-07-14 | 1 | -1/+2 |
| | | | | llvm-svn: 108364 | ||||
* | Just use getParent() instead of getModuleFromVal when the value is a Function. | Dan Gohman | 2010-07-14 | 1 | -1/+1 |
| | | | | llvm-svn: 108358 | ||||
* | Rename WriteConstantInt to WriteConstantInternal, to avoid confusion. | Dan Gohman | 2010-07-14 | 1 | -4/+5 |
| | | | | llvm-svn: 108357 | ||||
* | Extend SimplifyCFG's common-destination folding heuristic to allow a single | Owen Anderson | 2010-07-14 | 1 | -5/+67 |
| | | | | | | | | | | "bonus" instruction to be speculatively executed. Add a heuristic to ensure we're not tripping up out-of-order execution by checking that this bonus instruction only uses values that were already guaranteed to be available. This allows us to eliminate the short circuit in (x&1)&&(x&2). llvm-svn: 108351 | ||||
* | Factor out metadata parsing into a separate function. | Dan Gohman | 2010-07-14 | 2 | -27/+39 |
| | | | | llvm-svn: 108343 | ||||
* | Merge lib/Target/X86/X86COFF.h into include/llvm/Support/COFF.h, | Chris Lattner | 2010-07-14 | 2 | -100/+8 |
| | | | | | | patch by Michael Spencer! llvm-svn: 108342 | ||||
* | Improve 64-subtraction of immediates when parts of the immediate can fit | Jim Grosbach | 2010-07-14 | 2 | -11/+40 |
| | | | | | | | | | | | in the literal field of an instruction. E.g., long long foo(long long a) { return a - 734439407618LL; } rdar://7038284 llvm-svn: 108339 | ||||
* | Delete fast-isel's trivial load optimization; it breaks debugging because | Dan Gohman | 2010-07-14 | 1 | -31/+0 |
| | | | | | | it can look past points where a debugger might modify user variables. llvm-svn: 108336 | ||||
* | Add missing address register update to t2LDM_RET instruction. | Bob Wilson | 2010-07-14 | 1 | -1/+1 |
| | | | | | | Patch by Brian Lucas. PR7636. llvm-svn: 108332 |