+Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stmt.c (expand_goto_internal, fixup_gotos): Only check
+ TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
+
2000-08-21 Richard Henderson <rth@cygnus.com>
* flow.c (calculate_global_regs_live): Mark frame pointer live
/* Don't do this adjust if it's to the end label and this function
is to return with a depressed stack pointer. */
if (label == return_label
- && (TYPE_RETURNS_STACK_DEPRESSED
- (TREE_TYPE (current_function_decl))))
+ && (((TREE_CODE (TREE_TYPE (current_function_decl))
+ == FUNCTION_TYPE)
+ && (TYPE_RETURNS_STACK_DEPRESSED
+ (TREE_TYPE (current_function_decl))))))
;
else
emit_stack_restore (SAVE_BLOCK, stack_level, NULL_RTX);
jump jumps out of. */
if (f->stack_level
&& ! (f->target_rtl == return_label
- && (TYPE_RETURNS_STACK_DEPRESSED
- (TREE_TYPE (current_function_decl)))))
+ && ((TREE_CODE (TREE_TYPE (current_function_decl))
+ == FUNCTION_TYPE)
+ && (TYPE_RETURNS_STACK_DEPRESSED
+ (TREE_TYPE (current_function_decl))))))
emit_stack_restore (SAVE_BLOCK, f->stack_level, f->before_jump);
/* Finish up the sequence containing the insns which implement the