aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernardo Innocenti <bernie@develer.com>2004-06-05 23:23:06 +0200
committerBernardo Innocenti <bernie@gcc.gnu.org>2004-06-05 23:23:06 +0200
commit1ee19633cade4692a592576164f627aa7b48422d (patch)
treefaaa182a615ab84877663cc546546f4e90246191 /gcc
parentc6e8380069ff630939beec0b5872a37f5b710189 (diff)
downloadgcc-1ee19633cade4692a592576164f627aa7b48422d.zip
gcc-1ee19633cade4692a592576164f627aa7b48422d.tar.gz
gcc-1ee19633cade4692a592576164f627aa7b48422d.tar.bz2
regclass.c (init_reg_sets): Check for missing registers in target initializer macros FIXED_REGISTERS and...
* regclass.c (init_reg_sets): Check for missing registers in target initializer macros FIXED_REGISTERS and CALL_USED_REGISTERS. From-SVN: r82655
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/regclass.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1ad247d..529dd81 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-06-05 Bernardo Innocenti <bernie@develer.com>
+
+ * regclass.c (init_reg_sets): Check for missing registers in target
+ initializer macros FIXED_REGISTERS and CALL_USED_REGISTERS.
+
2004-06-05 Zack Weinberg <zack@codesourcery.com>
* Makefile.in (MKDEPS_H): New shorthand.
diff --git a/gcc/regclass.c b/gcc/regclass.c
index 0203d8a..ff7d89e 100644
--- a/gcc/regclass.c
+++ b/gcc/regclass.c
@@ -278,6 +278,12 @@ init_reg_sets (void)
SET_HARD_REG_BIT (reg_class_contents[i], j);
}
+ /* Sanity check: make sure the target macros FIXED_REGISTERS and
+ CALL_USED_REGISTERS had the right number of initializers. */
+ if (sizeof fixed_regs != sizeof initial_fixed_regs
+ || sizeof call_used_regs != sizeof initial_call_used_regs)
+ abort();
+
memcpy (fixed_regs, initial_fixed_regs, sizeof fixed_regs);
memcpy (call_used_regs, initial_call_used_regs, sizeof call_used_regs);
memset (global_regs, 0, sizeof global_regs);