- Mar 10, 2009
-
-
Chris Lattner authored
temporary std::string to fix a fixme. llvm-svn: 66530
-
Chris Lattner authored
asm. This allows us to properly handle the case when an optimizer duplicates the asm, such as here: void bar() { int i; for (i = 0; i < 3; ++i) asm("foo %=" : : "r"(0)); } we now produce: _bar: xorl %eax, %eax ## InlineAsm Start foo 0 ## InlineAsm End ## InlineAsm Start foo 1 ## InlineAsm End ## InlineAsm Start foo 2 ## InlineAsm End ret instead of: _bar: xorl %eax, %eax ## InlineAsm Start foo 1 ## InlineAsm End ## InlineAsm Start foo 1 ## InlineAsm End ## InlineAsm Start foo 1 ## InlineAsm End ret This also fixes a fixme by eliminating a static. llvm-svn: 66528
-
Chris Lattner authored
llvm-svn: 66521
-
Chris Lattner authored
ConvertAsmString and shrink it a bit. No functionality change. llvm-svn: 66520
-
- Mar 05, 2009
-
-
Chris Lattner authored
it in the stack trace, giving us stuff like: Stack dump: 0. Program arguments: clang t.c -emit-llvm 1. <eof> parser at end of file 2. t.c:1:5: LLVM IR generation of declaration 'a' 3. t.c:1:9: LLVM IR generation of compound statement ('{}') 4. t.c:2:3: LLVM IR generation of compound statement ('{}') Abort llvm-svn: 66154
-
- Mar 04, 2009
-
-
Chris Lattner authored
multiple sequential cases to a) not create tons of fall-through basic blocks and b) not recurse deeply. This fixes codegen on 100K deep cases, and improves codegen on moderate cases from this: switch i32 %tmp, label %sw.epilog [ i32 1000, label %sw.bb i32 1001, label %sw.bb1 i32 1002, label %sw.bb2 i32 1003, label %sw.bb3 i32 1004, label %sw.bb4 ... sw.bb: ; preds = %entry br label %sw.bb1 sw.bb1: ; preds = %entry, %sw.bb br label %sw.bb2 sw.bb2: ; preds = %entry, %sw.bb1 br label %sw.bb3 sw.bb3: ; preds = %entry, %sw.bb2 br label %sw.bb4 to: switch i32 %tmp, label %sw.epilog [ i32 1000, label %sw.bb i32 1001, label %sw.bb i32 1002, label %sw.bb i32 1003, label %sw.bb i32 1004, label %sw.bb sw.bb: ;; many preds llvm-svn: 66015
-
- Mar 02, 2009
-
-
Anders Carlsson authored
llvm-svn: 65866
-
- Feb 22, 2009
-
-
Anders Carlsson authored
Make sure to reset the DidCallStackSave variable before emitting a compound statement. Fixes PR3649. llvm-svn: 65291
-
- Feb 13, 2009
-
-
Anders Carlsson authored
llvm-svn: 64445
-
- Feb 10, 2009
-
-
Anders Carlsson authored
llvm-svn: 64252
-
Anders Carlsson authored
llvm-svn: 64205
-
Anders Carlsson authored
llvm-svn: 64203
-
- Feb 09, 2009
-
-
Anders Carlsson authored
llvm-svn: 64159
-
Anders Carlsson authored
llvm-svn: 64157
-
- Feb 08, 2009
-
-
Mike Stump authored
llvm-svn: 64095
-
Mike Stump authored
If people could beat on it and let me know if there are any new semantics required by newer language standards or DRs or any little details I goofed on, I'd be happy to fix any issues found. llvm-svn: 64079
-
Anders Carlsson authored
llvm-svn: 64053
-
Anders Carlsson authored
Add support for emitting cleanup blocks. Make EmitCompoundStatement emit cleanup blocks if necessary llvm-svn: 64051
-
Mike Stump authored
correctly. This should lay the ground work to throw the big switch and start code gening break and continue in the presense of vlas. llvm-svn: 64046
-
- Feb 07, 2009
-
-
Mike Stump authored
llvm-svn: 64030
-
Mike Stump authored
llvm-svn: 64021
-
Mike Stump authored
llvm-svn: 64020
-
Mike Stump authored
llvm-svn: 64014
-
- Jan 27, 2009
-
-
Anders Carlsson authored
If an input constraint refers to an output constraint, it should have the same constraint info as the output constraint. Fixes PR3417 llvm-svn: 63127
-
- Jan 21, 2009
-
-
Chris Lattner authored
llvm-svn: 62674
-
- Jan 18, 2009
-
-
Anders Carlsson authored
llvm-svn: 62444
-
Anders Carlsson authored
llvm-svn: 62441
-
Anders Carlsson authored
Change TargetInfo::validateInputConstraint to take begin/end name iterators instead of the number of outputs. No functionality change. llvm-svn: 62433
-
- Jan 12, 2009
-
-
Anders Carlsson authored
llvm-svn: 62069
-
- Jan 11, 2009
-
-
Anders Carlsson authored
llvm-svn: 62049
-
Anders Carlsson authored
llvm-svn: 62043
-
Anders Carlsson authored
llvm-svn: 62041
-
- Dec 21, 2008
-
-
Eli Friedman authored
string. That said, we should probably try and track down the correct clobber lists for the targets that don't have them (PPC, ARM, and Sparc), so that we can generate correct code. llvm-svn: 61298
-
Eli Friedman authored
warning by using an unsigned index. llvm-svn: 61292
-
- Dec 20, 2008
-
-
Anders Carlsson authored
Check the entire StackSaveValues stack for VLAs when dealing with goto and return statements. Noticed by Eli Friedman. llvm-svn: 61289
-
Anders Carlsson authored
llvm-svn: 61283
-
- Dec 13, 2008
-
-
Anders Carlsson authored
Store the size of the EH stack inside each BreakContinue struct so we know when a break/continue won't cross a try block. llvm-svn: 60998
-
- Dec 12, 2008
-
-
Anders Carlsson authored
Work in preparation for VLAs. Make sure to restore the stack if necessary (Saving the stack isn't implemented right now :) llvm-svn: 60925
-
- Nov 22, 2008
-
-
Anders Carlsson authored
llvm-svn: 59881
-
- Nov 15, 2008
-
-
Chris Lattner authored
Patch by Fariborz! llvm-svn: 59377
-