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 86cf17e7eb8f2357b8bc5a518b12f2743fb65255..c5f19ff53c46c4eb043b2a05b50958beca302bf3 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 f71f2ea90f4fb1875ec426bca55a3d71db7b028d..d89bad9e8c0526fee35717c0659fdef006c16a8c 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 3bfa92cb38de4d6c54f9ffc5aafc91e9511b02f9..fcb3f0ff6d9bf6e564317d3edb175d1ca9c09ef7 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 158f6500397b3e7ccd74f2ffdbb7811b143f793e..af8cb76d1ca525d0ee625bfadd7737892d92f53f 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