aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Meissner <meissner@gcc.gnu.org>1992-11-18 18:50:20 +0000
committerMichael Meissner <meissner@gcc.gnu.org>1992-11-18 18:50:20 +0000
commit258d81a86c2116504cfe24f6aa7f16d6eaf21a47 (patch)
tree021c35ec6e556bd6b1e17b56d9a0766c47277ea3
parent77edb222612e6c3944f185516b5aa204e8d60679 (diff)
downloadgcc-258d81a86c2116504cfe24f6aa7f16d6eaf21a47.zip
gcc-258d81a86c2116504cfe24f6aa7f16d6eaf21a47.tar.gz
gcc-258d81a86c2116504cfe24f6aa7f16d6eaf21a47.tar.bz2
Make sure all fields in current_frame_info are initialized.
From-SVN: r2756
-rw-r--r--gcc/config/mips/mips.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 09c73fe..5c73d53 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -3813,7 +3813,7 @@ compute_frame_size (size)
function, so allocate some stack space to make it happy. */
if (args_size == 0 && current_function_calls_alloca)
- args_size = 4*UNITS_PER_WORD;
+ args_size = 4*UNITS_PER_WORD;
total_size = var_size + args_size + extra_size;
@@ -3873,6 +3873,12 @@ compute_frame_size (size)
current_frame_info.gp_sp_offset = offset;
current_frame_info.gp_save_offset = offset - total_size;
}
+ else
+ {
+ current_frame_info.gp_sp_offset = 0;
+ current_frame_info.gp_save_offset = 0;
+ }
+
if (fmask)
{
@@ -3880,6 +3886,11 @@ compute_frame_size (size)
current_frame_info.fp_sp_offset = offset;
current_frame_info.fp_save_offset = offset - total_size + UNITS_PER_WORD;
}
+ else
+ {
+ current_frame_info.fp_sp_offset = 0;
+ current_frame_info.fp_save_offset = 0;
+ }
/* Ok, we're done. */
return total_size;