diff options
author | Eric Biederman <ebiederm@xmission.com> | 2003-07-21 20:13:45 +0000 |
---|---|---|
committer | Eric Biederman <ebiederm@xmission.com> | 2003-07-21 20:13:45 +0000 |
commit | 2c018fba95a5f40c4eaaa20421e8c893dffdb62e (patch) | |
tree | 3b6ecc6eb72d145dd70bb549fe0130370d7e40fb /util/romcc | |
parent | 6d4512cdf976fc071720dbec686cf8a1a40f1db0 (diff) | |
download | coreboot-2c018fba95a5f40c4eaaa20421e8c893dffdb62e.tar.xz |
- First pass at s2880 support.
- SMP cleanups (remove SMP only use CONFIG_SMP)
- Minor tweaks to romcc to keep it from taking forever compiling
- failover fixes
- Get a good implementation of k8_cpufixup and sizeram for the opteron
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@998 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'util/romcc')
-rw-r--r-- | util/romcc/romcc.c | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/util/romcc/romcc.c b/util/romcc/romcc.c index 386d86a238..c721a21002 100644 --- a/util/romcc/romcc.c +++ b/util/romcc/romcc.c @@ -14,7 +14,7 @@ #define DEBUG_ERROR_MESSAGES 0 #define DEBUG_COLOR_GRAPH 0 #define DEBUG_SCC 0 -#define DEBUG_CONSISTENCY 2 +#define DEBUG_CONSISTENCY 1 #define DEBUG_RANGE_CONFLICTS 0 #define DEBUG_COALESCING 0 #define DEBUG_SDP_BLOCKS 0 @@ -12952,6 +12952,23 @@ static void verify_graph_ins( return; } +#if DEBUG_CONSISTENCY > 1 +static void verify_interference_graph( + struct compile_state *state, struct reg_state *rstate) +{ +#if 0 + fprintf(stderr, "verify_interference_graph...\n"); +#endif + + walk_variable_lifetimes(state, rstate->blocks, verify_graph_ins, rstate); +#if 0 + fprintf(stderr, "verify_interference_graph done\n"); +#endif +} +#else +static inline void verify_interference_graph( + struct compile_state *state, struct reg_state *rstate) {} +#endif static void print_interference_ins( struct compile_state *state, @@ -13765,6 +13782,7 @@ static int color_graph(struct compile_state *state, struct reg_state *rstate) return colored; } +#if DEBUG_CONSISTENCY static void verify_colors(struct compile_state *state, struct reg_state *rstate) { struct live_range *lr; @@ -13801,6 +13819,9 @@ static void verify_colors(struct compile_state *state, struct reg_state *rstate) ins = ins->next; } while(ins != first); } +#else +static inline void verify_colors(struct compile_state *state, struct reg_state *rstate) {} +#endif static void color_triples(struct compile_state *state, struct reg_state *rstate) { @@ -14005,17 +14026,8 @@ static void allocate_registers(struct compile_state *state) #endif } while(coalesced); -#if DEBUG_CONSISTENCY > 1 -# if 0 - fprintf(stderr, "verify_graph_ins...\n"); -# endif /* Verify the interference graph */ - walk_variable_lifetimes( - state, rstate.blocks, verify_graph_ins, &rstate); -# if 0 - fprintf(stderr, "verify_graph_ins done\n"); -#endif -#endif + verify_interference_graph(state, &rstate); /* Build the groups low and high. But with the nodes * first sorted by degree order. |