[lld] r361013 - [ELF][test] Reorganize some R_*_NONE tests

Russell Gallop via llvm-commits llvm-commits at lists.llvm.org
Fri May 17 07:10:14 PDT 2019


Hi,

Some of these new tests are failing on an X86 bot:
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-ubuntu-fast/builds/48513/


FAIL: lld :: ELF/relocation-none-aarch64.s (48524 of 49081)
FAIL: lld :: ELF/relocation-none-arm.s (48525 of 49081)

I think that the REQUIRES from the previous tests need re-instating. Please
could you take a look?

Thanks
Russ

On Fri, 17 May 2019 at 11:41, Fangrui Song via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: maskray
> Date: Fri May 17 03:44:05 2019
> New Revision: 361013
>
> URL: http://llvm.org/viewvc/llvm-project?rev=361013&view=rev
> Log:
> [ELF][test] Reorganize some R_*_NONE tests
>
> Change R_{386,AARCH64}_NONE yaml2obj tests/icf10.test to use assembly
>
> Add relocation-none-{arm,x86_64}.s.
>   Check the referenced section survives under --gc-sections.
>   Check -r copies R_X86_64_NONE R_AARCH64_NONE. (Elf*_Rel arches currently
> have a bug)
>   Delete the dtrace tests as they are covered by the R_X86_64_NONE test.
>
> Reviewed By: ruiu
>
> Differential Revision: https://reviews.llvm.org/D62051
>
> Added:
>     lld/trunk/test/ELF/icf10.s
>     lld/trunk/test/ELF/relocation-none-aarch64.s
>     lld/trunk/test/ELF/relocation-none-arm.s
>     lld/trunk/test/ELF/relocation-none-i386.s
>     lld/trunk/test/ELF/relocation-none-x86-64.s
> Removed:
>     lld/trunk/test/ELF/Inputs/dtrace-r.o
>     lld/trunk/test/ELF/dtrace-r.test
>     lld/trunk/test/ELF/icf10.test
>     lld/trunk/test/ELF/relocation-dtrace.test
>     lld/trunk/test/ELF/relocation-none-aarch64.test
>     lld/trunk/test/ELF/relocation-none-i686.test
>
> Removed: lld/trunk/test/ELF/Inputs/dtrace-r.o
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/Inputs/dtrace-r.o?rev=361012&view=auto
>
> ==============================================================================
> Binary files lld/trunk/test/ELF/Inputs/dtrace-r.o (original) and
> lld/trunk/test/ELF/Inputs/dtrace-r.o (removed) differ
>
> Removed: lld/trunk/test/ELF/dtrace-r.test
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/dtrace-r.test?rev=361012&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/dtrace-r.test (original)
> +++ lld/trunk/test/ELF/dtrace-r.test (removed)
> @@ -1,8 +0,0 @@
> -RUN: ld.lld -r -o %t.o %p/Inputs/dtrace-r.o
> -RUN: llvm-readobj -r %t.o | FileCheck %s
> -
> -CHECK:      Relocations [
> -CHECK-NEXT:   Section ({{.*}}) .rela.text {
> -CHECK-NEXT:     0x0 R_X86_64_NONE - 0x0
> -CHECK-NEXT:   }
> -CHECK-NEXT: ]
>
> Added: lld/trunk/test/ELF/icf10.s
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/icf10.s?rev=361013&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/icf10.s (added)
> +++ lld/trunk/test/ELF/icf10.s Fri May 17 03:44:05 2019
> @@ -0,0 +1,17 @@
> +# REQUIRES: x86
> +
> +# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-freebsd %s -o %t.o
> +# RUN: ld.lld --icf=all %t.o -o /dev/null --print-icf-sections 2>&1 |
> FileCheck %s
> +
> +# Checks that ICF does not merge 2 sections the offset of
> +# the relocations of which differ.
> +
> +# CHECK-NOT: selected
> +
> +.section .text.foo,"ax"
> +  .quad -1
> +  .reloc 0, R_X86_64_NONE, 0
> +
> +.section .text.bar,"ax"
> +  .quad -1
> +  .reloc 1, R_X86_64_NONE, 0
>
> Removed: lld/trunk/test/ELF/icf10.test
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/icf10.test?rev=361012&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/icf10.test (original)
> +++ lld/trunk/test/ELF/icf10.test (removed)
> @@ -1,38 +0,0 @@
> -# RUN: yaml2obj %s -o %t.o
> -# RUN: ld.lld --icf=all %t.o -o /dev/null --print-icf-sections 2>&1 |
> FileCheck %s
> -
> -# Checks that ICF does not merge 2 sections the offset of
> -# the relocations of which differ.
> -
> -# CHECK-NOT: selected
> -
> -!ELF
> -FileHeader:
> -  Class:           ELFCLASS64
> -  Data:            ELFDATA2LSB
> -  OSABI:           ELFOSABI_FREEBSD
> -  Type:            ET_REL
> -  Machine:         EM_X86_64
> -Sections:
> -  - Name:            .text.foo
> -    Type:            SHT_PROGBITS
> -    Flags:           [ SHF_ALLOC, SHF_EXECINSTR]
> -    Content:         "FFFFFFFFFFFFFFFF"
> -  - Name:            .text.bar
> -    Type:            SHT_PROGBITS
> -    Flags:           [ SHF_ALLOC, SHF_EXECINSTR]
> -    Content:         "FFFFFFFFFFFFFFFF"
> -  - Name:            .rela.text.foo
> -    Type:            SHT_RELA
> -    Link:            .symtab
> -    Info:            .text.foo
> -    Relocations:
> -      - Offset:          0x0000000000000000
> -        Type:            R_X86_64_NONE
> -  - Name:            .rela.text.bar
> -    Type:            SHT_RELA
> -    Link:            .symtab
> -    Info:            .text.bar
> -    Relocations:
> -      - Offset:          0x0000000000000001
> -        Type:            R_X86_64_NONE
>
> Removed: lld/trunk/test/ELF/relocation-dtrace.test
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-dtrace.test?rev=361012&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-dtrace.test (original)
> +++ lld/trunk/test/ELF/relocation-dtrace.test (removed)
> @@ -1,23 +0,0 @@
> -# RUN: yaml2obj %s -o %t.o
> -# RUN: ld.lld -shared %t.o -o /dev/null
> -
> -# Test that we can handle R_X86_64_NONE as produced by dtrace.
> -
> -!ELF
> -FileHeader:
> -  Class:           ELFCLASS64
> -  Data:            ELFDATA2LSB
> -  OSABI:           ELFOSABI_FREEBSD
> -  Type:            ET_REL
> -  Machine:         EM_X86_64
> -Sections:
> -  - Name:            .text
> -    Type:            SHT_PROGBITS
> -    Flags:           [ SHF_ALLOC ]
> -  - Name:            .rela.text
> -    Type:            SHT_RELA
> -    Link:            .symtab
> -    Info:            .text
> -    Relocations:
> -      - Offset:          0x0000000000000000
> -        Type:            R_X86_64_NONE
>
> Added: lld/trunk/test/ELF/relocation-none-aarch64.s
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-none-aarch64.s?rev=361013&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-none-aarch64.s (added)
> +++ lld/trunk/test/ELF/relocation-none-aarch64.s Fri May 17 03:44:05 2019
> @@ -0,0 +1,24 @@
> +# RUN: llvm-mc -filetype=obj -triple=aarch64-linux-musl %s -o %t.o
> +# RUN: ld.lld --gc-sections %t.o -o %t
> +# RUN: llvm-readelf -S -r %t | FileCheck %s
> +
> +# Test that we discard R_AARCH64_NONE, but respect the references it
> creates
> +# among sections.
> +
> +# CHECK: .data
> +# CHECK: There are no relocations in this file.
> +
> +# RUN: ld.lld -r %t.o -o %t
> +# RUN: llvm-readobj -r %t | FileCheck --check-prefix=RELOC %s
> +
> +# RELOC:      Section ({{.*}}) .rela.text {
> +# RELOC-NEXT:   0x0 R_AARCH64_NONE .data 0x0
> +# RELOC-NEXT: }
> +
> +.globl _start
> +_start:
> +  ret
> +  .reloc 0, R_AARCH64_NONE, .data
> +
> +.data
> +  .long 0
>
> Removed: lld/trunk/test/ELF/relocation-none-aarch64.test
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-none-aarch64.test?rev=361012&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-none-aarch64.test (original)
> +++ lld/trunk/test/ELF/relocation-none-aarch64.test (removed)
> @@ -1,23 +0,0 @@
> -# REQUIRES: aarch64
> -
> -# RUN: yaml2obj %s -o %t.o
> -# RUN: ld.lld %t.o -o /dev/null
> -
> -!ELF
> -FileHeader:
> -  Class:           ELFCLASS64
> -  Data:            ELFDATA2LSB
> -  Type:            ET_REL
> -  Machine:         EM_AARCH64
> -Sections:
> -  - Type:            SHT_PROGBITS
> -    Name:            .text
> -    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
> -    Content:         "00000000"
> -  - Type:            SHT_RELA
> -    Name:            .rela.text
> -    Link:            .symtab
> -    Info:            .text
> -    Relocations:
> -      - Offset:          0
> -        Type:            R_AARCH64_NONE
>
> Added: lld/trunk/test/ELF/relocation-none-arm.s
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-none-arm.s?rev=361013&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-none-arm.s (added)
> +++ lld/trunk/test/ELF/relocation-none-arm.s Fri May 17 03:44:05 2019
> @@ -0,0 +1,17 @@
> +# RUN: llvm-mc -filetype=obj -triple=armv7-linux-musl %s -o %t.o
> +# RUN: ld.lld --gc-sections %t.o -o %t
> +# RUN: llvm-readelf -S -r %t | FileCheck %s
> +
> +# Test that we discard R_ARM_NONE, but respect the references it creates
> among
> +# sections.
> +
> +# CHECK: .data
> +# CHECK: There are no relocations in this file.
> +
> +.globl _start
> +_start:
> +  nop
> +  .reloc 0, R_ARM_NONE, .data
> +
> +.data
> +  .long 0
>
> Added: lld/trunk/test/ELF/relocation-none-i386.s
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-none-i386.s?rev=361013&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-none-i386.s (added)
> +++ lld/trunk/test/ELF/relocation-none-i386.s Fri May 17 03:44:05 2019
> @@ -0,0 +1,17 @@
> +# RUN: llvm-mc -filetype=obj -triple=i386-linux-musl %s -o %t.o
> +# RUN: ld.lld --gc-sections %t.o -o %t
> +# RUN: llvm-readelf -S -r %t | FileCheck %s
> +
> +# Test that we discard R_386_NONE, but respect the
> +# references it creates among sections.
> +
> +# CHECK: .data
> +# CHECK: There are no relocations in this file.
> +
> +.globl _start
> +_start:
> +  ret
> +  .reloc 0, R_386_NONE, .data
> +
> +.data
> +  .long 0
>
> Removed: lld/trunk/test/ELF/relocation-none-i686.test
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-none-i686.test?rev=361012&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-none-i686.test (original)
> +++ lld/trunk/test/ELF/relocation-none-i686.test (removed)
> @@ -1,22 +0,0 @@
> -# RUN: yaml2obj %s -o %t.o
> -# RUN: ld.lld %t.o -o /dev/null
> -
> -# Test that we can handle R_386_NONE.
> -
> -!ELF
> -FileHeader:
> -  Class:           ELFCLASS32
> -  Data:            ELFDATA2LSB
> -  Type:            ET_REL
> -  Machine:         EM_386
> -Sections:
> -  - Name:            .text
> -    Type:            SHT_PROGBITS
> -    Flags:           [ SHF_ALLOC ]
> -  - Name:            .rel.text
> -    Type:            SHT_RELA
> -    Link:            .symtab
> -    Info:            .text
> -    Relocations:
> -      - Offset:          0x0000000000000000
> -        Type:            R_386_NONE
>
> Added: lld/trunk/test/ELF/relocation-none-x86-64.s
> URL:
> http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-none-x86-64.s?rev=361013&view=auto
>
> ==============================================================================
> --- lld/trunk/test/ELF/relocation-none-x86-64.s (added)
> +++ lld/trunk/test/ELF/relocation-none-x86-64.s Fri May 17 03:44:05 2019
> @@ -0,0 +1,24 @@
> +# RUN: llvm-mc -filetype=obj -triple=x86_64-linux-musl %s -o %t.o
> +# RUN: ld.lld --gc-sections %t.o -o %t
> +# RUN: llvm-readelf -S -r %t | FileCheck %s
> +
> +# Test that we discard R_X86_64_NONE, but respect the
> +# references it creates among sections.
> +
> +# CHECK: .data
> +# CHECK: There are no relocations in this file.
> +
> +# RUN: ld.lld -r %t.o -o %t
> +# RUN: llvm-readobj -r %t | FileCheck --check-prefix=RELOC %s
> +
> +# RELOC:      Section ({{.*}}) .rela.text {
> +# RELOC-NEXT:   0x0 R_X86_64_NONE .data 0x0
> +# RELOC-NEXT: }
> +
> +.globl _start
> +_start:
> +  ret
> +  .reloc 0, R_X86_64_NONE, .data
> +
> +.data
> +  .long 0
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190517/f3db3ee1/attachment-0001.html>


More information about the llvm-commits mailing list