[llvm-commits] [llvm-gcc-4-2] r39874 - in /llvm-gcc-4-2/trunk/gcc: llvm-backend.cpp passes.c tree-optimize.c
Anton Korobeynikov
asl at math.spbu.ru
Sun Jul 15 08:55:07 PDT 2007
Author: asl
Date: Sun Jul 15 10:55:06 2007
New Revision: 39874
URL: http://llvm.org/viewvc/llvm-project?rev=39874&view=rev
Log:
My last commit is wrong. gcc internals changed dramatically since 4.01.
Now we have 'cfg gimple' as input for llvm-convert, not just 'gimple'.
Fix the code by cfg traversal.
Big thanks for Andrew Pinski for noting this.
Modified:
llvm-gcc-4-2/trunk/gcc/llvm-backend.cpp
llvm-gcc-4-2/trunk/gcc/passes.c
llvm-gcc-4-2/trunk/gcc/tree-optimize.c
Modified: llvm-gcc-4-2/trunk/gcc/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4-2/trunk/gcc/llvm-backend.cpp?rev=39874&r1=39873&r2=39874&view=diff
==============================================================================
--- llvm-gcc-4-2/trunk/gcc/llvm-backend.cpp (original)
+++ llvm-gcc-4-2/trunk/gcc/llvm-backend.cpp Sun Jul 15 10:55:06 2007
@@ -66,6 +66,7 @@
#include "function.h"
#include "tree-inline.h"
#include "langhooks.h"
+#include "cgraph.h"
}
// Non-zero if bytecode from PCH is successfully read.
@@ -556,10 +557,12 @@
// Set up parameters and prepare for return, for the function.
Emitter.StartFunctionBody();
-
- // Emit the body of the function.
- Emitter.Emit(DECL_SAVED_TREE(fndecl), 0);
-
+
+ // Emit the body of the function iterating over all BBs
+ basic_block bb;
+ FOR_EACH_BB_FN (bb, DECL_STRUCT_FUNCTION (fndecl))
+ Emitter.Emit(bb->stmt_list, 0);
+
// Wrap things up.
Fn = Emitter.FinishFunctionBody();
}
Modified: llvm-gcc-4-2/trunk/gcc/passes.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4-2/trunk/gcc/passes.c?rev=39874&r1=39873&r2=39874&view=diff
==============================================================================
--- llvm-gcc-4-2/trunk/gcc/passes.c (original)
+++ llvm-gcc-4-2/trunk/gcc/passes.c Sun Jul 15 10:55:06 2007
@@ -473,12 +473,6 @@
{
struct tree_opt_pass **p;
-/* LLVM LOCAL begin - Reduce cc1 size with dead code stripping. */
-#ifdef ENABLE_LLVM
- return;
-#endif
-/* LLVM LOCAL end */
-
#define NEXT_PASS(PASS) (p = next_pass_1 (p, &PASS))
/* Interprocedural optimization passes. */
p = &all_ipa_passes;
Modified: llvm-gcc-4-2/trunk/gcc/tree-optimize.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4-2/trunk/gcc/tree-optimize.c?rev=39874&r1=39873&r2=39874&view=diff
==============================================================================
--- llvm-gcc-4-2/trunk/gcc/tree-optimize.c (original)
+++ llvm-gcc-4-2/trunk/gcc/tree-optimize.c Sun Jul 15 10:55:06 2007
@@ -49,8 +49,9 @@
#include "graph.h"
/* APPLE LOCAL optimization pragmas 3124235/3420242 */
#include "opts.h"
-/* LLVM LOCAL */
+/* LLVM LOCAL begin */
#include "llvm.h"
+/* LLVM LOCAL end */
#include "cfgloop.h"
#include "except.h"
More information about the llvm-commits
mailing list