diff options
author | Michael Meissner <meissner@redhat.com> | 2000-05-31 01:36:58 +0000 |
---|---|---|
committer | Michael Meissner <meissner@gcc.gnu.org> | 2000-05-31 01:36:58 +0000 |
commit | ab577d8a3ddaf9dcc97a78fb0c782b7829e6fdb6 (patch) | |
tree | d3b90570082145a43fdec108a66c340943340e1b /gcc | |
parent | d3bc89386df9d3164bb1404897448106d40089e4 (diff) | |
download | gcc-ab577d8a3ddaf9dcc97a78fb0c782b7829e6fdb6.zip gcc-ab577d8a3ddaf9dcc97a78fb0c782b7829e6fdb6.tar.gz gcc-ab577d8a3ddaf9dcc97a78fb0c782b7829e6fdb6.tar.bz2 |
Allow HIGH/LO_SUM in the prologue
From-SVN: r34281
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 10 |
2 files changed, 16 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 885b739..6f13a4f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2000-05-30 Michael Meissner <meissner@redhat.com> + + * dwarf2out.c (dwarf2out_frame_debug_expr): Ignore HIGH + instructions. Treat LO_SUM operations as loading the full integer + constant. + 2000-05-30 Richard Henderson <rth@cygnus.com> * combine.c (get_pos_from_mask): Test exact_log2 result as signed. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index c0da422..6090068 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. */ |