diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1993-09-14 18:56:04 -0700 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1993-09-14 18:56:04 -0700 |
commit | 179bb78c239573cbd4ea5b8577c56ba9b755183f (patch) | |
tree | 88950214eb8e2b02dc2d834cefa1db3168f384a8 | |
parent | 5522c047d527fec1955c75f05ce2d43464a62ce3 (diff) | |
download | gcc-179bb78c239573cbd4ea5b8577c56ba9b755183f.zip gcc-179bb78c239573cbd4ea5b8577c56ba9b755183f.tar.gz gcc-179bb78c239573cbd4ea5b8577c56ba9b755183f.tar.bz2 |
(immed_double_const, immed_real_const_1): Don't touch
const_double_chain if not inside a function.
From-SVN: r5322
-rw-r--r-- | gcc/varasm.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c index ea3fbb2..66128bb 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -1507,9 +1507,9 @@ immed_double_const (i0, i1, mode) r = gen_rtx (CONST_DOUBLE, mode, 0, i0, i1); pop_obstacks (); - /* Don't touch const_double_chain in nested function; - see force_const_mem. */ - if (outer_function_chain == 0) + /* Don't touch const_double_chain in nested function; see force_const_mem. + Also, don't touch it if not inside any function. */ + if (outer_function_chain == 0 && current_function_decl != 0) { CONST_DOUBLE_CHAIN (r) = const_double_chain; const_double_chain = r; @@ -1582,9 +1582,9 @@ immed_real_const_1 (d, mode) bcopy (&u, &CONST_DOUBLE_LOW (r), sizeof u); pop_obstacks (); - /* Don't touch const_double_chain in nested function; - see force_const_mem. */ - if (outer_function_chain == 0) + /* Don't touch const_double_chain in nested function; see force_const_mem. + Also, don't touch it if not inside any function. */ + if (outer_function_chain == 0 && current_function_decl != 0) { CONST_DOUBLE_CHAIN (r) = const_double_chain; const_double_chain = r; |