Reduce excessive .eh_frame alignment for powerpc
authorAlan Modra <amodra@gmail.com>
Thu, 21 Sep 2017 00:24:04 +0000 (09:54 +0930)
committerAlan Modra <amodra@gmail.com>
Thu, 21 Sep 2017 13:47:44 +0000 (23:17 +0930)
PowerPC64 .cfi directives use DW_EH_PE_sdata4 encoding for .eh_frame,
so there is no real reason why .eh_frame should be 8 byte aligned.

gas/
* config/tc-ppc.h (EH_FRAME_ALIGNMENT): Define.
ld/
* testsuite/ld-powerpc/tlsopt5.wf: Update for reduced alignment.

gas/ChangeLog
gas/config/tc-ppc.h
ld/ChangeLog
ld/testsuite/ld-powerpc/tlsopt5.wf

index 86cf17e..c5f19ff 100644 (file)
@@ -1,3 +1,7 @@
+2017-09-21  Alan Modra  <amodra@gmail.com>
+
+       * config/tc-ppc.h (EH_FRAME_ALIGNMENT): Define.
+
 2017-09-14  Alan Modra  <amodra@gmail.com>
 
        PR 22127
index f71f2ea..d89bad9 100644 (file)
@@ -325,3 +325,4 @@ extern int ppc_dwarf2_line_min_insn_length;
 #define DWARF2_LINE_MIN_INSN_LENGTH     ppc_dwarf2_line_min_insn_length
 #define DWARF2_DEFAULT_RETURN_COLUMN    0x41
 #define DWARF2_CIE_DATA_ALIGNMENT       ppc_cie_data_alignment
+#define EH_FRAME_ALIGNMENT             2
index 3bfa92c..fcb3f0f 100644 (file)
@@ -1,3 +1,7 @@
+2017-09-21  Alan Modra  <amodra@gmail.com>
+
+       * testsuite/ld-powerpc/tlsopt5.wf: Update for reduced alignment.
+
 2017-09-19  Maciej W. Rozycki  <macro@imgtec.com>
 
        * configure.tgt <mips64el-*-openbsd*, mips64-*-openbsd*>: New
index 158f650..af8cb76 100644 (file)
@@ -16,17 +16,13 @@ Contents of the \.eh_frame section:
   DW_CFA_advance_loc: 16 to .*
   DW_CFA_restore_extended: r65
 
-0+2c 0+18 0+30 FDE cie=0+ pc=.*
+0+2c 0+14 0+30 FDE cie=0+ pc=.*
   DW_CFA_advance_loc: 4 to .*
   DW_CFA_register: r65 in r0
   DW_CFA_advance_loc: 28 to .*
   DW_CFA_restore_extended: r65
-  DW_CFA_nop
-  DW_CFA_nop
-  DW_CFA_nop
-  DW_CFA_nop
 
-0+48 0+10 0+4c FDE cie=0+ pc=.*
+0+44 0+10 0+48 FDE cie=0+ pc=.*
   DW_CFA_nop
   DW_CFA_nop
   DW_CFA_nop