+2002-04-16 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_output_function_prologue): Compute
+ instruction addresses.
+ (rs6000_output_function_epilogue): Likewise.
+
2002-04-16 Paolo Carlini <pcarlini@unitus.it>
* c-parse.in (poplevel, compstmt_start,
rtx temp;
/* These modes should always match. */
- if ( GET_MODE (op1) != compare_mode )
+ if (GET_MODE (op1) != compare_mode)
return 0;
- if ( GET_MODE (true_cond) != result_mode )
+ if (GET_MODE (true_cond) != result_mode)
return 0;
- if ( GET_MODE (false_cond) != result_mode )
+ if (GET_MODE (false_cond) != result_mode)
return 0;
/* First, work out if the hardware can do this at all, or
emit_note (0, NOTE_INSN_DELETED);
rs6000_emit_prologue ();
emit_note (0, NOTE_INSN_DELETED);
+
+ /* Expand INSN_ADDRESSES so final() doesn't crash. */
+ {
+ rtx insn;
+ unsigned addr = 0;
+ for (insn = get_insns (); insn != 0; insn = NEXT_INSN (insn))
+ {
+ INSN_ADDRESSES_NEW (insn, addr);
+ addr += 4;
+ }
+ }
if (TARGET_DEBUG_STACK)
debug_rtx_list (get_insns (), 100);
rs6000_emit_epilogue (FALSE);
emit_note (0, NOTE_INSN_DELETED);
+ /* Expand INSN_ADDRESSES so final() doesn't crash. */
+ {
+ rtx insn;
+ unsigned addr = 0;
+ for (insn = get_insns (); insn != 0; insn = NEXT_INSN (insn))
+ {
+ INSN_ADDRESSES_NEW (insn, addr);
+ addr += 4;
+ }
+ }
+
if (TARGET_DEBUG_STACK)
debug_rtx_list (get_insns (), 100);
final (get_insns (), file, FALSE, FALSE);