- Jun 09, 2007
-
-
Chris Lattner authored
stuff like: void test() { int *X, Y, *Z[14]; X[Y] = 4; } llvm-svn: 39624
-
- Jun 05, 2007
-
-
Chris Lattner authored
llvm-svn: 39593
-
Chris Lattner authored
llvm-svn: 39582
-
- Jun 02, 2007
-
-
Chris Lattner authored
be shared. Implement infrastructure for unary operator emission. Implement basic logical not support. We now compile: register short X; if (!X) { into: %tmp = load i16* %X ; <i16> [#uses=1] %tobool = icmp ne i16 %tmp, 0 ; <i1> [#uses=1] %lnot = xor i1 %tobool, true ; <i1> [#uses=1] zext i1 %lnot to i32 ; <i32>:0 [#uses=1] %tobool1 = icmp ne i32 %0, 0 ; <i1> [#uses=1] br i1 %tobool1, label %ifthen, label %ifend llvm-svn: 39559
-
Chris Lattner authored
llvm-svn: 39550
-
Chris Lattner authored
llvm-svn: 39547
-
Chris Lattner authored
if (11 + 42) { to: %tmp = add i32 11, 42 ; <i32> [#uses=1] %tobool = icmp ne i32 %tmp, 0 ; <i1> [#uses=1] br i1 %tobool, label %ifthen, label %ifend but this doesn't handle any of the interesting/hard stuff yet. llvm-svn: 39545
-
- Jun 01, 2007
-
-
Chris Lattner authored
llvm-svn: 39540
-
- May 31, 2007
-
-
Chris Lattner authored
llvm-svn: 39534
-
- May 30, 2007
-
-
Chris Lattner authored
void test() { goto l; l: if (11) { j: ; } } into: define void @test() { entry: br label %l l: ; preds = %entry icmp ne i32 11, 0 ; <i1>:0 [#uses=1] br i1 %0, label %ifthen, label %ifend ifthen: ; preds = %l br label %j j: ; preds = %ifthen br label %ifend ifend: ; preds = %j, %l } whoa... :) llvm-svn: 39533
-
Chris Lattner authored
llvm-svn: 39530
-
Chris Lattner authored
void test1() { foo: goto foo; goto foo; goto foo; } void test() { goto l; l: ; } into: define void @test1() { entry: br label %foo foo: ; preds = %0, %foo, %entry br label %foo ; No predecessors! br label %foo ; No predecessors! } define void @test() { entry: br label %l l: ; preds = %entry } llvm-svn: 39524
-
Chris Lattner authored
llvm-svn: 39522
-
Chris Lattner authored
cases. llvm-svn: 39519
-
- May 28, 2007
-
-
Chris Lattner authored
llvm-svn: 39504
-