- Dec 19, 2007
-
-
Duncan Sands authored
llvm-svn: 45198
-
Duncan Sands authored
to know about calls that cannot throw ('nounwind'): if such a call does throw for some reason then the personality will terminate the program. The distinction between an ordinary call and a nounwind call is that an ordinary call gets an entry in the exception table but a nounwind call does not. This patch sets up the exception table appropriately. One oddity is that I've chosen to bracket nounwind calls with labels (like invokes) - the other choice would have been to bracket ordinary calls with labels. While bracketing ordinary calls is more natural (because bracketing by labels would then correspond exactly to getting an entry in the exception table), I didn't do it because introducing labels impedes some optimizations and I'm guessing that ordinary calls occur more often than nounwind calls. This fixes the gcc filter2 eh test, at least at -O0 (the inliner needs some tweaking at higher optimization levels). llvm-svn: 45197
-
Evan Cheng authored
llvm-svn: 45186
-
- Dec 18, 2007
-
-
Bill Wendling authored
llvm-svn: 45178
-
Anton Korobeynikov authored
llvm-svn: 45172
-
Evan Cheng authored
llvm-svn: 45167
-
Evan Cheng authored
llvm-svn: 45164
-
Evan Cheng authored
FIX for PR1799: When a load is unfolded from an instruction, check if it is a new node. If not, do not create a new SUnit. llvm-svn: 45157
-
Evan Cheng authored
llvm-svn: 45151
-
- Dec 17, 2007
-
-
Duncan Sands authored
how to lower them (with no attempt made to be efficient, since they should only occur for unoptimized code). llvm-svn: 45108
-
Christopher Lamb authored
Change the PointerType api for creating pointer types. The old functionality of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new prototype of PointerType::get() requires both a type and an address space. llvm-svn: 45082
-
- Dec 16, 2007
-
-
Owen Anderson authored
llvm-svn: 45070
-
Owen Anderson authored
llvm-svn: 45069
-
- Dec 14, 2007
-
-
Dan Gohman authored
llvm-svn: 45034
-
Evan Cheng authored
llvm-svn: 45028
-
- Dec 13, 2007
-
-
Owen Anderson authored
llvm-svn: 44987
-
Owen Anderson authored
Remove ugly and horrible code. It's not necessary for correctness, and can be added back later if it causes code quality issues. llvm-svn: 44986
-
Evan Cheng authored
Implicit def instructions, e.g. X86::IMPLICIT_DEF_GR32, are always re-materializable and they should not be spilled. llvm-svn: 44960
-
- Dec 12, 2007
-
-
Dan Gohman authored
SelectionDAG::getConstant, in the same way as vector floating-point constants. This allows the legalize expansion code for @llvm.ctpop and friends to be usable with vector types. llvm-svn: 44954
-
Owen Anderson authored
interfered with other registers. Seems like that might be a good thing to do. :-) llvm-svn: 44902
-
Evan Cheng authored
If deleting a reload instruction due to reuse (value is available in register R and reload is targeting R), make sure to invalidate the kill information of the last kill. llvm-svn: 44894
-
Bill Wendling authored
llvm-svn: 44892
-
- Dec 11, 2007
-
-
Bill Wendling authored
llvm-svn: 44881
-
Owen Anderson authored
llvm-svn: 44877
-
Bill Wendling authored
llvm-svn: 44874
-
Bill Wendling authored
- Fix subtle bug when creating initially creating this map. llvm-svn: 44873
-
Bill Wendling authored
because those with side effects will be caught by other checks in here. Also, simplify the check for a BB in a sub loop. llvm-svn: 44871
-
Evan Cheng authored
llvm-svn: 44838
-
Evan Cheng authored
llvm-svn: 44837
-
Gordon Henriksen authored
per-function collector model. Collector is now the factory for CollectorMetadata, so the latter may be subclassed. llvm-svn: 44827
-
- Dec 10, 2007
-
-
Owen Anderson authored
how the CodeGen machinery works. llvm-svn: 44786
-
Christopher Lamb authored
Improve branch folding by recgonizing that explict successor relationships impact the value of fall-through choices. llvm-svn: 44785
-
- Dec 09, 2007
-
-
Chris Lattner authored
knows the vector is not pow2 llvm-svn: 44740
-
Chris Lattner authored
llvm-svn: 44728
-
Bill Wendling authored
llvm-svn: 44727
-
Chris Lattner authored
llvm-svn: 44726
-
Chris Lattner authored
%f8 = type <8 x float> define void @test_f8(%f8* %P, %f8* %Q, %f8* %S) { %p = load %f8* %P ; <%f8> [#uses=1] %q = load %f8* %Q ; <%f8> [#uses=1] %R = add %f8 %p, %q ; <%f8> [#uses=1] store %f8 %R, %f8* %S ret void } into: _test_f8: movaps 16(%rdi), %xmm0 addps 16(%rsi), %xmm0 movaps (%rdi), %xmm1 addps (%rsi), %xmm1 movaps %xmm0, 16(%rdx) movaps %xmm1, (%rdx) ret llvm-svn: 44725
-
Chris Lattner authored
llvm-svn: 44724
-
- Dec 08, 2007
-
-
Chris Lattner authored
llvm-svn: 44723
-
Chris Lattner authored
llvm-svn: 44722
-