diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 885b7398c88..6f13a4fd5da 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2000-05-30 Michael Meissner + + * dwarf2out.c (dwarf2out_frame_debug_expr): Ignore HIGH + instructions. Treat LO_SUM operations as loading the full integer + constant. + 2000-05-30 Richard Henderson * combine.c (get_pos_from_mask): Test exact_log2 result as signed. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index c0da4221632..609006848b7 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -1289,6 +1289,16 @@ dwarf2out_frame_debug_expr (expr, label) dwarf2out_def_cfa (label, cfa_reg, cfa_offset); break; + /* Skip over HIGH, assuming it will be followed by a LO_SUM, which + will fill in all of the bits. */ + case HIGH: + break; + + case LO_SUM: + cfa_temp_reg = REGNO (dest); + cfa_temp_value = INTVAL (XEXP (src, 1)); + break; + case MEM: /* Saving a register to the stack. Make sure dest is relative to the CFA register. */