[lld] r234873 - [ARM] Rename IFUNC-related tests
Denis Protivensky
dprotivensky at accesssoftek.com
Tue Apr 14 01:44:55 PDT 2015
Author: denis-protivensky
Date: Tue Apr 14 03:44:55 2015
New Revision: 234873
URL: http://llvm.org/viewvc/llvm-project?rev=234873&view=rev
Log:
[ARM] Rename IFUNC-related tests
Added:
lld/trunk/test/elf/ARM/plt-ifunc-interwork.test
- copied unchanged from r234872, lld/trunk/test/elf/ARM/plt-interwork.test
lld/trunk/test/elf/ARM/plt-ifunc-mapping.test
- copied unchanged from r234872, lld/trunk/test/elf/ARM/plt-mapping.test
Removed:
lld/trunk/test/elf/ARM/plt-interwork.test
lld/trunk/test/elf/ARM/plt-mapping.test
Removed: lld/trunk/test/elf/ARM/plt-interwork.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf/ARM/plt-interwork.test?rev=234872&view=auto
==============================================================================
--- lld/trunk/test/elf/ARM/plt-interwork.test (original)
+++ lld/trunk/test/elf/ARM/plt-interwork.test (removed)
@@ -1,340 +0,0 @@
-# Check that PLT entries are properly generated for cases when
-# referenced from both ARM and Thumb code.
-#
-# 1. ARM code generates PLT without transition veneer.
-# RUN: yaml2obj -format=elf -docnum 1 %s > %t-f1-arm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-arm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=ARM-ONE %s
-
-# ARM-ONE: Contents of section .plt:
-# ARM-ONE-NEXT: 40007c 00c68fe2 00ca8ce2 7cffbce5
-# ^ regular veneer ^
-# Next line shows that .plt section ends.
-# ARM-ONE-NEXT: Contents of section .text:
-
-# 2. Thumb code generates PLT with transition veneer.
-# RUN: yaml2obj -format=elf -docnum 2 %s > %t-f1-thm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-thm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=THM-ONE %s
-
-# THM-ONE: Contents of section .plt:
-# THM-ONE-NEXT: 40007c 78470000 00c68fe2 00ca8ce2 78ffbce5
-# bx pc ^^ ^ regular veneer ^
-# Next line shows that .plt section ends.
-# THM-ONE-NEXT: Contents of section .text:
-
-# 3. ARM + Thumb code generate same single PLT with transition veneer.
-# RUN: yaml2obj -format=elf -docnum 1 %s > %t-f1-arm.o
-# RUN: yaml2obj -format=elf -docnum 3 %s > %t-f1-thm-for-arm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-arm.o %t-f1-thm-for-arm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=THM-ONE %s
-
-# 4. Thumb + ARM code generate same single PLT with transition veneer.
-# RUN: yaml2obj -format=elf -docnum 3 %s > %t-f1-thm-for-arm.o
-# RUN: yaml2obj -format=elf -docnum 1 %s > %t-f1-arm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-thm-for-arm.o %t-f1-arm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=THM-ONE %s
-
-# 5. ARM + ARM code generate two PLTs without transition veneers.
-# RUN: yaml2obj -format=elf -docnum 1 %s > %t-f1-arm.o
-# RUN: yaml2obj -format=elf -docnum 4 %s > %t-f2-arm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-arm.o %t-f2-arm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=ARM-TWO %s
-
-# ARM-TWO: Contents of section .plt:
-# ARM-TWO-NEXT: 400084 00c68fe2 00ca8ce2 74ffbce5 00c68fe2
-# ^ regular veneer 1 ^ ^ --
-# ARM-TWO-NEXT: 400094 00ca8ce2 6cffbce5
-# --- regular veneer 2 ^
-# Next line shows that .plt section ends.
-# ARM-TWO-NEXT: Contents of section .text:
-
-# 6. ARM + Thumb code generate two PLTs without and with transition veneer.
-# RUN: yaml2obj -format=elf -docnum 1 %s > %t-f1-arm.o
-# RUN: yaml2obj -format=elf -docnum 5 %s > %t-f2-thm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-arm.o %t-f2-thm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=ARM-THM-TWO %s
-
-# ARM-THM-TWO: Contents of section .plt:
-# ARM-THM-TWO-NEXT: 400084 00c68fe2 00ca8ce2 74ffbce5 78470000
-# ^ regular veneer 1 ^ ^^ bx pc 2
-# ARM-THM-TWO-NEXT: 400094 00c68fe2 00ca8ce2 68ffbce5
-# ^ regular veneer 2 ^
-# Next line shows that .plt section ends.
-# ARM-THM-TWO-NEXT: Contents of section .text:
-
-# 7. Thumb + ARM code generate two PLTs with and without transition veneer.
-# RUN: yaml2obj -format=elf -docnum 2 %s > %t-f1-thm.o
-# RUN: yaml2obj -format=elf -docnum 4 %s > %t-f2-arm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-thm.o %t-f2-arm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=THM-ARM-TWO %s
-
-# THM-ARM-TWO: Contents of section .plt:
-# THM-ARM-TWO-NEXT: 400084 78470000 00c68fe2 00ca8ce2 70ffbce
-# bx pc 1 ^^ ^ regular veneer 1 ^
-# THM-ARM-TWO-NEXT: 400094 00c68fe2 00ca8ce2 68ffbce5
-# ^ regular veneer 2 ^
-# Next line shows that .plt section ends.
-# THM-ARM-TWO-NEXT: Contents of section .text:
-
-# 8. Thumb + Thumb code generate two PLTs with transition veneers.
-# RUN: yaml2obj -format=elf -docnum 2 %s > %t-f1-thm.o
-# RUN: yaml2obj -format=elf -docnum 5 %s > %t-f2-thm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-f1-thm.o %t-f2-thm.o -o %t
-# RUN: llvm-objdump -s %t | FileCheck -check-prefix=THM-TWO %s
-
-# THM-TWO: Contents of section .plt:
-# THM-TWO-NEXT: 400084 78470000 00c68fe2 00ca8ce2 70ffbce5
-# bx pc 1 ^^ ^ regular veneer 1 ^
-# THM-TWO-NEXT: 400094 78470000 00c68fe2 00ca8ce2 64ffbce5
-# bx pc 2 ^^ ^ regular veneer 2 ^
-# Next line shows that .plt section ends.
-# THM-TWO-NEXT: Contents of section .text:
-
-# f1-arm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 04B02DE500B08DE2003000E3003040E30300A0E100D04BE204B09DE41EFF2FE100482DE904B08DE2FEFFFFEB0030A0E10300A0E10088BDE8
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000008
- Symbol: main
- Type: R_ARM_MOVW_ABS_NC
- - Offset: 0x000000000000000C
- Symbol: main
- Type: R_ARM_MOVT_ABS
- - Offset: 0x0000000000000028
- Symbol: f1
- Type: R_ARM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f1
- Type: STT_GNU_IFUNC
- Section: .text
- - Name: main
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000020
-
-# f1-thm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 80B400AF40F20003C0F200031846BD465DF8047B704700BF80B500AFFFF7FEFF0346184680BD00BF
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000004
- Symbol: main
- Type: R_ARM_THM_MOVW_ABS_NC
- - Offset: 0x0000000000000008
- Symbol: main
- Type: R_ARM_THM_MOVT_ABS
- - Offset: 0x000000000000001C
- Symbol: f1
- Type: R_ARM_THM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f1
- Type: STT_GNU_IFUNC
- Section: .text
- Value: 0x0000000000000001
- - Name: main
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000019
-
-# f1-thm-for-arm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 80B500AFFFF7FEFF0346184680BD00BF
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000004
- Symbol: f1
- Type: R_ARM_THM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000001
- - Name: f1
-
-# f2-arm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 04B02DE500B08DE2003000E3003040E30300A0E100D04BE204B09DE41EFF2FE100482DE904B08DE2FEFFFFEB0030A0E10300A0E10088BDE8
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000008
- Symbol: f
- Type: R_ARM_MOVW_ABS_NC
- - Offset: 0x000000000000000C
- Symbol: f
- Type: R_ARM_MOVT_ABS
- - Offset: 0x0000000000000028
- Symbol: f2
- Type: R_ARM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f2
- Type: STT_GNU_IFUNC
- Section: .text
- - Name: f
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000020
-
-# f2-thm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 80B400AF40F20003C0F200031846BD465DF8047B704700BF80B500AFFFF7FEFF0346184680BD00BF
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000004
- Symbol: f
- Type: R_ARM_THM_MOVW_ABS_NC
- - Offset: 0x0000000000000008
- Symbol: f
- Type: R_ARM_THM_MOVT_ABS
- - Offset: 0x000000000000001C
- Symbol: f2
- Type: R_ARM_THM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f2
- Type: STT_GNU_IFUNC
- Section: .text
- Value: 0x0000000000000001
- - Name: f
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000019
-...
Removed: lld/trunk/test/elf/ARM/plt-mapping.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf/ARM/plt-mapping.test?rev=234872&view=auto
==============================================================================
--- lld/trunk/test/elf/ARM/plt-mapping.test (original)
+++ lld/trunk/test/elf/ARM/plt-mapping.test (removed)
@@ -1,111 +0,0 @@
-# Check that mapping symbols are properly generated for IFUNC PLT entries.
-
-# RUN: yaml2obj -format=elf -docnum 1 %s > %t-arm.o
-# RUN: yaml2obj -format=elf -docnum 2 %s > %t-thm.o
-# RUN: lld -flavor gnu -target arm-linux-gnu \
-# RUN: -Bstatic --noinhibit-exec %t-arm.o %t-thm.o -o %t
-# RUN: llvm-readobj -symbols %t | FileCheck %s
-
-# CHECK: Name: {{[$]?[a]?[.]?}}__plt_ifunc_f1
-# CHECK: Name: {{[$]?[t]?[.]?}}__plt_from_thumb_ifunc_f2
-# CHECK: Name: {{[$]?[a]?[.]?}}__plt_ifunc_f2
-
-# arm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 04B02DE500B08DE2003000E3003040E30300A0E100D04BE204B09DE41EFF2FE100482DE904B08DE2FEFFFFEB0030A0E10300A0E10088BDE8
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000008
- Symbol: main
- Type: R_ARM_MOVW_ABS_NC
- - Offset: 0x000000000000000C
- Symbol: main
- Type: R_ARM_MOVT_ABS
- - Offset: 0x0000000000000028
- Symbol: f1
- Type: R_ARM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f1
- Type: STT_GNU_IFUNC
- Section: .text
- - Name: main
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000020
-
-# thm.o
----
-FileHeader:
- Class: ELFCLASS32
- Data: ELFDATA2LSB
- Type: ET_REL
- Machine: EM_ARM
- Flags: [ EF_ARM_EABI_VER5 ]
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x0000000000000004
- Content: 80B400AF40F20003C0F200031846BD465DF8047B704700BF80B500AFFFF7FEFF0346184680BD00BF
- - Name: .rel.text
- Type: SHT_REL
- Link: .symtab
- AddressAlign: 0x0000000000000004
- Info: .text
- Relocations:
- - Offset: 0x0000000000000004
- Symbol: f
- Type: R_ARM_THM_MOVW_ABS_NC
- - Offset: 0x0000000000000008
- Symbol: f
- Type: R_ARM_THM_MOVT_ABS
- - Offset: 0x000000000000001C
- Symbol: f2
- Type: R_ARM_THM_CALL
- - Name: .data
- Type: SHT_PROGBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
- - Name: .bss
- Type: SHT_NOBITS
- Flags: [ SHF_WRITE, SHF_ALLOC ]
- AddressAlign: 0x0000000000000001
- Content: ''
-Symbols:
- Global:
- - Name: f2
- Type: STT_GNU_IFUNC
- Section: .text
- Value: 0x0000000000000001
- - Name: f
- Type: STT_FUNC
- Section: .text
- Value: 0x0000000000000019
-...
More information about the llvm-commits
mailing list