summaryrefslogtreecommitdiff
path: root/gcc/reload.h
diff options
context:
space:
mode:
authorJie Zhang <jie@codesourcery.com>2010-03-31 02:44:10 +0000
committerJie Zhang <jiez@gcc.gnu.org>2010-03-31 02:44:10 +0000
commitdc12b70ef2ff960820c183f4911c9d426e34eac3 (patch)
treebdc83c7c76ffc03569d38f8626f441aecbd9e452 /gcc/reload.h
parentd500b6cfc85cbd6d7a042796689d796d498fc468 (diff)
downloadgcc-dc12b70ef2ff960820c183f4911c9d426e34eac3.tar.gz
re PR other/43562 (GCC ICE on optimize attribute)
PR 43562 * reload.h (caller_save_initialized_p): Declare. * toplev.c (backend_init_target): Don't call init_caller_save but set caller_save_initialized_p to false. * caller-save.c (caller_save_initialized_p): Define. (init_caller_save): Check caller_save_initialized_p. * ira.c (ira): Call init_caller_save if flag_caller_saves. testsuite/ PR 43562 * gcc.dg/pr43562.c: New test. From-SVN: r157849
Diffstat (limited to 'gcc/reload.h')
-rw-r--r--gcc/reload.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/reload.h b/gcc/reload.h
index 5d8375b9589..883d1416ee3 100644
--- a/gcc/reload.h
+++ b/gcc/reload.h
@@ -349,6 +349,9 @@ extern bool elimination_target_reg_p (rtx);
/* Deallocate the reload register used by reload number R. */
extern void deallocate_reload_reg (int r);
+/* True if caller-save has been reinitialized. */
+extern bool caller_save_initialized_p;
+
/* Functions in caller-save.c: */
/* Initialize for caller-save. */