From 6465780617638ce65bd7458e30b34ebdc1a99f52 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Mon, 13 Nov 2017 12:26:48 +0100 Subject: [PATCH] gas/ia64: fix testsuite failures Commit dd90581873 ("Place .shstrtab section after .symtab and .strtab, thus restoring monotonically incre... ") adjusted section numbers, but forgot to adjust sh_link references from relocation and group section table entries. Additionally some other (perhaps subsequent) change appears to have added .rel.* and .rela.* sections to their respective groups, which requires some further adjustments to group-2.d. I assume this additional breakage wasn't noticed because the test was already failing at that time. This makes the gas testsuite complete successfully again for me in a cross build on ix86-linux; there continue to be quite a few ld failures. --- gas/ChangeLog | 6 ++++++ gas/testsuite/gas/ia64/group-1.d | 2 +- gas/testsuite/gas/ia64/group-2.d | 19 ++++++++++--------- gas/testsuite/gas/ia64/xdata.d | 2 +- 4 files changed, 18 insertions(+), 11 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 768ec17..0eb8c0d 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,11 @@ 2017-11-13 Jan Beulich + * testsuite/gas/ia64/group-1.d: Adjust expectations. + * testsuite/gas/ia64/group-2.d: Likewise. + * testsuite/gas/ia64/xdata.d: Likewise. + +2017-11-13 Jan Beulich + * config/tc-i386.c (process_suffix): Treat .shiftcount just like .inoutportreg. * testsuite/gas/i386/inval.s: Add ambiguous shift/rotate cases. diff --git a/gas/testsuite/gas/ia64/group-1.d b/gas/testsuite/gas/ia64/group-1.d index b90bd88..a04a5cc 100644 --- a/gas/testsuite/gas/ia64/group-1.d +++ b/gas/testsuite/gas/ia64/group-1.d @@ -9,7 +9,7 @@ Section Headers: \[ 0\] NULL 0000000000000000 00000000 0000000000000000 0000000000000000 0 0 0 \[ 1\] \.group GROUP 0000000000000000 00000040 - 0000000000000008 0000000000000004 7 6 4 + 0000000000000008 0000000000000004 6 6 4 \[ 2\] \.text PROGBITS 0000000000000000 00000050 0000000000000000 0000000000000000 AX 0 0 16 \[ 3\] \.data PROGBITS 0000000000000000 00000050 diff --git a/gas/testsuite/gas/ia64/group-2.d b/gas/testsuite/gas/ia64/group-2.d index cc8413f..fca5415 100644 --- a/gas/testsuite/gas/ia64/group-2.d +++ b/gas/testsuite/gas/ia64/group-2.d @@ -10,21 +10,21 @@ Section Headers: \[ 0\] NULL 0000000000000000 00000000 0000000000000000 0000000000000000 0 0 0 \[ 1\] \.group GROUP 0000000000000000 00000040 - 0000000000000010 0000000000000004 10 5 4 - \[ 2\] \.text PROGBITS 0000000000000000 00000050 + 0000000000000014 0000000000000004 9 5 4 + \[ 2\] \.text PROGBITS 0000000000000000 00000060 0000000000000000 0000000000000000 AX 0 0 16 - \[ 3\] \.data PROGBITS 0000000000000000 00000050 + \[ 3\] \.data PROGBITS 0000000000000000 00000060 0000000000000000 0000000000000000 WA 0 0 1 - \[ 4\] \.bss NOBITS 0000000000000000 00000050 + \[ 4\] \.bss NOBITS 0000000000000000 00000060 0000000000000000 0000000000000000 WA 0 0 1 - \[ 5\] \.gnu\.linkonce\.t\.f PROGBITS 0000000000000000 00000050 + \[ 5\] \.gnu\.linkonce\.t\.f PROGBITS 0000000000000000 00000060 0000000000000000 0000000000000000 AXG 0 0 16 - \[ 6\] \.gnu\.linkonce\.ia6 PROGBITS 0000000000000000 00000050 + \[ 6\] \.gnu\.linkonce\.ia6 PROGBITS 0000000000000000 00000060 0000000000000010 0000000000000000 AG 0 0 8 - \[ 7\] \.gnu\.linkonce\.ia6 IA_64_UNWIND 0000000000000000 00000060 + \[ 7\] \.gnu\.linkonce\.ia6 IA_64_UNWIND 0000000000000000 00000070 0000000000000018 0000000000000000 ALG 5 5 8 \[ 8\] \.rela\.gnu\.linkonc RELA 0000000000000000 .* - 0000000000000048 0000000000000018 I 10 7 8 + 0000000000000048 0000000000000018 IG 9 7 8 \[ 9\] \.symtab SYMTAB 0000000000000000 .* 00000000000000d8 0000000000000018 10 9 8 \[10\] \.strtab STRTAB 0000000000000000 .* @@ -34,8 +34,9 @@ Section Headers: Key to Flags: #... -COMDAT group section \[ 1\] `\.group' \[foo\] contains 3 sections: +COMDAT group section \[ 1\] `\.group' \[foo\] contains 4 sections: \[Index\] Name \[ 5\] \.gnu\.linkonce\.t\.foo \[ 6\] \.gnu\.linkonce\.ia64unwi\.foo \[ 7\] \.gnu\.linkonce\.ia64unw\.foo + \[ 8\] \.rela\.gnu\.linkonce\.ia64unw\.foo diff --git a/gas/testsuite/gas/ia64/xdata.d b/gas/testsuite/gas/ia64/xdata.d index eb12819..6727689 100644 --- a/gas/testsuite/gas/ia64/xdata.d +++ b/gas/testsuite/gas/ia64/xdata.d @@ -25,7 +25,7 @@ Section Headers: \[ 8\] "\.xdata5" PROGBITS 0000000000000000 [[:xdigit:]]+ 0000000000000020 0000000000000000 A 0 0 16 \[ 9\] \.rela"\.xdata5" RELA 0000000000000000 [[:xdigit:]]+ - 0000000000000030 0000000000000018 I 17 8 8 + 0000000000000030 0000000000000018 I 16 8 8 \[10\] \.xreal\\1 PROGBITS 0000000000000000 [[:xdigit:]]+ 0000000000000008 0000000000000000 A 0 0 4 \[11\] \.xreal\+2 PROGBITS 0000000000000000 [[:xdigit:]]+ -- 2.7.4