[PATCH] DW_CFA_def_cfa_sf and DW_CFA_def_cfa_offset_sf

Jan Beulich JBeulich@novell.com
Mon Dec 6 11:21:00 GMT 2004


DW_CFA_def_cfa_sf and DW_CFA_def_cfa_offset_sf both have a factored,
signed
offset as per the 3.0 public review draft.

Built and tested on i686-pc-linux-gnu.

Jan

gas/
2004-12-06  Jan Beulich  <jbeulich@novell.com>

	* dw2gencfi.c (output_cfi_insn): Adjust DW_CFA_def_cfa_sf
generation
	to emit a signed and factored offset. Adjust
DW_CFA_def_cfa_offset_sf
	generation to emit a factored offset.

---
/home/jbeulich/src/binutils/mainline/2004-12-03.13.35/gas/dw2gencfi.c	2004-10-08
08:52:54.000000000 +0200
+++ 2004-12-03.13.35/gas/dw2gencfi.c	2004-12-06 12:10:56.959482848
+0100
@@ -728,7 +728,7 @@ output_cfi_insn (struct cfi_insn_data *i
 	{
 	  out_one (DW_CFA_def_cfa_sf);
 	  out_uleb128 (insn->u.ri.reg);
-	  out_uleb128 (offset);
+	  out_sleb128 (offset / DWARF2_CIE_DATA_ALIGNMENT);
 	}
       else
 	{
@@ -750,7 +750,7 @@ output_cfi_insn (struct cfi_insn_data *i
       if (offset < 0)
 	{
 	  out_one (DW_CFA_def_cfa_offset_sf);
-	  out_sleb128 (offset);
+	  out_sleb128 (offset / DWARF2_CIE_DATA_ALIGNMENT);
 	}
       else
 	{

-------------- next part --------------
A non-text attachment was scrubbed...
Name: binutils-mainline-cfi-def_cfa_offset_sf.patch
Type: application/octet-stream
Size: 1042 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20041206/adc4b6a9/attachment.obj>


More information about the Binutils mailing list