summaryrefslogtreecommitdiff
path: root/gas/dw2gencfi.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2008-11-28 21:28:28 +0000
committerJakub Jelinek <jakub@redhat.com>2008-11-28 21:28:28 +0000
commitb55fb26fb141fc1df94ddf7a3f1471da3eabab83 (patch)
treed53d4bbdf3e6df71e9b918a05b8100adb60603f6 /gas/dw2gencfi.c
parentd838b8bc626c044dba1661ab716dc9a45a74d5c7 (diff)
downloadbinutils-redhat-b55fb26fb141fc1df94ddf7a3f1471da3eabab83.tar.gz
* Makefile.am (ehopt.o): Add struc-symbol.h.
* Makefile.in: Regenerated. * ehopt.c: Include struc-symbol.h. (check_eh_frame): For very small O_constant DW_CFA_advance_loc4 create correct DW_CFA_advance_loc. Handle O_subtract only for code alignment factor 1, otherwise handle O_divide or O_right_shift of O_subtract and O_constant. (eh_frame_estimate_size_before_relax): Always divide by ca. (eh_frame_convert_frag): Likewise. * dw2gencfi.c (output_cfi_insn): Scale DW_CFA_advance_loc1, DW_CFA_advance_loc2 and DW_CFA_advance_loc4 outputs.
Diffstat (limited to 'gas/dw2gencfi.c')
-rw-r--r--gas/dw2gencfi.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gas/dw2gencfi.c b/gas/dw2gencfi.c
index 4adfeab975..a9b58d4fbb 100644
--- a/gas/dw2gencfi.c
+++ b/gas/dw2gencfi.c
@@ -1,5 +1,5 @@
/* dw2gencfi.c - Support for generating Dwarf2 CFI information.
- Copyright 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ Copyright 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Contributed by Michal Ludvig <mludvig@suse.cz>
This file is part of GAS, the GNU Assembler.
@@ -972,20 +972,20 @@ output_cfi_insn (struct cfi_insn_data *insn)
if (scaled <= 0x3F)
out_one (DW_CFA_advance_loc + scaled);
- else if (delta <= 0xFF)
+ else if (scaled <= 0xFF)
{
out_one (DW_CFA_advance_loc1);
- out_one (delta);
+ out_one (scaled);
}
- else if (delta <= 0xFFFF)
+ else if (scaled <= 0xFFFF)
{
out_one (DW_CFA_advance_loc2);
- out_two (delta);
+ out_two (scaled);
}
else
{
out_one (DW_CFA_advance_loc4);
- out_four (delta);
+ out_four (scaled);
}
}
else