OSDN Git Service

* readelf.c (display_debug_frames): Use data factor for
authordrow <drow>
Wed, 20 Apr 2005 18:43:15 +0000 (18:43 +0000)
committerdrow <drow>
Wed, 20 Apr 2005 18:43:15 +0000 (18:43 +0000)
DW_CFA_def_cfa_sf and DW_CFA_def_cfa_offset_sf.

binutils/ChangeLog
binutils/readelf.c

index 1156c15..05bd850 100644 (file)
@@ -1,3 +1,8 @@
+2005-04-20  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * readelf.c (display_debug_frames): Use data factor for
+       DW_CFA_def_cfa_sf and DW_CFA_def_cfa_offset_sf.
+
 2005-04-19  H.J. Lu  <hongjiu.lu@intel.com>
 
        * objdump.c (dump_section_header): Skip linker created section.
index 834ee2d..5d2f639 100644 (file)
@@ -10709,6 +10709,7 @@ display_debug_frames (Elf_Internal_Shdr *section,
            case DW_CFA_def_cfa_sf:
              fc->cfa_reg = LEB ();
              fc->cfa_offset = SLEB ();
+             fc->cfa_offset = fc->cfa_offset * fc->data_factor;
              fc->cfa_exp = 0;
              if (! do_debug_frames_interp)
                printf ("  DW_CFA_def_cfa_sf: r%d ofs %d\n",
@@ -10717,6 +10718,7 @@ display_debug_frames (Elf_Internal_Shdr *section,
 
            case DW_CFA_def_cfa_offset_sf:
              fc->cfa_offset = SLEB ();
+             fc->cfa_offset = fc->cfa_offset * fc->data_factor;
              if (! do_debug_frames_interp)
                printf ("  DW_CFA_def_cfa_offset_sf: %d\n", fc->cfa_offset);
              break;