Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Instead of enumerating each opcode that isn't handled that | Dan Gohman | 2008-05-06 | 1 | -11/+1 |
| | | | | | | | ComputeMaskedBits handles, just use a 'default:'. This avoids TargetLowering's list getting out of date with SelectionDAG's. llvm-svn: 50693 | ||||
* | Correct the value of LowBits in srem and urem handling in | Dan Gohman | 2008-05-06 | 2 | -9/+9 |
| | | | | | | ComputeMaskedBits. llvm-svn: 50692 | ||||
* | Fix a broken doxygen comment, and reword it for clarity. | Dan Gohman | 2008-05-06 | 1 | -2/+3 |
| | | | | llvm-svn: 50687 | ||||
* | add a micro optzn. | Chris Lattner | 2008-05-05 | 1 | -0/+18 |
| | | | | llvm-svn: 50681 | ||||
* | Improved generated code for atomic operators | Mon P Wang | 2008-05-05 | 1 | -16/+16 |
| | | | | llvm-svn: 50677 | ||||
* | Code clean up. No functionality change. | Evan Cheng | 2008-05-05 | 1 | -20/+21 |
| | | | | llvm-svn: 50675 | ||||
* | Fix: Some classes were derived from a class in an anonymous namespace, but they | Bill Wendling | 2008-05-05 | 1 | -0/+2 |
| | | | | | | themselves weren't in the anonymous namespace. llvm-svn: 50673 | ||||
* | Fix a crash when threading a block that includes a MRV call result. | Chris Lattner | 2008-05-05 | 1 | -4/+19 |
| | | | | | | | | | DemoteRegToStack doesn't work with MRVs yet, because it relies on the ability to load/store things. This fixes PR2285. llvm-svn: 50667 | ||||
* | Added addition atomic instrinsics and, or, xor, min, and max. | Mon P Wang | 2008-05-05 | 10 | -47/+421 |
| | | | | llvm-svn: 50663 | ||||
* | Fix IsLinux being uninitialized on non-Linux targets. | Dan Gohman | 2008-05-05 | 1 | -0/+1 |
| | | | | llvm-svn: 50660 | ||||
* | Fix more -Wshorten-64-to-32 warnings. | Evan Cheng | 2008-05-05 | 12 | -48/+52 |
| | | | | llvm-svn: 50659 | ||||
* | Fix 80col violation | Anton Korobeynikov | 2008-05-05 | 1 | -1/+1 |
| | | | | llvm-svn: 50654 | ||||
* | Fix a bug in the ELF writer that caused it to produce malformed | Dan Gohman | 2008-05-05 | 1 | -1/+1 |
| | | | | | | ELF headers. The ELF writer still isn't generally usable though. llvm-svn: 50652 | ||||
* | Use a dedicated IsLinux flag instead of an ELFLinux TargetType. | Dan Gohman | 2008-05-05 | 3 | -10/+15 |
| | | | | llvm-svn: 50649 | ||||
* | Add AsmPrinter support for emitting a directive to declare that | Dan Gohman | 2008-05-05 | 5 | -2/+25 |
| | | | | | | | | | the code being generated does not require an executable stack. Also, add target-specific code to make use of this on Linux on x86. llvm-svn: 50634 | ||||
* | Add General Dynamic TLS model for X86-64. Some parts looks really ugly (look ↵ | Anton Korobeynikov | 2008-05-04 | 4 | -16/+62 |
| | | | | | | | | for tlsaddr pattern), but should work. Work is in progress, more models will follow llvm-svn: 50630 | ||||
* | regenerate | Chris Lattner | 2008-05-04 | 2 | -1466/+1432 |
| | | | | llvm-svn: 50621 | ||||
* | Use (void) instead of () in C code. | Gordon Henriksen | 2008-05-04 | 1 | -14/+14 |
| | | | | llvm-svn: 50620 | ||||
* | Select vector shift with non-immediate i32 shift amount operand by first ↵ | Evan Cheng | 2008-05-04 | 1 | -1/+90 |
| | | | | | | moving the operand into the right register. llvm-svn: 50619 | ||||
* | processStore may delete the instruction, avoid | Torok Edwin | 2008-05-04 | 1 | -2/+1 |
| | | | | | | using dyn_cast<> on already freed memory. llvm-svn: 50618 | ||||
* | Implement destructor for PostDominatorTree to eliminate a memory leak. | Torok Edwin | 2008-05-03 | 1 | -0/+5 |
| | | | | llvm-svn: 50607 | ||||
* | Handle multiple return values. | Devang Patel | 2008-05-03 | 1 | -1/+23 |
| | | | | llvm-svn: 50604 | ||||
* | Add separate intrinsics for MMX / SSE shifts with i32 integer operands. This ↵ | Evan Cheng | 2008-05-03 | 3 | -73/+45 |
| | | | | | | allow us to simplify the horribly complicated matching code. llvm-svn: 50601 | ||||
* | Do not sink getresult. | Devang Patel | 2008-05-03 | 1 | -1/+3 |
| | | | | llvm-svn: 50600 | ||||
* | Add assert. | Devang Patel | 2008-05-02 | 1 | -0/+1 |
| | | | | llvm-svn: 50596 | ||||
* | Fix a mistake in the computation of leading zeros for udiv. | Dan Gohman | 2008-05-02 | 2 | -6/+10 |
| | | | | llvm-svn: 50591 | ||||
* | Suppress -Wshorten-64-to-32 warnings for 64-bit hosts. | Evan Cheng | 2008-05-02 | 2 | -43/+46 |
| | | | | llvm-svn: 50590 | ||||
* | strength reduce exp2 into ldexp, rdar://5852514 | Chris Lattner | 2008-05-02 | 1 | -1/+52 |
| | | | | llvm-svn: 50586 | ||||
* | add a FIXME so we remember to eventually remove this code. | Chris Lattner | 2008-05-02 | 1 | -5/+6 |
| | | | | llvm-svn: 50582 | ||||
* | Undo r50574. We are already ensuring the folded load address is 16-byte aligned. | Evan Cheng | 2008-05-02 | 1 | -0/+8 |
| | | | | llvm-svn: 50578 | ||||
* | 80 column violation. | Evan Cheng | 2008-05-02 | 1 | -6/+12 |
| | | | | llvm-svn: 50575 | ||||
* | Not safe folding a load + FsXORPSrr into FsXORPSrm. It's loading a FR64 ↵ | Evan Cheng | 2008-05-02 | 1 | -8/+0 |
| | | | | | | value but the load folding variant expects a 16-byte aligned address. llvm-svn: 50574 | ||||
* | Porting r50563 from Tak to mainline. | Bill Wendling | 2008-05-02 | 1 | -0/+5 |
| | | | | llvm-svn: 50564 | ||||
* | Fix a typo in a comment. | Dan Gohman | 2008-05-02 | 1 | -1/+1 |
| | | | | llvm-svn: 50562 | ||||
* | Use push_back(...) instead of resize(1, ...), per review feedback. | Dan Gohman | 2008-05-02 | 1 | -2/+2 |
| | | | | llvm-svn: 50561 | ||||
* | Fix uninitialized uses of the FPC variable. | Dan Gohman | 2008-05-01 | 1 | -2/+2 |
| | | | | llvm-svn: 50558 | ||||
* | Don't try to create PHIs of struct types. Fallout | Dale Johannesen | 2008-05-01 | 1 | -8/+31 |
| | | | | | | from x86-64 calling convention work. llvm-svn: 50545 | ||||
* | Fix an overaggressive SimplifyDemandedBits optimization on urem. This | Dan Gohman | 2008-05-01 | 1 | -4/+5 |
| | | | | | | fixes the 254.gap regression on x86 and the 403.gcc regression on x86-64. llvm-svn: 50537 | ||||
* | don't randomly miscompile seto/setuo just because we are in | Chris Lattner | 2008-05-01 | 1 | -4/+4 |
| | | | | | | | | | ffastmath mode. This fixes rdar://5902801, a miscompilation of gcc.dg/builtins-8.c. Bill, please pull this into Tak. llvm-svn: 50523 | ||||
* | 1) add '-debug' output | Chris Lattner | 2008-05-01 | 1 | -11/+19 |
| | | | | | | | 2) Return NULL instead of false in several places for tidiness. 3) fix a bug optimizing sprintf(p, "%c", x) llvm-svn: 50521 | ||||
* | Delete the IPO simplify-libcalls and completely reimplement it as | Chris Lattner | 2008-05-01 | 2 | -2214/+1437 |
| | | | | | | | | a FunctionPass. This makes it simpler, fixes dozens of bugs, adds a couple of minor features, and shrinks is considerably: from 2214 to 1437 lines. llvm-svn: 50520 | ||||
* | fix a bug in my previous patch, a classic =/== bug. | Chris Lattner | 2008-04-30 | 1 | -1/+1 |
| | | | | llvm-svn: 50483 | ||||
* | Tail call optimization improvements: | Arnold Schwaighofer | 2008-04-30 | 12 | -294/+919 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Move platform independent code (lowering of possibly overwritten arguments, check for tail call optimization eligibility) from target X86ISelectionLowering.cpp to TargetLowering.h and SelectionDAGISel.cpp. Initial PowerPC tail call implementation: Support ppc32 implemented and tested (passes my tests and test-suite llvm-test). Support ppc64 implemented and half tested (passes my tests). On ppc tail call optimization is performed if caller and callee are fastcc call is a tail call (in tail call position, call followed by ret) no variable argument lists or byval arguments option -tailcallopt is enabled Supported: * non pic tail calls on linux/darwin * module-local tail calls on linux(PIC/GOT)/darwin(PIC) * inter-module tail calls on darwin(PIC) If constraints are not met a normal call will be emitted. A test checking the argument lowering behaviour on x86-64 was added. llvm-svn: 50477 | ||||
* | fcntl.h is pretty standard on unix (without the sys/) | Gabor Greif | 2008-04-30 | 1 | -2/+1 |
| | | | | llvm-svn: 50475 | ||||
* | This condition got inverted accidentally. | Owen Anderson | 2008-04-30 | 1 | -1/+1 |
| | | | | llvm-svn: 50473 | ||||
* | move lowering of llvm.memset -> store from simplify libcalls | Chris Lattner | 2008-04-30 | 1 | -7/+49 |
| | | | | | | to instcombine. llvm-svn: 50472 | ||||
* | add a method for comparing to see if a value has a specified name. | Chris Lattner | 2008-04-30 | 1 | -0/+7 |
| | | | | llvm-svn: 50465 | ||||
* | use string length computation to generalize several xforms. | Chris Lattner | 2008-04-30 | 1 | -36/+39 |
| | | | | llvm-svn: 50464 | ||||
* | Add comments for previous patch as requested. | Dale Johannesen | 2008-04-30 | 1 | -0/+6 |
| | | | | llvm-svn: 50463 | ||||
* | Bug fixes and updates for CellSPU, syncing up with trunk. Most notable | Scott Michel | 2008-04-30 | 7 | -53/+133 |
| | | | | | | | | fixes are target-specific lowering of frame indices, fix constants generated for the FSMBI instruction, and fixing SPUTargetLowering::computeMaskedBitsFor- TargetNode(). llvm-svn: 50462 |