summaryrefslogtreecommitdiffstats
path: root/clang/CodeGen/CodeGenFunction.h
Commit message (Collapse)AuthorAgeFilesLines
...
* implement codegen support for return of void and simple scalars.Chris Lattner2007-06-021-0/+4
| | | | llvm-svn: 39547
* stub out codegen of binary plus. We now compile:Chris Lattner2007-06-021-0/+11
| | | | | | | | | | | | | | | 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
* Add support for codegen'ing paren exprs and if stmts. We can now codegen:Chris Lattner2007-05-301-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* implement codegen of integer literals.Chris Lattner2007-05-301-0/+29
| | | | llvm-svn: 39530
* Implement codegen support for labels and gotos. We now compile:Chris Lattner2007-05-301-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Add codegen support for NullStmt and CompoundStmt. {;;{};;} is now ours!Chris Lattner2007-05-291-2/+13
| | | | llvm-svn: 39522
* Implement conversion of clang ast types to LLVM types, at least for some trivialChris Lattner2007-05-291-1/+9
| | | | | | cases. llvm-svn: 39519
* Reorganize codegen files.Chris Lattner2007-05-281-0/+38
llvm-svn: 39504
OpenPOWER on IntegriCloud