diff options
author | Jim Wilson <wilson@cygnus.com> | 1998-03-31 16:59:41 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1998-03-31 08:59:41 -0800 |
commit | c8d86b9a3c933297b47d8ee8616e19fcd47d39d0 (patch) | |
tree | c3d1a8654d86e81a43a78078cf01b7ff9a43f148 | |
parent | 8d052bc70c4265754427c106f325eb4150b048c9 (diff) | |
download | gcc-c8d86b9a3c933297b47d8ee8616e19fcd47d39d0.zip gcc-c8d86b9a3c933297b47d8ee8616e19fcd47d39d0.tar.gz gcc-c8d86b9a3c933297b47d8ee8616e19fcd47d39d0.tar.bz2 |
Fix problem where different code gets generated with/without -Wreturn-type.
* toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
From-SVN: r18918
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/toplev.c | 11 |
2 files changed, 15 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 89538bd..578fe72 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com> + + * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end. + Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com> * libgcc2.c: (__main, __do_global_dtors, __do_global_ctors): diff --git a/gcc/toplev.c b/gcc/toplev.c index 5fbf36d..18ed3324 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -3643,6 +3643,17 @@ rest_of_compilation (decl) init_temp_slots (); + /* Make sure volatile mem refs aren't considered valid operands for + arithmetic insns. We must call this here if this is a nested inline + function, since the above code leaves us in the init_recog state + (from final.c), and the function context push/pop code does not + save/restore volatile_ok. + + ??? Maybe it isn't necessary for expand_start_function to call this + anymore if we do it here? */ + + init_recog_no_volatile (); + /* The parsing time is all the time spent in yyparse *except* what is spent in this function. */ |