[llvm-commits] [gcc-plugin] r81242 - /gcc-plugin/trunk/llvm-convert.cpp
Duncan Sands
baldrick at free.fr
Tue Sep 8 12:38:17 PDT 2009
Author: baldrick
Date: Tue Sep 8 14:38:16 2009
New Revision: 81242
URL: http://llvm.org/viewvc/llvm-project?rev=81242&view=rev
Log:
Output automatic variables. Oddly enough, some functions
use these!
Modified:
gcc-plugin/trunk/llvm-convert.cpp
Modified: gcc-plugin/trunk/llvm-convert.cpp
URL: http://llvm.org/viewvc/llvm-project/gcc-plugin/trunk/llvm-convert.cpp?rev=81242&r1=81241&r2=81242&view=diff
==============================================================================
--- gcc-plugin/trunk/llvm-convert.cpp (original)
+++ gcc-plugin/trunk/llvm-convert.cpp Tue Sep 8 14:38:16 2009
@@ -625,12 +625,14 @@
// Not supported yet.
}
-//TODO // As it turns out, not all temporaries are associated with blocks. For those
-//TODO // that aren't, emit them now.
-//TODO for (tree t = cfun->unexpanded_var_list; t; t = TREE_CHAIN(t)) {
-//TODO if (!DECL_LLVM_SET_P(TREE_VALUE(t)))
-//TODO EmitAutomaticVariableDecl(TREE_VALUE(t));
-//TODO }
+ // Emit all local variables.
+ for (tree vars = DECL_STRUCT_FUNCTION(FnDecl)->local_decls; vars;
+ vars = TREE_CHAIN(vars)) {
+ tree var = TREE_VALUE (vars);
+ // Static variables may already have been declared.
+ if (!DECL_LLVM_SET_P(var))
+ EmitAutomaticVariableDecl(var);
+ }
// Create a new block for the return node, but don't insert it yet.
ReturnBB = BasicBlock::Create(Context, "return");
More information about the llvm-commits
mailing list