]> granicus.if.org Git - clang/commit
Implement codegen for __builtin_choose_expr. For example:
authorChris Lattner <sabre@nondot.org>
Sat, 4 Aug 2007 00:20:15 +0000 (00:20 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 4 Aug 2007 00:20:15 +0000 (00:20 +0000)
commit94f05e36488fd08e404ac409d3bcb1db1da1bd4d
treed4a14855abf00fea4d0143320d1c5790a3323ae7
parent345dc62fd5d2980aab3ab2218dd0234f6bcea279
Implement codegen for __builtin_choose_expr.  For example:

struct X { int A; };

void foo() {
  struct X s;
  int i;
  i = __builtin_choose_expr(0, s, i);
}

compiles to:

        %tmp = load i32* %i             ; <i32> [#uses=1]
        store i32 %tmp, i32* %i

wow :)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40801 91177308-0d34-0410-b5e6-96231b3b80d8
AST/StmtPrinter.cpp
CodeGen/CGExpr.cpp
CodeGen/CodeGenFunction.h
clang.xcodeproj/project.pbxproj