- May 01, 2009
-
-
Anders Carlsson authored
llvm-svn: 70523
-
- Apr 26, 2009
-
-
Chris Lattner authored
llvm-svn: 70136
-
Chris Lattner authored
instead of passing it around in addition to it. llvm-svn: 70135
-
Chris Lattner authored
the enum along with some other data. llvm-svn: 70114
-
- Apr 13, 2009
-
-
Eli Friedman authored
llvm-svn: 68992
-
- Apr 01, 2009
-
-
Daniel Dunbar authored
- <rdar://problem/6732143> Crash when generating @synchronize for zero-cost exception - Thanks to Anders for helping track down the problem. llvm-svn: 68186
-
- Mar 13, 2009
-
-
Chris Lattner authored
really horrible extensions that are disabled by default but that can be accepted by -fheinous-gnu-extensions (but which always emit a warning when enabled). As our first instance of this, implement PR3788/PR3794, which allows non-lvalues in inline asms in contexts where lvalues are required. bleh. llvm-svn: 66910
-
- Mar 11, 2009
-
-
Chris Lattner authored
llvm-svn: 66598
-
Chris Lattner authored
code where Sema can get to it. No functionality change. llvm-svn: 66596
-
- Mar 10, 2009
-
-
Chris Lattner authored
done in sema, and is reflected by the existing PR3258. In the meantime, fix PR3682 by disabling a bogus assertion (which doesn't account for + operands). llvm-svn: 66533
-
Chris Lattner authored
add support for modifiers on named references, like %c[foo]. llvm-svn: 66532
-
Chris Lattner authored
time handle + operands in operand counting, fixing asm.c:t7 to expand into $2 instead of $1. llvm-svn: 66531
-
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
-