aboutsummaryrefslogtreecommitdiff
path: root/gcc/basic-block.h
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2003-12-06 12:22:31 +0000
committerAlan Modra <amodra@gcc.gnu.org>2003-12-06 22:52:31 +1030
commitdf2ef49bbf1d8e81db688fb49ddaf7e614b71961 (patch)
tree806d63a055d1e8b44cd4e930d2d4c903a4cfaee2 /gcc/basic-block.h
parent929a3294725cb55f539bde39b50672cf24055c07 (diff)
downloadgcc-df2ef49bbf1d8e81db688fb49ddaf7e614b71961.zip
gcc-df2ef49bbf1d8e81db688fb49ddaf7e614b71961.tar.gz
gcc-df2ef49bbf1d8e81db688fb49ddaf7e614b71961.tar.bz2
re PR rtl-optimization/13169 (asm using r30 or r31 confuses global_alloc)
PR 13169 * basic-block.h (PROP_ASM_SCAN): Define. * final.c (regs_asm_clobbered): New array. * regs.h (regs_asm_clobbered): Declare. * flow.c (life_analysis): Init it. (mark_set_regs): Set PROP_ASM_SCAN for asms. (mark_set_1): Set regs_asm_clobbered. * global.c (global_alloc): Don't set eliminable_regset when regs_asm_clobbered. From-SVN: r74363
Diffstat (limited to 'gcc/basic-block.h')
-rw-r--r--gcc/basic-block.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/basic-block.h b/gcc/basic-block.h
index 221b246..365711a 100644
--- a/gcc/basic-block.h
+++ b/gcc/basic-block.h
@@ -477,6 +477,8 @@ enum update_life_extent
#define PROP_AUTOINC 64 /* Create autoinc mem references. */
#define PROP_EQUAL_NOTES 128 /* Take into account REG_EQUAL notes. */
#define PROP_SCAN_DEAD_STORES 256 /* Scan for dead code. */
+#define PROP_ASM_SCAN 512 /* Internal flag used within flow.c
+ to flag analysis of asms. */
#define PROP_FINAL (PROP_DEATH_NOTES | PROP_LOG_LINKS \
| PROP_REG_INFO | PROP_KILL_DEAD_CODE \
| PROP_SCAN_DEAD_CODE | PROP_AUTOINC \