]> gcc.gnu.org Git - gcc.git/commitdiff
stormy16.c (direct_return): Do not generate a direct return for interrupt handlers.
authorNick Clifton <nickc@gcc.gnu.org>
Mon, 15 Nov 2010 10:39:18 +0000 (10:39 +0000)
committerNick Clifton <nickc@gcc.gnu.org>
Mon, 15 Nov 2010 10:39:18 +0000 (10:39 +0000)
* config/stormy16/stormy16.c (direct_return): Do not generate a
direct return for interrupt handlers.

From-SVN: r166748

gcc/ChangeLog
gcc/config/stormy16/stormy16.c

index 3c35514a7542b6953e7d2c2a235e59552e3ed6ac..872ab8bca1be706fc9406f7ddbd04c85278dfd8f 100644 (file)
@@ -1,3 +1,8 @@
+2010-11-15  Nick Clifton  <nickc@redhat.com>
+
+       * config/stormy16/stormy16.c (direct_return): Do not generate a
+       direct return for interrupt handlers.
+
 2010-11-15  Joern Rennecke  <amylaar@spamcop.net>
 
        * Makefile.in (tm.texi): Replace with rule for:
@@ -55,7 +60,7 @@
        * output.h (decode_reg_name_and_count): Declare.
        * varasm.c (decode_reg_name_and_count): New function.
        (decode_reg_name): Reimplement using decode_reg_name_and_count.
-       * reginfo.c (fix_register): Use decode_reg_name_and_count and 
+       * reginfo.c (fix_register): Use decode_reg_name_and_count and
        iterate over all regs used.
        * stmt.c (expand_asm_operands): Likewise.
        * arm/aout.h (OVERLAPPING_REGISTER_NAMES): Define.
index 86a5caae147638aa4d6f548d6f0dd673eeb150a5..ce83f683d392dd56701c09bf7d2738c46bac4293 100644 (file)
@@ -1175,7 +1175,8 @@ int
 direct_return (void)
 {
   return (reload_completed
-         && xstormy16_compute_stack_layout ().frame_size == 0);
+         && xstormy16_compute_stack_layout ().frame_size == 0
+         && ! xstormy16_interrupt_function_p ());
 }
 
 /* Called after register allocation to add any instructions needed for
This page took 0.114227 seconds and 5 git commands to generate.