summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/LowerInvoke.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add some adviceChris Lattner2006-07-271-592/+0
| | | | llvm-svn: 29324
* Shrink libllvmgcc.dylib by another 23KChris Lattner2006-06-281-1/+2
| | | | llvm-svn: 28972
* Declare that lowerinvoke doesn't interact with other lowering passes.Chris Lattner2006-05-171-1/+9
| | | | | | Patch written by Domagoj Babic! llvm-svn: 28367
* Add support alignment of allocation instructions.Nate Begeman2005-11-051-9/+12
| | | | | | | | | Add support for specifying alignment and size of setjmp jmpbufs. No targets currently do anything with this information, nor is it presrved in the bytecode representation. That's coming up next. llvm-svn: 24196
* When a function takes a variable number of pointer arguments, with a zeroJeff Cohen2005-10-231-4/+4
| | | | | | | | | | | | | pointer marking the end of the list, the zero *must* be cast to the pointer type. An un-cast zero is a 32-bit int, and at least on x86_64, gcc will not extend the zero to 64 bits, thus allowing the upper 32 bits to be random junk. The new END_WITH_NULL macro may be used to annotate a such a function so that GCC (version 4 or newer) will detect the use of un-casted zero at compile time. llvm-svn: 23888
* Fix VC++ warnings.Jeff Cohen2005-10-011-1/+0
| | | | llvm-svn: 23579
* Insert stores after phi nodes in the normal dest. This fixesChris Lattner2005-09-291-2/+5
| | | | | | LowerInvoke/2005-08-03-InvokeWithPHI.ll llvm-svn: 23525
* add a note about a way to improve this code further, that I won't be gettingChris Lattner2005-09-271-0/+8
| | | | | | to right now. llvm-svn: 23485
* Avoid spilling stack slots... to stack slots.Chris Lattner2005-09-271-0/+6
| | | | llvm-svn: 23478
* Completely rewrite 'correct' eh support. This changes how setjmp insertionChris Lattner2005-09-271-140/+301
| | | | | | | | | | | | | | | | | is performed so it is only at most once per function that contains an invoke instead of once per invoke in the function. This patch has the following perks: 1. It fixes PR631, which complains about slowness. 2. If fixes PR240, which complains about non-volatile vars being live across setjmp/longjmps. 3. It improves (but does not fix) the jmpbuf alignment issue on itanium by not forcing the jmpbufs to always be 8-bytes off the alignment of the structure. 4. It speeds up 253.perlbmk from 338s to 13.70s (a 25x improvement!), making us now about 4% faster than GCC. Further improvements are also possible. llvm-svn: 23477
* The correct fix for PR612, which also fixesChris Lattner2005-08-031-2/+12
| | | | | | Transforms/LowerInvoke/2005-08-03-InvokeWithPHIUse.ll llvm-svn: 22628
* When inserting code, make sure not to insert it before PHI nodes. ThisChris Lattner2005-08-031-1/+3
| | | | | | fixes PR612 and Transforms/LowerInvoke/2005-08-03-InvokeWithPHI.ll llvm-svn: 22626
* Fix a 64-bit problem, passing (int)0 through ... instead of (void*)0Chris Lattner2005-06-091-4/+4
| | | | llvm-svn: 22206
* When lowering invokes to calls, amke sure to preserve the calling conv. ThisChris Lattner2005-05-131-7/+9
| | | | | | fixes Ptrdist/anagram with x86 llcbeta llvm-svn: 21925
* Prefer int 0 instead of long 0 for GEP arguments.Chris Lattner2005-05-131-3/+3
| | | | llvm-svn: 21924
* Preserve tail markerChris Lattner2005-05-061-3/+3
| | | | llvm-svn: 21737
* Fixed a comment.John Criswell2005-05-021-3/+3
| | | | llvm-svn: 21653
* Remove trailing whitespaceMisha Brukman2005-04-211-12/+12
| | | | llvm-svn: 21427
* Lazily create the abort message, so only translation units that use unwindChris Lattner2004-11-131-22/+31
| | | | | | will actually get it. llvm-svn: 17700
* Simplify handling of constant initializersChris Lattner2004-11-121-36/+13
| | | | llvm-svn: 17696
* Changes For Bug 352Reid Spencer2004-09-011-2/+2
| | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137
* bug 122:Reid Spencer2004-07-181-3/+3
| | | | | | - Replace ConstantPointerRef usage with GlobalValue usage llvm-svn: 14953
* Fix one of the major things that is causing the C Backend to infinite loopChris Lattner2004-05-281-0/+1
| | | | llvm-svn: 13872
* Support getelementptr instructions which use uint's to index into structureChris Lattner2004-04-051-5/+5
| | | | | | | types and can have arbitrary 32- and 64-bit integer types indexing into sequential types. llvm-svn: 12653
* Add warningChris Lattner2004-03-311-0/+6
| | | | llvm-svn: 12573
* Disable tail duplication in a case that breaks on Olden/tspChris Lattner2004-03-011-1/+1
| | | | llvm-svn: 12021
* Instead of producing calls to setjmp/longjmp, produce uses of theChris Lattner2004-02-151-2/+2
| | | | | | llvm.setjmp/llvm.longjmp intrinsics. llvm-svn: 11482
* Expose a pass ID that can be 'required'Chris Lattner2004-02-131-0/+2
| | | | llvm-svn: 11376
* Only add the global variable with the abort message if an unwind actuallyChris Lattner2004-02-091-14/+26
| | | | | | occurs in the program. llvm-svn: 11249
* Fix grammar-o.Misha Brukman2004-02-081-1/+1
| | | | llvm-svn: 11210
* Improve compatibility with programs that already have a prototype for 'write',Chris Lattner2004-02-081-12/+43
| | | | | | even if it is wierd in some way. llvm-svn: 11207
* rename the "exceptional" destination of an invoke instruction to the ↵Chris Lattner2004-02-081-2/+2
| | | | | | 'unwind' dest llvm-svn: 11202
* Implement proper invoke/unwind lowering.Chris Lattner2004-02-081-21/+262
| | | | | | This fixed PR16 "[lowerinvoke] The -lowerinvoke pass does not insert calls to setjmp/longjmp" llvm-svn: 11195
* Add a call to 'write' right before the call to abort() in the unwind path.Chris Lattner2004-02-081-3/+27
| | | | | | | This causes the JIT, or LLC'd program to print out a nice message, explaining WHY the program aborted. llvm-svn: 11184
* Finegrainify namespacificationChris Lattner2003-12-101-11/+11
| | | | | | Fix bug: LowerInvoke/2003-12-10-Crash.llx llvm-svn: 10382
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+5
| | | | llvm-svn: 9903
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-201-0/+7
| | | | | | Header files will be on the way. llvm-svn: 9298
* Initial checkin of the LLVM->LLVM transform to support code generators whichChris Lattner2003-10-051-0/+74
do not support stack unwinding yet llvm-svn: 8869
OpenPOWER on IntegriCloud