summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/test/ELF/aarch64-call26-thunk.s2
-rw-r--r--lld/test/ELF/aarch64-data-relocs.s2
-rw-r--r--lld/test/ELF/aarch64-gnu-ifunc-nosym.s2
-rw-r--r--lld/test/ELF/aarch64-gnu-ifunc-plt.s2
-rw-r--r--lld/test/ELF/aarch64-gnu-ifunc.s2
-rw-r--r--lld/test/ELF/aarch64-hi21-error.s2
-rw-r--r--lld/test/ELF/aarch64-jump26-thunk.s2
-rw-r--r--lld/test/ELF/aarch64-lo21-error.s2
-rw-r--r--lld/test/ELF/aarch64-thunk-pi.s2
-rw-r--r--lld/test/ELF/aarch64-thunk-script.s2
-rw-r--r--lld/test/ELF/aarch64-thunk-section-location.s2
-rw-r--r--lld/test/ELF/aarch64-tls-ie.s2
-rw-r--r--lld/test/ELF/aarch64-tlsld-ldst.s2
-rw-r--r--lld/test/ELF/aarch64-undefined-weak.s2
-rw-r--r--lld/test/ELF/arm-attributes.s2
-rw-r--r--lld/test/ELF/arm-bl-v6.s2
-rw-r--r--lld/test/ELF/arm-blx-v4t.s2
-rw-r--r--lld/test/ELF/arm-blx.s2
-rw-r--r--lld/test/ELF/arm-branch-rangethunk.s2
-rw-r--r--lld/test/ELF/arm-branch-undef-weak-plt-thunk.s2
-rw-r--r--lld/test/ELF/arm-branch.s2
-rw-r--r--lld/test/ELF/arm-data-prel.s2
-rw-r--r--lld/test/ELF/arm-data-relocs.s2
-rw-r--r--lld/test/ELF/arm-eabi-version.s2
-rw-r--r--lld/test/ELF/arm-exidx-canunwind.s2
-rw-r--r--lld/test/ELF/arm-exidx-dedup.s2
-rw-r--r--lld/test/ELF/arm-exidx-discard.s2
-rw-r--r--lld/test/ELF/arm-exidx-gc.s2
-rw-r--r--lld/test/ELF/arm-exidx-output.s2
-rw-r--r--lld/test/ELF/arm-exidx-relocatable.s2
-rw-r--r--lld/test/ELF/arm-exidx-sentinel-norelocatable.s2
-rw-r--r--lld/test/ELF/arm-exidx-shared.s2
-rw-r--r--lld/test/ELF/arm-gnu-ifunc-nosym.s2
-rw-r--r--lld/test/ELF/arm-gnu-ifunc-plt.s2
-rw-r--r--lld/test/ELF/arm-gnu-ifunc.s2
-rw-r--r--lld/test/ELF/arm-gotoff.s2
-rw-r--r--lld/test/ELF/arm-mov-relocs.s2
-rw-r--r--lld/test/ELF/arm-pie-relative.s2
-rw-r--r--lld/test/ELF/arm-plt-reloc.s2
-rw-r--r--lld/test/ELF/arm-sbrel32.s2
-rw-r--r--lld/test/ELF/arm-static-defines.s2
-rw-r--r--lld/test/ELF/arm-target2.s2
-rw-r--r--lld/test/ELF/arm-thumb-blx.s2
-rw-r--r--lld/test/ELF/arm-thumb-branch-rangethunk.s2
-rw-r--r--lld/test/ELF/arm-thumb-branch.s2
-rw-r--r--lld/test/ELF/arm-thumb-interwork-shared.s2
-rw-r--r--lld/test/ELF/arm-thumb-interwork-thunk.s2
-rw-r--r--lld/test/ELF/arm-thumb-narrow-branch-check.s2
-rw-r--r--lld/test/ELF/arm-thumb-no-undefined-thunk.s2
-rw-r--r--lld/test/ELF/arm-thumb-plt-reloc.s2
-rw-r--r--lld/test/ELF/arm-thumb-thunk-symbols.s2
-rw-r--r--lld/test/ELF/arm-thumb-undefined-weak.s2
-rw-r--r--lld/test/ELF/arm-thunk-largesection.s2
-rw-r--r--lld/test/ELF/arm-thunk-linkerscript-dotexpr.s2
-rw-r--r--lld/test/ELF/arm-thunk-linkerscript.s2
-rw-r--r--lld/test/ELF/arm-thunk-nosuitable.s2
-rw-r--r--lld/test/ELF/arm-thunk-section-too-large.s2
-rw-r--r--lld/test/ELF/arm-thunk-toolargesection.s2
-rw-r--r--lld/test/ELF/arm-tls-gd-nonpreemptible.s2
-rw-r--r--lld/test/ELF/arm-tls-gd32.s2
-rw-r--r--lld/test/ELF/arm-tls-ie32.s2
-rw-r--r--lld/test/ELF/arm-tls-ldm32.s2
-rw-r--r--lld/test/ELF/arm-tls-le32.s2
-rw-r--r--lld/test/ELF/arm-tls-norelax-gd-ie.s2
-rw-r--r--lld/test/ELF/arm-tls-norelax-gd-le.s2
-rw-r--r--lld/test/ELF/arm-tls-norelax-ie-le.s2
-rw-r--r--lld/test/ELF/arm-tls-norelax-ld-le.s2
-rw-r--r--lld/test/ELF/arm-undefined-weak.s2
-rw-r--r--lld/test/ELF/bss.s2
-rw-r--r--lld/test/ELF/comdat.s2
-rw-r--r--lld/test/ELF/common.s2
-rw-r--r--lld/test/ELF/ctors_dtors_priority.s2
-rw-r--r--lld/test/ELF/discard-locals.s2
-rw-r--r--lld/test/ELF/discard-merge-locals.s2
-rw-r--r--lld/test/ELF/discard-none.s2
-rw-r--r--lld/test/ELF/dynamic-reloc-weak.s2
-rw-r--r--lld/test/ELF/dynamic-reloc.s2
-rw-r--r--lld/test/ELF/end-preserve.s2
-rw-r--r--lld/test/ELF/end-update.s2
-rw-r--r--lld/test/ELF/end.s2
-rw-r--r--lld/test/ELF/gc-sections-local-sym.s2
-rw-r--r--lld/test/ELF/global-offset-table-position-aarch64.s2
-rw-r--r--lld/test/ELF/global-offset-table-position-arm.s2
-rw-r--r--lld/test/ELF/global-offset-table-position-i386.s2
-rw-r--r--lld/test/ELF/global-offset-table-position-mips.s3
-rw-r--r--lld/test/ELF/global-offset-table-position.s2
-rw-r--r--lld/test/ELF/gnu-ifunc-i386.s2
-rw-r--r--lld/test/ELF/gnu-ifunc-nosym-i386.s2
-rw-r--r--lld/test/ELF/gnu-ifunc-nosym.s2
-rw-r--r--lld/test/ELF/gnu-ifunc-plt-i386.s2
-rw-r--r--lld/test/ELF/gnu-ifunc-plt.s2
-rw-r--r--lld/test/ELF/gnu-ifunc-relative.s2
-rw-r--r--lld/test/ELF/gnu-ifunc.s2
-rw-r--r--lld/test/ELF/got-aarch64.s2
-rw-r--r--lld/test/ELF/got-i386.s2
-rw-r--r--lld/test/ELF/got.s2
-rw-r--r--lld/test/ELF/incompatible-ar-first.s2
-rw-r--r--lld/test/ELF/incompatible.s2
-rw-r--r--lld/test/ELF/init_fini_priority.s2
-rw-r--r--lld/test/ELF/libsearch.s2
-rw-r--r--lld/test/ELF/local-dynamic.s2
-rw-r--r--lld/test/ELF/local.s2
-rw-r--r--lld/test/ELF/merge-string-empty.s2
-rw-r--r--lld/test/ELF/no-augmentation.s3
-rw-r--r--lld/test/ELF/output-section.s2
-rw-r--r--lld/test/ELF/plt-aarch64.s3
-rw-r--r--lld/test/ELF/plt-i686.s2
-rw-r--r--lld/test/ELF/plt.s3
-rw-r--r--lld/test/ELF/pre_init_fini_array.s2
-rw-r--r--lld/test/ELF/pre_init_fini_array_missing.s2
-rw-r--r--lld/test/ELF/relative-dynamic-reloc-ppc64.s3
-rw-r--r--lld/test/ELF/relocation-absolute.s2
-rw-r--r--lld/test/ELF/relocation-common.s2
-rw-r--r--lld/test/ELF/relocation-i686.s2
-rw-r--r--lld/test/ELF/relocation-local.s2
-rw-r--r--lld/test/ELF/relocation-undefined-weak.s2
-rw-r--r--lld/test/ELF/relocation.s2
-rw-r--r--lld/test/ELF/relro-non-contiguous.s2
-rw-r--r--lld/test/ELF/reproduce.s2
-rw-r--r--lld/test/ELF/resolution-shared.s2
-rw-r--r--lld/test/ELF/resolution.s2
-rw-r--r--lld/test/ELF/shared.s2
-rw-r--r--lld/test/ELF/static-with-export-dynamic.s2
-rw-r--r--lld/test/ELF/string-table.s2
-rw-r--r--lld/test/ELF/symbols.s2
-rw-r--r--lld/test/ELF/sysroot.s2
-rw-r--r--lld/test/ELF/tls-static.s2
127 files changed, 127 insertions, 132 deletions
diff --git a/lld/test/ELF/aarch64-call26-thunk.s b/lld/test/ELF/aarch64-call26-thunk.s
index 0fe99cec974..067f6dbc2f7 100644
--- a/lld/test/ELF/aarch64-call26-thunk.s
+++ b/lld/test/ELF/aarch64-call26-thunk.s
@@ -1,8 +1,8 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %S/Inputs/abs.s -o %tabs
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %s -o %t
// RUN: ld.lld %t %tabs -o %t2 2>&1
// RUN: llvm-objdump -d -triple=aarch64-pc-freebsd %t2 | FileCheck %s
-// REQUIRES: aarch64
.text
.globl _start
diff --git a/lld/test/ELF/aarch64-data-relocs.s b/lld/test/ELF/aarch64-data-relocs.s
index 19e11bc3925..d32871543bf 100644
--- a/lld/test/ELF/aarch64-data-relocs.s
+++ b/lld/test/ELF/aarch64-data-relocs.s
@@ -1,8 +1,8 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-freebsd %s -o %t
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-freebsd %S/Inputs/abs256.s -o %t256.o
// RUN: ld.lld %t %t256.o -o %t2
// RUN: llvm-objdump -s %t2 | FileCheck %s
-// REQUIRES: aarch64
.globl _start
_start:
diff --git a/lld/test/ELF/aarch64-gnu-ifunc-nosym.s b/lld/test/ELF/aarch64-gnu-ifunc-nosym.s
index bb3a0b8b511..aa0124aa3fa 100644
--- a/lld/test/ELF/aarch64-gnu-ifunc-nosym.s
+++ b/lld/test/ELF/aarch64-gnu-ifunc-nosym.s
@@ -1,7 +1,7 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-linux-gnu %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-readobj -symbols %tout | FileCheck %s
-// REQUIRES: aarch64
// Check that no __rela_iplt_end/__rela_iplt_start
// appear in symtab if there is no references to them.
diff --git a/lld/test/ELF/aarch64-gnu-ifunc-plt.s b/lld/test/ELF/aarch64-gnu-ifunc-plt.s
index 5138675676d..ca30316c7af 100644
--- a/lld/test/ELF/aarch64-gnu-ifunc-plt.s
+++ b/lld/test/ELF/aarch64-gnu-ifunc-plt.s
@@ -1,3 +1,4 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-linux-gnu %S/Inputs/shared2.s -o %t1.o
// RUN: ld.lld %t1.o --shared -o %t.so
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-linux-gnu %s -o %t.o
@@ -5,7 +6,6 @@
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-objdump -s %tout | FileCheck %s --check-prefix=GOTPLT
// RUN: llvm-readobj -r -dynamic-table %tout | FileCheck %s
-// REQUIRES: aarch64
// Check that the IRELATIVE relocations are after the JUMP_SLOT in the plt
// CHECK: Relocations [
diff --git a/lld/test/ELF/aarch64-gnu-ifunc.s b/lld/test/ELF/aarch64-gnu-ifunc.s
index 4e0dc328025..b3c1571b760 100644
--- a/lld/test/ELF/aarch64-gnu-ifunc.s
+++ b/lld/test/ELF/aarch64-gnu-ifunc.s
@@ -1,8 +1,8 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-linux-gnu %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-readobj -r -symbols -sections %tout | FileCheck %s
-// REQUIRES: aarch64
// CHECK: Sections [
// CHECK: Section {
diff --git a/lld/test/ELF/aarch64-hi21-error.s b/lld/test/ELF/aarch64-hi21-error.s
index 9e2b283ea11..613b3beb9b3 100644
--- a/lld/test/ELF/aarch64-hi21-error.s
+++ b/lld/test/ELF/aarch64-hi21-error.s
@@ -1,7 +1,7 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %S/Inputs/abs.s -o %tabs
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %s -o %t
// RUN: not ld.lld %tabs %t -o %t2 2>&1 | FileCheck %s
-// REQUIRES: aarch64
.globl _start
_start:
diff --git a/lld/test/ELF/aarch64-jump26-thunk.s b/lld/test/ELF/aarch64-jump26-thunk.s
index 088ab3a9e1a..13c084a0c78 100644
--- a/lld/test/ELF/aarch64-jump26-thunk.s
+++ b/lld/test/ELF/aarch64-jump26-thunk.s
@@ -1,8 +1,8 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %S/Inputs/abs.s -o %tabs
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %s -o %t
// RUN: ld.lld %t %tabs -o %t2 2>&1
// RUN: llvm-objdump -d -triple=aarch64-pc-freebsd %t2 | FileCheck %s
-// REQUIRES: aarch64
.text
.globl _start
diff --git a/lld/test/ELF/aarch64-lo21-error.s b/lld/test/ELF/aarch64-lo21-error.s
index 055f8948f6a..a22cd27f06c 100644
--- a/lld/test/ELF/aarch64-lo21-error.s
+++ b/lld/test/ELF/aarch64-lo21-error.s
@@ -1,7 +1,7 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %S/Inputs/abs.s -o %tabs
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %s -o %t
// RUN: not ld.lld %tabs %t -o %t2 2>&1 | FileCheck %s
-// REQUIRES: aarch64
.globl _start
_start:
diff --git a/lld/test/ELF/aarch64-thunk-pi.s b/lld/test/ELF/aarch64-thunk-pi.s
index 1b65b4507c9..d5d956c669b 100644
--- a/lld/test/ELF/aarch64-thunk-pi.s
+++ b/lld/test/ELF/aarch64-thunk-pi.s
@@ -1,3 +1,4 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-linux-gnu %s -o %t
// RUN: echo "SECTIONS { \
// RUN: .text_low : { *(.text_low) } \
@@ -5,7 +6,6 @@
// RUN: } " > %t.script
// RUN: ld.lld --script %t.script --shared %t -o %t2 2>&1
// RUN: llvm-objdump -d -triple=aarch64-linux-gnu %t2 | FileCheck %s
-// REQUIRES: aarch64
// Check that Position Independent thunks are generated for shared libraries.
.section .text_low, "ax", %progbits
diff --git a/lld/test/ELF/aarch64-thunk-script.s b/lld/test/ELF/aarch64-thunk-script.s
index ebfaf72de5f..1dfdcbc7a56 100644
--- a/lld/test/ELF/aarch64-thunk-script.s
+++ b/lld/test/ELF/aarch64-thunk-script.s
@@ -1,3 +1,4 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-linux-gnu %s -o %t
// RUN: echo "SECTIONS { \
// RUN: .text_low 0x2000: { *(.text_low) } \
@@ -5,7 +6,6 @@
// RUN: } " > %t.script
// RUN: ld.lld --script %t.script %t -o %t2 2>&1
// RUN: llvm-objdump -d -triple=aarch64-linux-gnu %t2 | FileCheck %s
-// REQUIRES: aarch64
// Check that we have the out of branch range calculation right. The immediate
// field is signed so we have a slightly higher negative displacement.
diff --git a/lld/test/ELF/aarch64-thunk-section-location.s b/lld/test/ELF/aarch64-thunk-section-location.s
index bf70b7c365b..606c6941579 100644
--- a/lld/test/ELF/aarch64-thunk-section-location.s
+++ b/lld/test/ELF/aarch64-thunk-section-location.s
@@ -1,7 +1,7 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-linux-gnu %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -d -start-address=134086664 -stop-address=134086676 -triple=aarch64-linux-gnu %t2 | FileCheck %s
-// REQUIRES: aarch64
// Check that the range extension thunks are dumped close to the aarch64 branch
// range of 128 MiB
.section .text.1, "ax", %progbits
diff --git a/lld/test/ELF/aarch64-tls-ie.s b/lld/test/ELF/aarch64-tls-ie.s
index f4dec2b0beb..fba7cd8af51 100644
--- a/lld/test/ELF/aarch64-tls-ie.s
+++ b/lld/test/ELF/aarch64-tls-ie.s
@@ -1,5 +1,5 @@
-# REQUIRES: aarch64
// REQUIRES: aarch64
+# REQUIRES: aarch64
# RUN: llvm-mc -filetype=obj -triple=aarch64-unknown-freebsd %p/Inputs/aarch64-tls-ie.s -o %tdso.o
# RUN: llvm-mc -filetype=obj -triple=aarch64-unknown-freebsd %s -o %tmain.o
# RUN: ld.lld -shared %tdso.o -o %tdso.so
diff --git a/lld/test/ELF/aarch64-tlsld-ldst.s b/lld/test/ELF/aarch64-tlsld-ldst.s
index 7b9798c55b9..9de3a38044d 100644
--- a/lld/test/ELF/aarch64-tlsld-ldst.s
+++ b/lld/test/ELF/aarch64-tlsld-ldst.s
@@ -1,8 +1,8 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -triple=aarch64-linux-gnu -filetype=obj %s -o %t.o
// RUN: ld.lld %t.o -o %t
// RUN: llvm-objdump -d %t | FileCheck %s
// RUN: llvm-readelf --symbols %t | FileCheck -check-prefix CHECK-SYMS %s
-// REQUIRES: aarch64
.text
.globl _start
diff --git a/lld/test/ELF/aarch64-undefined-weak.s b/lld/test/ELF/aarch64-undefined-weak.s
index 35f50417497..e2316acf36a 100644
--- a/lld/test/ELF/aarch64-undefined-weak.s
+++ b/lld/test/ELF/aarch64-undefined-weak.s
@@ -1,7 +1,7 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-none-linux %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -triple=aarch64-none-linux -d %t2 | FileCheck %s
-// REQUIRES: aarch64
// Check that the ARM 64-bit ABI rules for undefined weak symbols are applied.
// Branch instructions are resolved to the next instruction. Undefined
diff --git a/lld/test/ELF/arm-attributes.s b/lld/test/ELF/arm-attributes.s
index 14517e8fc78..e4411e79b01 100644
--- a/lld/test/ELF/arm-attributes.s
+++ b/lld/test/ELF/arm-attributes.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-attributes1.s -o %t1.o
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t2.o
@@ -7,7 +8,6 @@
// RUN: llvm-readobj -arm-attributes %t2 | FileCheck %s
// RUN: ld.lld %t1.o %t2.o -r -o %t3
// RUN: llvm-readobj -arm-attributes %t3 | FileCheck %s
-// REQUIRES: arm
// Check that we retain only 1 SHT_ARM_ATTRIBUTES section. At present we do not
// try and merge or use the contents of SHT_ARM_ATTRIBUTES sections. We just
diff --git a/lld/test/ELF/arm-bl-v6.s b/lld/test/ELF/arm-bl-v6.s
index 6317aa433d6..eac33874823 100644
--- a/lld/test/ELF/arm-bl-v6.s
+++ b/lld/test/ELF/arm-bl-v6.s
@@ -1,6 +1,6 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=arm-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1 | FileCheck %s
-// REQUIRES: arm
// On Arm v6 the range of a Thumb BL instruction is only 4 megabytes as the
// extended range encoding is not supported. The following example has a Thumb
diff --git a/lld/test/ELF/arm-blx-v4t.s b/lld/test/ELF/arm-blx-v4t.s
index 858b93fd589..917dcc74a4e 100644
--- a/lld/test/ELF/arm-blx-v4t.s
+++ b/lld/test/ELF/arm-blx-v4t.s
@@ -1,6 +1,6 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=arm-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1 | FileCheck %s
-// REQUIRES: arm
// On Arm v4t there is no blx instruction so all interworking must go via
// a thunk. At present we don't support v4t so we give a warning for unsupported
diff --git a/lld/test/ELF/arm-blx.s b/lld/test/ELF/arm-blx.s
index 159eee51c74..5b44c8416c2 100644
--- a/lld/test/ELF/arm-blx.s
+++ b/lld/test/ELF/arm-blx.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/far-arm-thumb-abs.s -o %tfar
// RUN: echo "SECTIONS { \
@@ -10,7 +11,6 @@
// RUN: ld.lld --script %t.script %t %tfar -o %t2 2>&1
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-ARM %s
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-THUMB %s
-// REQUIRES: arm
// Test BLX instruction is chosen for ARM BL/BLX instruction and Thumb callee
// Using two callees to ensure at least one has 2-byte alignment.
diff --git a/lld/test/ELF/arm-branch-rangethunk.s b/lld/test/ELF/arm-branch-rangethunk.s
index e541f98d181..739a7707dbe 100644
--- a/lld/test/ELF/arm-branch-rangethunk.s
+++ b/lld/test/ELF/arm-branch-rangethunk.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/far-arm-abs.s -o %tfar
// RUN: ld.lld %t %tfar -o %t2 2>&1
@@ -5,7 +6,6 @@
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/far-long-arm-abs.s -o %tfarlong
// RUN: ld.lld %t %tfarlong -o %t3 2>&1
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t3 | FileCheck --check-prefix=LONG %s
-// REQUIRES: arm
.syntax unified
.section .text, "ax",%progbits
.globl _start
diff --git a/lld/test/ELF/arm-branch-undef-weak-plt-thunk.s b/lld/test/ELF/arm-branch-undef-weak-plt-thunk.s
index f95da0dcec2..f47ed61ca5a 100644
--- a/lld/test/ELF/arm-branch-undef-weak-plt-thunk.s
+++ b/lld/test/ELF/arm-branch-undef-weak-plt-thunk.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-shared.s -o %t
// RUN: ld.lld %t --shared -o %t.so
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t2
// RUN: ld.lld %t2 %t.so -o %t3
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi -start-address=69632 -stop-address=69664 %t3 | FileCheck %s
-// REQUIRES: arm
// When we are dynamic linking, undefined weak references have a PLT entry so
// we must create a thunk for the branch to the PLT entry.
diff --git a/lld/test/ELF/arm-branch.s b/lld/test/ELF/arm-branch.s
index 986863d3d80..48c497724b0 100644
--- a/lld/test/ELF/arm-branch.s
+++ b/lld/test/ELF/arm-branch.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/far-arm-abs.s -o %tfar
// RUN: echo "SECTIONS { \
@@ -7,7 +8,6 @@
// RUN: .callee2 : { *(.callee_high) } } " > %t.script
// RUN: ld.lld --script %t.script %t %tfar -o %t2 2>&1
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t2 | FileCheck %s
-// REQUIRES: arm
.syntax unified
.section .callee_low, "ax",%progbits
.align 2
diff --git a/lld/test/ELF/arm-data-prel.s b/lld/test/ELF/arm-data-prel.s
index a8c0c280b22..78b42818609 100644
--- a/lld/test/ELF/arm-data-prel.s
+++ b/lld/test/ELF/arm-data-prel.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc %s -triple=armv7-unknown-linux-gnueabi -filetype=obj -o %t.o
// RUN: echo "SECTIONS { \
// RUN: .text : { *(.text) } \
@@ -6,7 +7,6 @@
// RUN: .TEST1 : { *(.TEST1) } } " > %t.script
// RUN: ld.lld --script %t.script %t.o -o %t
// RUN: llvm-readobj -s -sd %t | FileCheck --check-prefix=CHECK %s
-// REQUIRES: arm
// The R_ARM_PREL31 relocation is used in by the .ARM.exidx exception tables
// bit31 of the place denotes whether the field is an inline table entry
diff --git a/lld/test/ELF/arm-data-relocs.s b/lld/test/ELF/arm-data-relocs.s
index ed237850c4c..586e1a6c893 100644
--- a/lld/test/ELF/arm-data-relocs.s
+++ b/lld/test/ELF/arm-data-relocs.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/abs256.s -o %t256.o
// RUN: ld.lld %t %t256.o -o %t2
// RUN: llvm-objdump -d %t2 | FileCheck %s
-// REQUIRES: arm
.syntax unified
.globl _start
_start:
diff --git a/lld/test/ELF/arm-eabi-version.s b/lld/test/ELF/arm-eabi-version.s
index 727b805fddd..a08374c132f 100644
--- a/lld/test/ELF/arm-eabi-version.s
+++ b/lld/test/ELF/arm-eabi-version.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-readobj -file-headers %tout | FileCheck %s
-// REQUIRES: arm
.syntax unified
.text
.globl _start
diff --git a/lld/test/ELF/arm-exidx-canunwind.s b/lld/test/ELF/arm-exidx-canunwind.s
index 96a7808e8e8..df89d0082fc 100644
--- a/lld/test/ELF/arm-exidx-canunwind.s
+++ b/lld/test/ELF/arm-exidx-canunwind.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t2 | FileCheck %s
// RUN: llvm-objdump -s -triple=armv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-EXIDX %s
// RUN: llvm-readobj --program-headers --sections %t2 | FileCheck -check-prefix=CHECK-PT %s
-// REQUIRES: arm
// Test that inline unwinding table entries and references to .ARM.extab
// entries survive the re-ordering of the .ARM.exidx section
diff --git a/lld/test/ELF/arm-exidx-dedup.s b/lld/test/ELF/arm-exidx-dedup.s
index 1648f77152e..49d4c2cd1ec 100644
--- a/lld/test/ELF/arm-exidx-dedup.s
+++ b/lld/test/ELF/arm-exidx-dedup.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t --no-merge-exidx-entries -o %t2
// RUN: llvm-objdump -s %t2 | FileCheck --check-prefix CHECK-DUPS %s
// RUN: ld.lld %t -o %t3
// RUN: llvm-objdump -s %t3 | FileCheck %s
-// REQUIRES: arm
// Test that lld can at least remove duplicate .ARM.exidx sections. A more
// fine grained implementation will be able to remove duplicate entries within
// a .ARM.exidx section.
diff --git a/lld/test/ELF/arm-exidx-discard.s b/lld/test/ELF/arm-exidx-discard.s
index 8c536831ac0..2a204a04cd1 100644
--- a/lld/test/ELF/arm-exidx-discard.s
+++ b/lld/test/ELF/arm-exidx-discard.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple arm-gnu-linux-eabi -mcpu cortex-a7 -arm-add-build-attributes %s -o %t.o
// RUN: echo "ENTRY(__entrypoint) SECTIONS { . = 0x10000; .text : { *(.text .text.*) } /DISCARD/ : { *(.ARM.exidx*) *(.gnu.linkonce.armexidx.*) } }" > %t.script
// RUN: ld.lld -T %t.script %t.o -o %t.elf 2>&1
// RUN: llvm-readobj -sections %t.elf | FileCheck %s
-// REQUIRES: arm
.globl __entrypoint
__entrypoint:
diff --git a/lld/test/ELF/arm-exidx-gc.s b/lld/test/ELF/arm-exidx-gc.s
index 34bd9dbe37b..50c8616ae77 100644
--- a/lld/test/ELF/arm-exidx-gc.s
+++ b/lld/test/ELF/arm-exidx-gc.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t --no-merge-exidx-entries -o %t2 --gc-sections 2>&1
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t2 | FileCheck %s
// RUN: llvm-objdump -s -triple=armv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-EXIDX %s
-// REQUIRES: arm
// Test the behavior of .ARM.exidx sections under garbage collection
// A .ARM.exidx section is live if it has a relocation to a live executable
diff --git a/lld/test/ELF/arm-exidx-output.s b/lld/test/ELF/arm-exidx-output.s
index dca43a35993..4c65c274b71 100644
--- a/lld/test/ELF/arm-exidx-output.s
+++ b/lld/test/ELF/arm-exidx-output.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-readobj -sections %t2 | FileCheck %s
-// REQUIRES: arm
// Check that only a single .ARM.exidx output section is created when
// there are input sections of the form .ARM.exidx.<section-name>. The
diff --git a/lld/test/ELF/arm-exidx-relocatable.s b/lld/test/ELF/arm-exidx-relocatable.s
index 1b6ee3f23a4..422dfc289ed 100644
--- a/lld/test/ELF/arm-exidx-relocatable.s
+++ b/lld/test/ELF/arm-exidx-relocatable.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %S/Inputs/arm-exidx-cantunwind.s -o %tcantunwind
// Check that relocatable link maintains SHF_LINK_ORDER
// RUN: ld.lld -r %t %tcantunwind -o %t4 2>&1
// RUN: llvm-readobj -s %t4 | FileCheck %s
-// REQUIRES: arm
// Each assembler created .ARM.exidx section has the SHF_LINK_ORDER flag set
// with the sh_link containing the section index of the executable section
diff --git a/lld/test/ELF/arm-exidx-sentinel-norelocatable.s b/lld/test/ELF/arm-exidx-sentinel-norelocatable.s
index 4a5b64d8cd1..22e3a09c573 100644
--- a/lld/test/ELF/arm-exidx-sentinel-norelocatable.s
+++ b/lld/test/ELF/arm-exidx-sentinel-norelocatable.s
@@ -1,6 +1,6 @@
+// REQUIRES: arm
// RUN: llvm-mc %s -triple=armv7-unknown-linux-gnueabi -filetype=obj -o %t.o
// RUN: ld.lld -r %t.o -o %t
-// REQUIRES: arm
// RUN: llvm-readobj -s %t | FileCheck %s
// Check that when doing a relocatable link we don't add a terminating entry
// to the .ARM.exidx section
diff --git a/lld/test/ELF/arm-exidx-shared.s b/lld/test/ELF/arm-exidx-shared.s
index 8db6755226d..631eb0711b8 100644
--- a/lld/test/ELF/arm-exidx-shared.s
+++ b/lld/test/ELF/arm-exidx-shared.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld --hash-style=sysv %t --shared -o %t2 2>&1
// RUN: llvm-readobj --relocations %t2 | FileCheck %s
// RUN: llvm-objdump -s -triple=armv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-EXTAB %s
-// REQUIRES: arm
// Check that the relative R_ARM_PREL31 relocation can access a PLT entry
// for when the personality routine is referenced from a shared library.
diff --git a/lld/test/ELF/arm-gnu-ifunc-nosym.s b/lld/test/ELF/arm-gnu-ifunc-nosym.s
index fa79aef7ced..b76ede75b4a 100644
--- a/lld/test/ELF/arm-gnu-ifunc-nosym.s
+++ b/lld/test/ELF/arm-gnu-ifunc-nosym.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-readobj -symbols %tout | FileCheck %s
-// REQUIRES: arm
// Check that no __rel_iplt_end/__rel_iplt_start
// appear in symtab if there are no references to them.
diff --git a/lld/test/ELF/arm-gnu-ifunc-plt.s b/lld/test/ELF/arm-gnu-ifunc-plt.s
index 2ff2ec0a143..441c31c2bb2 100644
--- a/lld/test/ELF/arm-gnu-ifunc-plt.s
+++ b/lld/test/ELF/arm-gnu-ifunc-plt.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-linux-gnueabihf %S/Inputs/arm-shared.s -o %t1.o
// RUN: ld.lld %t1.o --shared -o %t.so
// RUN: llvm-mc -filetype=obj -triple=armv7a-linux-gnueabihf %s -o %t.o
@@ -5,7 +6,6 @@
// RUN: llvm-objdump -triple=armv7a-linux-gnueabihf -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-objdump -s %tout | FileCheck %s --check-prefix=GOTPLT
// RUN: llvm-readobj -r -dynamic-table %tout | FileCheck %s
-// REQUIRES: arm
// Check that the IRELATIVE relocations are last in the .got
// CHECK: Relocations [
diff --git a/lld/test/ELF/arm-gnu-ifunc.s b/lld/test/ELF/arm-gnu-ifunc.s
index 799b8b17f62..8a7cb0ae237 100644
--- a/lld/test/ELF/arm-gnu-ifunc.s
+++ b/lld/test/ELF/arm-gnu-ifunc.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-objdump -triple armv7a-none-linux-gnueabi -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-readobj -r -symbols -sections %tout | FileCheck %s
-// REQUIRES: arm
.syntax unified
.text
.type foo STT_GNU_IFUNC
diff --git a/lld/test/ELF/arm-gotoff.s b/lld/test/ELF/arm-gotoff.s
index 5169f84e6a0..b9432b20df2 100644
--- a/lld/test/ELF/arm-gotoff.s
+++ b/lld/test/ELF/arm-gotoff.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-linux-gnueabi %s -o %t.o
// RUN: ld.lld %t.o -o %t
// RUN: llvm-readobj -s -r -t %t | FileCheck %s
// RUN: llvm-objdump -triple=armv7a-linux-gnueabi -d %t | FileCheck --check-prefix=DISASM %s
-// REQUIRES: arm
// Test the R_ARM_GOTOFF32 relocation
diff --git a/lld/test/ELF/arm-mov-relocs.s b/lld/test/ELF/arm-mov-relocs.s
index 7e3ce67e061..f49e2c102e4 100644
--- a/lld/test/ELF/arm-mov-relocs.s
+++ b/lld/test/ELF/arm-mov-relocs.s
@@ -1,10 +1,10 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-unknown-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-objdump -d %t2 -triple=armv7a-unknown-linux-gnueabi | FileCheck %s
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-unknown-linux-gnueabi %s -o %t3
// RUN: ld.lld %t3 -o %t4
// RUN: llvm-objdump -d %t4 -triple=thumbv7a-unknown-linux-gnueabi | FileCheck %s
-// REQUIRES: arm
// Test the R_ARM_MOVW_ABS_NC and R_ARM_MOVT_ABS relocations as well as
// the R_ARM_THM_MOVW_ABS_NC and R_ARM_THM_MOVT_ABS relocations.
diff --git a/lld/test/ELF/arm-pie-relative.s b/lld/test/ELF/arm-pie-relative.s
index f225015eb5f..582bb8aa03d 100644
--- a/lld/test/ELF/arm-pie-relative.s
+++ b/lld/test/ELF/arm-pie-relative.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld --hash-style=sysv %t --pie -o %t2
// RUN: llvm-readobj -r %t2 | FileCheck %s
// RUN: llvm-objdump -s %t2 | FileCheck %s --check-prefix=GOT
-// REQUIRES: arm
// Test that a R_ARM_GOT_BREL relocation with PIE results in a R_ARM_RELATIVE
// dynamic relocation
diff --git a/lld/test/ELF/arm-plt-reloc.s b/lld/test/ELF/arm-plt-reloc.s
index bda4eae2c92..347bc87f665 100644
--- a/lld/test/ELF/arm-plt-reloc.s
+++ b/lld/test/ELF/arm-plt-reloc.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %p/Inputs/arm-plt-reloc.s -o %t1
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t2
// RUN: ld.lld %t1 %t2 -o %t
@@ -5,7 +6,6 @@
// RUN: ld.lld --hash-style=sysv -shared %t1 %t2 -o %t3
// RUN: llvm-objdump -triple=armv7a-none-linux-gnueabi -d %t3 | FileCheck -check-prefix=DSO %s
// RUN: llvm-readobj -s -r %t3 | FileCheck -check-prefix=DSOREL %s
-// REQUIRES: arm
//
// Test PLT entry generation
.syntax unified
diff --git a/lld/test/ELF/arm-sbrel32.s b/lld/test/ELF/arm-sbrel32.s
index 7f12717195a..064f59bbd3f 100644
--- a/lld/test/ELF/arm-sbrel32.s
+++ b/lld/test/ELF/arm-sbrel32.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t2 | FileCheck %s
-// REQUIRES: arm
// Test the R_ARM_SBREL32 relocation which calculates the offset of the Symbol
// from the static base. We define the static base to be the address of the
diff --git a/lld/test/ELF/arm-static-defines.s b/lld/test/ELF/arm-static-defines.s
index 815c20ca945..4487ecdc292 100644
--- a/lld/test/ELF/arm-static-defines.s
+++ b/lld/test/ELF/arm-static-defines.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld --no-merge-exidx-entries %t --static -o %t2 2>&1
// RUN: llvm-readobj --symbols %t2 | FileCheck %s
-// REQUIRES: arm
// Check that on ARM we don't get a multiply defined symbol for __tls_get_addr
// and undefined symbols for references to __exidx_start and __exidx_end
diff --git a/lld/test/ELF/arm-target2.s b/lld/test/ELF/arm-target2.s
index f2f8bc17ce1..4dbcde88ec3 100644
--- a/lld/test/ELF/arm-target2.s
+++ b/lld/test/ELF/arm-target2.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t.o
// RUN: ld.lld %t.o -o %t 2>&1
// RUN: llvm-objdump -s -triple=armv7a-none-linux-gnueabi %t | FileCheck %s
@@ -7,7 +8,6 @@
// RUN: llvm-objdump -s -triple=armv7a-none-linux-gnueabi %t3 | FileCheck -check-prefix=CHECK-ABS %s
// RUN: ld.lld %t.o --target2=rel -o %t4 2>&1
// RUN: llvm-objdump -s -triple=armv7a-none-linux-gnueabi %t4 | FileCheck -check-prefix=CHECK-REL %s
-// REQUIRES: arm
// The R_ARM_TARGET2 is present in .ARM.extab sections. It can be handled as
// either R_ARM_ABS32, R_ARM_REL32 or R_ARM_GOT_PREL. For ARM linux the default
diff --git a/lld/test/ELF/arm-thumb-blx.s b/lld/test/ELF/arm-thumb-blx.s
index d79bef1835e..5316d13dbc2 100644
--- a/lld/test/ELF/arm-thumb-blx.s
+++ b/lld/test/ELF/arm-thumb-blx.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %S/Inputs/arm-thumb-blx-targets.s -o %ttarget
// RUN: echo "SECTIONS { \
@@ -9,7 +10,6 @@
// RUN: ld.lld --script %t.script %t %ttarget -o %t2 2>&1
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-THUMB %s
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t2 | FileCheck -check-prefix=CHECK-ARM %s
-// REQUIRES: arm
// Test BLX instruction is chosen for Thumb BL/BLX instruction and ARM callee
// 2 byte nops are used to test the pc-rounding behaviour. As a BLX from a
// 2 byte aligned destination is defined as Align(PC,4) + immediate:00
diff --git a/lld/test/ELF/arm-thumb-branch-rangethunk.s b/lld/test/ELF/arm-thumb-branch-rangethunk.s
index f83e64144d7..4bbd69214e9 100644
--- a/lld/test/ELF/arm-thumb-branch-rangethunk.s
+++ b/lld/test/ELF/arm-thumb-branch-rangethunk.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %S/Inputs/far-arm-thumb-abs.s -o %tfar
// RUN: ld.lld %t %tfar -o %t2 2>&1
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t2
-// REQUIRES: arm
.syntax unified
.thumb
.section .text, "ax",%progbits
diff --git a/lld/test/ELF/arm-thumb-branch.s b/lld/test/ELF/arm-thumb-branch.s
index 81bf7a3c68a..89c081a69b8 100644
--- a/lld/test/ELF/arm-thumb-branch.s
+++ b/lld/test/ELF/arm-thumb-branch.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %S/Inputs/far-arm-thumb-abs.s -o %tfar
// RUN: echo "SECTIONS { \
@@ -7,7 +8,6 @@
// RUN: .callee2 : { *(.callee_high) } } " > %t.script
// RUN: ld.lld --script %t.script %t %tfar -o %t2 2>&1
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t2 | FileCheck %s
-// REQUIRES: arm
.syntax unified
.thumb
diff --git a/lld/test/ELF/arm-thumb-interwork-shared.s b/lld/test/ELF/arm-thumb-interwork-shared.s
index cadcd451ad6..030ac29854b 100644
--- a/lld/test/ELF/arm-thumb-interwork-shared.s
+++ b/lld/test/ELF/arm-thumb-interwork-shared.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t --shared -o %t.so
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t.so | FileCheck %s
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t.so | FileCheck %s -check-prefix=PLT
-// REQUIRES: arm
.syntax unified
.global sym1
.global elsewhere
diff --git a/lld/test/ELF/arm-thumb-interwork-thunk.s b/lld/test/ELF/arm-thumb-interwork-thunk.s
index 8b37bc12e6f..df5d6c6b740 100644
--- a/lld/test/ELF/arm-thumb-interwork-thunk.s
+++ b/lld/test/ELF/arm-thumb-interwork-thunk.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: echo "SECTIONS { \
// RUN: . = SIZEOF_HEADERS; \
@@ -19,7 +20,6 @@
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t4 | FileCheck -check-prefix=CHECK-THUMB -check-prefix=CHECK-PI-PLT-THUMB %s
// RUN: llvm-objdump -d -triple=armv7a-none-linux-gnueabi %t4 | FileCheck -check-prefix=CHECK-ARM -check-prefix=CHECK-PI-PLT-ARM %s
// RUN: llvm-readobj -s -r %t4 | FileCheck -check-prefix=CHECK-DSO-REL %s
-// REQUIRES: arm
// Test ARM Thumb Interworking
// The file is linked and checked 3 times to check the following contexts
diff --git a/lld/test/ELF/arm-thumb-narrow-branch-check.s b/lld/test/ELF/arm-thumb-narrow-branch-check.s
index 82a7164f6df..27bac59787e 100644
--- a/lld/test/ELF/arm-thumb-narrow-branch-check.s
+++ b/lld/test/ELF/arm-thumb-narrow-branch-check.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: echo "SECTIONS { \
// RUN: . = SIZEOF_HEADERS; \
@@ -7,7 +8,6 @@
// RUN: .text : { *(.text) } } " > %t.script
// RUN: ld.lld --script %t.script %t %S/Inputs/arm-thumb-narrow-branch.o -o %t2 2>&1
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t2 | FileCheck %s
-// REQUIRES: arm
// Test the R_ARM_PC11 relocation which is used with the narrow encoding of B.N
// the source of these relocations is a binary file arm-thumb-narrow-branch.o
diff --git a/lld/test/ELF/arm-thumb-no-undefined-thunk.s b/lld/test/ELF/arm-thumb-no-undefined-thunk.s
index e8d8d8db684..5456e763949 100644
--- a/lld/test/ELF/arm-thumb-no-undefined-thunk.s
+++ b/lld/test/ELF/arm-thumb-no-undefined-thunk.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -triple=thumbv7a-none-linux-gnueabi -d %t2 | FileCheck %s
-// REQUIRES: arm
// Check that no thunks are created for an undefined weak symbol
.syntax unified
diff --git a/lld/test/ELF/arm-thumb-plt-reloc.s b/lld/test/ELF/arm-thumb-plt-reloc.s
index dd8770edc3c..742e95994ff 100644
--- a/lld/test/ELF/arm-thumb-plt-reloc.s
+++ b/lld/test/ELF/arm-thumb-plt-reloc.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %p/Inputs/arm-plt-reloc.s -o %t1
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t2
// RUN: ld.lld %t1 %t2 -o %t
@@ -6,7 +7,6 @@
// RUN: llvm-objdump -triple=thumbv7a-none-linux-gnueabi -d %t3 | FileCheck -check-prefix=DSOTHUMB %s
// RUN: llvm-objdump -triple=armv7a-none-linux-gnueabi -d %t3 | FileCheck -check-prefix=DSOARM %s
// RUN: llvm-readobj -s -r %t3 | FileCheck -check-prefix=DSOREL %s
-// REQUIRES: arm
//
// Test PLT entry generation
.syntax unified
diff --git a/lld/test/ELF/arm-thumb-thunk-symbols.s b/lld/test/ELF/arm-thumb-thunk-symbols.s
index faa39fec021..457d460997a 100644
--- a/lld/test/ELF/arm-thumb-thunk-symbols.s
+++ b/lld/test/ELF/arm-thumb-thunk-symbols.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-readobj --symbols %t2 | FileCheck %s
// RUN: ld.lld --shared %t -o %t3 2>&1
// RUN: llvm-readobj --symbols %t3 | FileCheck -check-prefix=CHECK-PI %s
-// REQUIRES: arm
// Check that the symbols generated for Thunks have the correct symbol type
// of STT_FUNC and the correct value of bit 0 (0 for ARM 1 for Thumb)
diff --git a/lld/test/ELF/arm-thumb-undefined-weak.s b/lld/test/ELF/arm-thumb-undefined-weak.s
index 7f481b0ddb8..d973c58f16d 100644
--- a/lld/test/ELF/arm-thumb-undefined-weak.s
+++ b/lld/test/ELF/arm-thumb-undefined-weak.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -triple=thumbv7a-none-linux-gnueabi -d %t2 | FileCheck %s
-// REQUIRES: arm
// Check that the ARM ABI rules for undefined weak symbols are applied.
// Branch instructions are resolved to the next instruction. Relative
diff --git a/lld/test/ELF/arm-thunk-largesection.s b/lld/test/ELF/arm-thunk-largesection.s
index 5e882a90605..d68cd0c7614 100644
--- a/lld/test/ELF/arm-thunk-largesection.s
+++ b/lld/test/ELF/arm-thunk-largesection.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi -start-address=69632 -stop-address=69636 %t2 | FileCheck -check-prefix=CHECK1 %s
@@ -5,7 +6,6 @@
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi -start-address=16850936 -stop-address=16850940 %t2 | FileCheck -check-prefix=CHECK3 %s
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi -start-address=33628152 -stop-address=33628156 %t2 | FileCheck -check-prefix=CHECK4 %s
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi -start-address=50405356 -stop-address=50405376 %t2 | FileCheck -check-prefix=CHECK5 %s
-// REQUIRES: arm
.syntax unified
.balign 0x1000
.thumb
diff --git a/lld/test/ELF/arm-thunk-linkerscript-dotexpr.s b/lld/test/ELF/arm-thunk-linkerscript-dotexpr.s
index bd0e9a29310..ea741708bc9 100644
--- a/lld/test/ELF/arm-thunk-linkerscript-dotexpr.s
+++ b/lld/test/ELF/arm-thunk-linkerscript-dotexpr.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: echo "SECTIONS { \
// RUN: . = SIZEOF_HEADERS; \
@@ -6,7 +7,6 @@
// RUN: ld.lld --script %t.script %t -o %t2 2>&1
// RUN: llvm-objdump -d %t2 -start-address=148 -stop-address=188 -triple=thumbv7a-linux-gnueabihf | FileCheck -check-prefix=CHECK1 %s
// RUN: llvm-objdump -d %t2 -start-address=33554620 -stop-address=33554654 -triple=thumbv7a-linux-gnueabihf | FileCheck -check-prefix=CHECK2 %s
-// REQUIRES: arm
// Test that range extension thunks can handle location expressions within
// a Section Description
.syntax unified
diff --git a/lld/test/ELF/arm-thunk-linkerscript.s b/lld/test/ELF/arm-thunk-linkerscript.s
index 9aaa29237cb..7728ddf76a9 100644
--- a/lld/test/ELF/arm-thunk-linkerscript.s
+++ b/lld/test/ELF/arm-thunk-linkerscript.s
@@ -1,3 +1,4 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: echo "SECTIONS { \
// RUN: . = SIZEOF_HEADERS; \
@@ -6,7 +7,6 @@
// RUN: } " > %t.script
// RUN: ld.lld --script %t.script %t -o %t2 2>&1
// RUN: llvm-objdump -d -triple=thumbv7a-none-linux-gnueabi %t2 | FileCheck %s
-// REQUIRES: arm
// Simple test that we can support range extension thunks with linker scripts
.syntax unified
.section .text_low, "ax", %progbits
diff --git a/lld/test/ELF/arm-thunk-nosuitable.s b/lld/test/ELF/arm-thunk-nosuitable.s
index 1fac4a535a4..cde790665c4 100644
--- a/lld/test/ELF/arm-thunk-nosuitable.s
+++ b/lld/test/ELF/arm-thunk-nosuitable.s
@@ -1,7 +1,7 @@
+// REQUIRES: ARM
// RUN: llvm-mc %s --arm-add-build-attributes --triple=armv7a-linux-gnueabihf --filetype=obj -o %t.o
// RUN: ld.lld %t.o -o %t
// RUN: llvm-objdump -triple=thumbv7a-linux-gnueabihf -d -start-address=2166784 -stop-address=2166794 %t | FileCheck %s
-// REQUIRES: ARM
// Create a conditional branch too far away from a precreated thunk
// section. This will need a thunk section created within range.
diff --git a/lld/test/ELF/arm-thunk-section-too-large.s b/lld/test/ELF/arm-thunk-section-too-large.s
index 2b2d0d39cb0..268d6c9391f 100644
--- a/lld/test/ELF/arm-thunk-section-too-large.s
+++ b/lld/test/ELF/arm-thunk-section-too-large.s
@@ -1,6 +1,6 @@
+// REQUIRES: ARM
// RUN: llvm-mc %s -triple=armv7a-linux-gnueabihf -arm-add-build-attributes -filetype=obj -o %t.o
// RUN: not ld.lld %t.o -o %t 2>&1 | FileCheck %s
-// REQUIRES: ARM
// CHECK: InputSection too large for range extension thunk
.syntax unified
diff --git a/lld/test/ELF/arm-thunk-toolargesection.s b/lld/test/ELF/arm-thunk-toolargesection.s
index 28fb94a8ccf..a0ad3835874 100644
--- a/lld/test/ELF/arm-thunk-toolargesection.s
+++ b/lld/test/ELF/arm-thunk-toolargesection.s
@@ -1,6 +1,6 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=thumbv7a-none-linux-gnueabi %s -o %t
// RUN: not ld.lld %t -o %t2 2>&1 | FileCheck %s
-// REQUIRES: arm
.syntax unified
.balign 0x1000
.thumb
diff --git a/lld/test/ELF/arm-tls-gd-nonpreemptible.s b/lld/test/ELF/arm-tls-gd-nonpreemptible.s
index ebaad4788c7..e72d422bad8 100644
--- a/lld/test/ELF/arm-tls-gd-nonpreemptible.s
+++ b/lld/test/ELF/arm-tls-gd-nonpreemptible.s
@@ -1,10 +1,10 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: llvm-objdump -s %t2 | FileCheck %s
// RUN: ld.lld --hash-style=sysv %t --shared -o %t3.so
// RUN: llvm-objdump -s %t3.so | FileCheck -check-prefix=CHECK-SHARED %s
-// REQUIRES: arm
// For an executable, we write the module index 1 and the offset into the TLS
// directly into the GOT. For a shared library we can only write the offset
diff --git a/lld/test/ELF/arm-tls-gd32.s b/lld/test/ELF/arm-tls-gd32.s
index a32e26f2aeb..28ef4967aba 100644
--- a/lld/test/ELF/arm-tls-gd32.s
+++ b/lld/test/ELF/arm-tls-gd32.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t.o -o %t.so -shared
// RUN: llvm-readobj -s -dyn-relocations %t.so | FileCheck --check-prefix=SEC %s
// RUN: llvm-objdump -d -triple=armv7a-linux-gnueabi %t.so | FileCheck %s
-// REQUIRES: arm
// Test the handling of the global-dynamic TLS model. Dynamic Loader finds
// module index R_ARM_TLS_DTPMOD32 and the offset within the module
diff --git a/lld/test/ELF/arm-tls-ie32.s b/lld/test/ELF/arm-tls-ie32.s
index 26e1265568c..b12bc1be316 100644
--- a/lld/test/ELF/arm-tls-ie32.s
+++ b/lld/test/ELF/arm-tls-ie32.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t.o -o %t.so -shared
// RUN: llvm-readobj -s -dyn-relocations %t.so | FileCheck --check-prefix=SEC %s
// RUN: llvm-objdump -d -triple=armv7a-linux-gnueabi %t.so | FileCheck %s
-// REQUIRES: arm
// Test the handling of the initial-exec TLS model. Relative location within
// static TLS is a run-time constant computed by dynamic loader as a result
diff --git a/lld/test/ELF/arm-tls-ldm32.s b/lld/test/ELF/arm-tls-ldm32.s
index 629dcd03889..94931d94576 100644
--- a/lld/test/ELF/arm-tls-ldm32.s
+++ b/lld/test/ELF/arm-tls-ldm32.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t.o -o %t.so -shared
// RUN: llvm-readobj -s -dyn-relocations %t.so | FileCheck --check-prefix=SEC %s
// RUN: llvm-objdump -d -triple=armv7a-linux-gnueabi %t.so | FileCheck %s
-// REQUIRES: arm
// Test the handling of the local-dynamic TLS model. Dynamic loader finds
// module index R_ARM_TLS_DTPMOD32. The offset in the next GOT slot is 0
diff --git a/lld/test/ELF/arm-tls-le32.s b/lld/test/ELF/arm-tls-le32.s
index 4d42a06b0ff..7834dedf1be 100644
--- a/lld/test/ELF/arm-tls-le32.s
+++ b/lld/test/ELF/arm-tls-le32.s
@@ -1,8 +1,8 @@
+// REQUIRES: arm
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld %t.o -o %t
// RUN: llvm-readobj -s -dyn-relocations %t | FileCheck --check-prefix=SEC %s
// RUN: llvm-objdump -d -triple=armv7a-linux-gnueabi %t | FileCheck %s
-// REQUIRES: arm
// Test the handling of the local exec TLS model. TLS can be resolved
// statically for an application. The code sequences assume a thread pointer
diff --git a/lld/test/ELF/arm-tls-norelax-gd-ie.s b/lld/test/ELF/arm-tls-norelax-gd-ie.s
index bcee5616595..ba60521520f 100644
--- a/lld/test/ELF/arm-tls-norelax-gd-ie.s
+++ b/lld/test/ELF/arm-tls-norelax-gd-ie.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %p/Inputs/arm-tls-get-addr.s -o %t1
// RUN: ld.lld %t1 --shared -o %t1.so
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t1.so %t.o -o %t
// RUN: llvm-readobj -s -dyn-relocations %t | FileCheck %s
-// REQUIRES: arm
// This tls global-dynamic sequence is with respect to a preemptible symbol but
// is in an application so a relaxation to Initial Exec would normally be
diff --git a/lld/test/ELF/arm-tls-norelax-gd-le.s b/lld/test/ELF/arm-tls-norelax-gd-le.s
index 788c845b3f8..f1e78c4c76b 100644
--- a/lld/test/ELF/arm-tls-norelax-gd-le.s
+++ b/lld/test/ELF/arm-tls-norelax-gd-le.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %p/Inputs/arm-tls-get-addr.s -o %t1
// RUN: ld.lld %t1 --shared -o %t1.so
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t1.so %t.o -o %t
// RUN: llvm-objdump -s %t | FileCheck %s
-// REQUIRES: arm
// This tls global-dynamic sequence is with respect to a non-preemptible
// symbol in an application so a relaxation to Local Exec would normally be
diff --git a/lld/test/ELF/arm-tls-norelax-ie-le.s b/lld/test/ELF/arm-tls-norelax-ie-le.s
index eb96aa0fad5..be8af976048 100644
--- a/lld/test/ELF/arm-tls-norelax-ie-le.s
+++ b/lld/test/ELF/arm-tls-norelax-ie-le.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %p/Inputs/arm-tls-get-addr.s -o %t1
// RUN: ld.lld %t1 --shared -o %t1.so
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t1.so %t.o -o %t
// RUN: llvm-objdump -s -triple=armv7a-linux-gnueabi %t | FileCheck %s
-// REQUIRES: arm
// This tls Initial Exec sequence is with respect to a non-preemptible symbol
// so a relaxation would normally be possible. This would result in an assertion
diff --git a/lld/test/ELF/arm-tls-norelax-ld-le.s b/lld/test/ELF/arm-tls-norelax-ld-le.s
index fc5b72b80f9..ce0697ad904 100644
--- a/lld/test/ELF/arm-tls-norelax-ld-le.s
+++ b/lld/test/ELF/arm-tls-norelax-ld-le.s
@@ -1,9 +1,9 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %p/Inputs/arm-tls-get-addr.s -o %t1
// RUN: ld.lld %t1 --shared -o %t1.so
// RUN: llvm-mc %s -o %t.o -filetype=obj -triple=armv7a-linux-gnueabi
// RUN: ld.lld --hash-style=sysv %t1.so %t.o -o %t
// RUN: llvm-objdump -s %t | FileCheck %s
-// REQUIRES: arm
.global __tls_get_addr
.text
diff --git a/lld/test/ELF/arm-undefined-weak.s b/lld/test/ELF/arm-undefined-weak.s
index 8af9f4916a9..0d4714a5483 100644
--- a/lld/test/ELF/arm-undefined-weak.s
+++ b/lld/test/ELF/arm-undefined-weak.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-none-linux-gnueabi %s -o %t
// RUN: ld.lld %t -o %t2 2>&1
// RUN: llvm-objdump -triple=armv7a-none-linux-gnueabi -d %t2 | FileCheck %s
-// REQUIRES: arm
// Check that the ARM ABI rules for undefined weak symbols are applied.
// Branch instructions are resolved to the next instruction. Undefined
diff --git a/lld/test/ELF/bss.s b/lld/test/ELF/bss.s
index abd7f2e564d..d35449828ae 100644
--- a/lld/test/ELF/bss.s
+++ b/lld/test/ELF/bss.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-readobj -sections %t2 | FileCheck %s
-// REQUIRES: x86
// Test that bss takes no space on disk.
diff --git a/lld/test/ELF/comdat.s b/lld/test/ELF/comdat.s
index 7bf2ce5bab6..4728dd34af5 100644
--- a/lld/test/ELF/comdat.s
+++ b/lld/test/ELF/comdat.s
@@ -1,9 +1,9 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/comdat.s -o %t2.o
// RUN: ld.lld -shared %t.o %t.o %t2.o -o %t
// RUN: llvm-objdump -d %t | FileCheck %s
// RUN: llvm-readobj -s -t %t | FileCheck --check-prefix=READ %s
-// REQUIRES: x86
// Check that we don't crash with --gc-section and that we print a list of
// reclaimed sections on stderr.
diff --git a/lld/test/ELF/common.s b/lld/test/ELF/common.s
index 7f241ee4d65..da6657173bf 100644
--- a/lld/test/ELF/common.s
+++ b/lld/test/ELF/common.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/common.s -o %t2
// RUN: ld.lld %t %t2 -o %t3
// RUN: llvm-readobj -t -s %t3 | FileCheck %s
-// REQUIRES: x86
// CHECK: Name: .bss
// CHECK-NEXT: Type: SHT_NOBITS
diff --git a/lld/test/ELF/ctors_dtors_priority.s b/lld/test/ELF/ctors_dtors_priority.s
index fcddcbb020f..203bf247aa3 100644
--- a/lld/test/ELF/ctors_dtors_priority.s
+++ b/lld/test/ELF/ctors_dtors_priority.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t1
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux \
// RUN: %p/Inputs/ctors_dtors_priority1.s -o %t-crtbegin.o
@@ -7,7 +8,6 @@
// RUN: %p/Inputs/ctors_dtors_priority3.s -o %t-crtend.o
// RUN: ld.lld %t1 %t2 %t-crtend.o %t-crtbegin.o -o %t.exe
// RUN: llvm-objdump -s %t.exe | FileCheck %s
-// REQUIRES: x86
.globl _start
_start:
diff --git a/lld/test/ELF/discard-locals.s b/lld/test/ELF/discard-locals.s
index 9deaccff11c..50cf5a04e98 100644
--- a/lld/test/ELF/discard-locals.s
+++ b/lld/test/ELF/discard-locals.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux -save-temp-labels %s -o %t
// RUN: ld.lld -discard-locals %t -o %t2
// RUN: llvm-readobj -s -sd -t %t2 | FileCheck %s
-// REQUIRES: x86
.global _start
_start:
diff --git a/lld/test/ELF/discard-merge-locals.s b/lld/test/ELF/discard-merge-locals.s
index 01b4d337cb2..20be35c6e4e 100644
--- a/lld/test/ELF/discard-merge-locals.s
+++ b/lld/test/ELF/discard-merge-locals.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %t -o %t2 -shared
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: x86
leaq .L.str(%rip), %rdi
diff --git a/lld/test/ELF/discard-none.s b/lld/test/ELF/discard-none.s
index 89e06fd7b7e..4a42639c63f 100644
--- a/lld/test/ELF/discard-none.s
+++ b/lld/test/ELF/discard-none.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux -save-temp-labels %s -o %t
// RUN: ld.lld -discard-none -shared %t -o %t2
// RUN: llvm-readobj -s -sd -t %t2 | FileCheck %s
-// REQUIRES: x86
.text
.Lmyvar:
diff --git a/lld/test/ELF/dynamic-reloc-weak.s b/lld/test/ELF/dynamic-reloc-weak.s
index b4da2e552e1..8e4840bb4c4 100644
--- a/lld/test/ELF/dynamic-reloc-weak.s
+++ b/lld/test/ELF/dynamic-reloc-weak.s
@@ -1,9 +1,9 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/dynamic-reloc-weak.s -o %t2.o
// RUN: ld.lld -shared %t2.o -o %t2.so
// RUN: ld.lld %t.o %t2.so -o %t
// RUN: llvm-readobj -r %t | FileCheck %s
-// REQUIRES: x86
.globl _start
_start:
diff --git a/lld/test/ELF/dynamic-reloc.s b/lld/test/ELF/dynamic-reloc.s
index 4d95e41fb80..3a957ac0d05 100644
--- a/lld/test/ELF/dynamic-reloc.s
+++ b/lld/test/ELF/dynamic-reloc.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t2.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/dynamic-reloc.s -o %t3.o
// RUN: ld.lld -shared %t2.o -o %t2.so
// RUN: ld.lld --hash-style=sysv %t.o %t3.o %t2.so -o %t
// RUN: llvm-readobj -dynamic-table -r --expand-relocs -s %t | FileCheck %s
-// REQUIRES: x86
// CHECK: Index: 1
// CHECK-NEXT: Name: .dynsym
diff --git a/lld/test/ELF/end-preserve.s b/lld/test/ELF/end-preserve.s
index 71d86d1c8fa..d25170605cb 100644
--- a/lld/test/ELF/end-preserve.s
+++ b/lld/test/ELF/end-preserve.s
@@ -1,5 +1,5 @@
-// Should preserve the value of the "end" symbol if it is defined.
// REQUIRES: x86
+// Should preserve the value of the "end" symbol if it is defined.
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: ld.lld %t.o -o %t
diff --git a/lld/test/ELF/end-update.s b/lld/test/ELF/end-update.s
index afb137fd2d7..9ece23ce9ac 100644
--- a/lld/test/ELF/end-update.s
+++ b/lld/test/ELF/end-update.s
@@ -1,5 +1,5 @@
-// Should set the value of the "end" symbol if it is undefined.
// REQUIRES: x86
+// Should set the value of the "end" symbol if it is undefined.
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: ld.lld %t.o -o %t
diff --git a/lld/test/ELF/end.s b/lld/test/ELF/end.s
index f40c5db8b5f..530a0078370 100644
--- a/lld/test/ELF/end.s
+++ b/lld/test/ELF/end.s
@@ -1,5 +1,5 @@
-// Should set the value of the "_end" symbol to the end of the data segment.
// REQUIRES: x86
+// Should set the value of the "_end" symbol to the end of the data segment.
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
diff --git a/lld/test/ELF/gc-sections-local-sym.s b/lld/test/ELF/gc-sections-local-sym.s
index 89121e289cc..15bca37ca40 100644
--- a/lld/test/ELF/gc-sections-local-sym.s
+++ b/lld/test/ELF/gc-sections-local-sym.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: ld.lld %t -o %t2 -shared --gc-sections
// RUN: llvm-readobj -t -s -section-data %t2 | FileCheck %s
-// REQUIRES: x86
.global foo
foo:
diff --git a/lld/test/ELF/global-offset-table-position-aarch64.s b/lld/test/ELF/global-offset-table-position-aarch64.s
index 8e26913dc73..7fdc7978825 100644
--- a/lld/test/ELF/global-offset-table-position-aarch64.s
+++ b/lld/test/ELF/global-offset-table-position-aarch64.s
@@ -1,7 +1,7 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-linux-gnu %s -o %t
// RUN: ld.lld --hash-style=sysv -shared %t -o %t2
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: aarch64
.globl a
.type a,@object
.comm a,4,4
diff --git a/lld/test/ELF/global-offset-table-position-arm.s b/lld/test/ELF/global-offset-table-position-arm.s
index 19619b2cc9e..9abca8b4631 100644
--- a/lld/test/ELF/global-offset-table-position-arm.s
+++ b/lld/test/ELF/global-offset-table-position-arm.s
@@ -1,7 +1,7 @@
+// REQUIRES: arm
// RUN: llvm-mc -filetype=obj -triple=armv7a-linux-gnueabihf %s -o %t
// RUN: ld.lld --hash-style=sysv -shared %t -o %t2
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: arm
// The ARM _GLOBAL_OFFSET_TABLE_ should be defined at the start of the .got
.globl a
diff --git a/lld/test/ELF/global-offset-table-position-i386.s b/lld/test/ELF/global-offset-table-position-i386.s
index 8d50b4990e9..e3d34342701 100644
--- a/lld/test/ELF/global-offset-table-position-i386.s
+++ b/lld/test/ELF/global-offset-table-position-i386.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i386-pc-linux %s -o %t
// RUN: ld.lld --hash-style=sysv -shared %t -o %t2
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: x86
// The X86 _GLOBAL_OFFSET_TABLE_ is defined at the start of the .got.plt
// section.
diff --git a/lld/test/ELF/global-offset-table-position-mips.s b/lld/test/ELF/global-offset-table-position-mips.s
index 92daed1c791..a5577f2e142 100644
--- a/lld/test/ELF/global-offset-table-position-mips.s
+++ b/lld/test/ELF/global-offset-table-position-mips.s
@@ -1,9 +1,8 @@
+// REQUIRES: mips
// RUN: llvm-mc -filetype=obj -triple=mips64-unknown-linux %s -o %t
// RUN: ld.lld -shared %t -o %t2
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: mips
-
// The Mips _GLOBAL_OFFSET_TABLE_ should be defined at the start of the .got
.globl a
diff --git a/lld/test/ELF/global-offset-table-position.s b/lld/test/ELF/global-offset-table-position.s
index 57fe6c804d7..aa808365403 100644
--- a/lld/test/ELF/global-offset-table-position.s
+++ b/lld/test/ELF/global-offset-table-position.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld --hash-style=sysv -shared %t -o %t2
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: x86
// The X86_64 _GLOBAL_OFFSET_TABLE_ is defined at the start of the .got.plt
// section.
diff --git a/lld/test/ELF/gnu-ifunc-i386.s b/lld/test/ELF/gnu-ifunc-i386.s
index 4eda32f378d..f379bf1b28e 100644
--- a/lld/test/ELF/gnu-ifunc-i386.s
+++ b/lld/test/ELF/gnu-ifunc-i386.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-readobj -r -symbols -sections %tout | FileCheck %s
-// REQUIRES: x86
// CHECK: Sections [
// CHECK: Section {
diff --git a/lld/test/ELF/gnu-ifunc-nosym-i386.s b/lld/test/ELF/gnu-ifunc-nosym-i386.s
index d22cedbfe6d..564b87e23b3 100644
--- a/lld/test/ELF/gnu-ifunc-nosym-i386.s
+++ b/lld/test/ELF/gnu-ifunc-nosym-i386.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-readobj -symbols %tout | FileCheck %s
-// REQUIRES: x86
// Check that no __rel_iplt_end/__rel_iplt_start
// appear in symtab if there is no references to them.
diff --git a/lld/test/ELF/gnu-ifunc-nosym.s b/lld/test/ELF/gnu-ifunc-nosym.s
index 08e498e97c1..4206f57d136 100644
--- a/lld/test/ELF/gnu-ifunc-nosym.s
+++ b/lld/test/ELF/gnu-ifunc-nosym.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-readobj -symbols %tout | FileCheck %s
-// REQUIRES: x86
// Check that no __rela_iplt_end/__rela_iplt_start
// appear in symtab if there is no references to them.
diff --git a/lld/test/ELF/gnu-ifunc-plt-i386.s b/lld/test/ELF/gnu-ifunc-plt-i386.s
index d0d21e7125d..14369bf6388 100644
--- a/lld/test/ELF/gnu-ifunc-plt-i386.s
+++ b/lld/test/ELF/gnu-ifunc-plt-i386.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %S/Inputs/shared2-x86-64.s -o %t1.o
// RUN: ld.lld %t1.o --shared -o %t.so
// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t.o
@@ -5,7 +6,6 @@
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-objdump -s %tout | FileCheck %s --check-prefix=GOTPLT
// RUN: llvm-readobj -r -dynamic-table %tout | FileCheck %s
-// REQUIRES: x86
// Check that the IRELATIVE relocations are after the JUMP_SLOT in the plt
// CHECK: Relocations [
diff --git a/lld/test/ELF/gnu-ifunc-plt.s b/lld/test/ELF/gnu-ifunc-plt.s
index 88a09931853..b88f32cb730 100644
--- a/lld/test/ELF/gnu-ifunc-plt.s
+++ b/lld/test/ELF/gnu-ifunc-plt.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/shared2-x86-64.s -o %t1.o
// RUN: ld.lld %t1.o --shared -o %t.so
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
@@ -5,7 +6,6 @@
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-objdump -s %tout | FileCheck %s --check-prefix=GOTPLT
// RUN: llvm-readobj -r -dynamic-table %tout | FileCheck %s
-// REQUIRES: x86
// Check that the IRELATIVE relocations are after the JUMP_SLOT in the plt
// CHECK: Relocations [
diff --git a/lld/test/ELF/gnu-ifunc-relative.s b/lld/test/ELF/gnu-ifunc-relative.s
index dc35102c578..d797301d03a 100644
--- a/lld/test/ELF/gnu-ifunc-relative.s
+++ b/lld/test/ELF/gnu-ifunc-relative.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-readobj -r -t %tout | FileCheck %s
-// REQUIRES: x86
.type foo STT_GNU_IFUNC
.globl foo
diff --git a/lld/test/ELF/gnu-ifunc.s b/lld/test/ELF/gnu-ifunc.s
index 4911da6bce0..faf51b4b621 100644
--- a/lld/test/ELF/gnu-ifunc.s
+++ b/lld/test/ELF/gnu-ifunc.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: ld.lld -static %t.o -o %tout
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix=DISASM
// RUN: llvm-readobj -r -symbols -sections %tout | FileCheck %s
-// REQUIRES: x86
// CHECK: Sections [
// CHECK: Section {
diff --git a/lld/test/ELF/got-aarch64.s b/lld/test/ELF/got-aarch64.s
index f46946c9f4a..c9e20276472 100644
--- a/lld/test/ELF/got-aarch64.s
+++ b/lld/test/ELF/got-aarch64.s
@@ -1,8 +1,8 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-unknown-linux %s -o %t.o
// RUN: ld.lld --hash-style=sysv -shared %t.o -o %t.so
// RUN: llvm-readobj -s -r %t.so | FileCheck %s
// RUN: llvm-objdump -d %t.so | FileCheck --check-prefix=DISASM %s
-// REQUIRES: aarch64
// CHECK: Name: .got
// CHECK-NEXT: Type: SHT_PROGBITS
diff --git a/lld/test/ELF/got-i386.s b/lld/test/ELF/got-i386.s
index 679eb2e4f5c..7fb87e0dadb 100644
--- a/lld/test/ELF/got-i386.s
+++ b/lld/test/ELF/got-i386.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %s -o %t.o
// RUN: ld.lld %t.o -o %t
// RUN: llvm-readobj -s -r -t %t | FileCheck %s
// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASM %s
-// REQUIRES: x86
// CHECK: Name: .got
// CHECK-NEXT: Type: SHT_PROGBITS
diff --git a/lld/test/ELF/got.s b/lld/test/ELF/got.s
index f67ea13d3f4..9d2d804454b 100644
--- a/lld/test/ELF/got.s
+++ b/lld/test/ELF/got.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t2.o
// RUN: ld.lld -shared %t2.o -o %t2.so
// RUN: ld.lld --hash-style=sysv %t.o %t2.so -o %t
// RUN: llvm-readobj -s -r %t | FileCheck %s
// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASM %s
-// REQUIRES: x86
// CHECK: Name: .got
// CHECK-NEXT: Type: SHT_PROGBITS
diff --git a/lld/test/ELF/incompatible-ar-first.s b/lld/test/ELF/incompatible-ar-first.s
index 02d14e87a69..abaa53492c1 100644
--- a/lld/test/ELF/incompatible-ar-first.s
+++ b/lld/test/ELF/incompatible-ar-first.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/archive.s -o %ta.o
// RUN: llvm-ar rc %t.a %ta.o
// RUN: llvm-mc -filetype=obj -triple=i686-linux %s -o %tb.o
@@ -8,4 +9,3 @@
// * -m was not used.
// CHECK: .a({{.*}}a.o) is incompatible with {{.*}}b.o
-// REQUIRES: x86
diff --git a/lld/test/ELF/incompatible.s b/lld/test/ELF/incompatible.s
index 9054293d245..44c5b4bfcbf 100644
--- a/lld/test/ELF/incompatible.s
+++ b/lld/test/ELF/incompatible.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86,aarch64
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %ta.o
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %s -o %tb.o
// RUN: ld.lld -shared %tb.o -o %ti686.so
@@ -56,4 +57,3 @@ _start:
.data
.long foo
-// REQUIRES: x86,aarch64
diff --git a/lld/test/ELF/init_fini_priority.s b/lld/test/ELF/init_fini_priority.s
index b10b925063e..17003ce30df 100644
--- a/lld/test/ELF/init_fini_priority.s
+++ b/lld/test/ELF/init_fini_priority.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: llvm-objdump -section-headers %t | FileCheck %s --check-prefix=OBJ
// RUN: ld.lld %t -o %t.exe
// RUN: llvm-objdump -s %t.exe | FileCheck %s
-// REQUIRES: x86
// OBJ: 3 .init_array
// OBJ-NEXT: 4 .init_array.100
diff --git a/lld/test/ELF/libsearch.s b/lld/test/ELF/libsearch.s
index d21baf9dd95..246a5d13951 100644
--- a/lld/test/ELF/libsearch.s
+++ b/lld/test/ELF/libsearch.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux \
// RUN: %p/Inputs/libsearch-dyn.s -o %tdyn.o
@@ -10,7 +11,6 @@
// RUN: cp -f %t.dir/libls.so %t.dir/libls2.so
// RUN: rm -f %t.dir/libls.a
// RUN: llvm-ar rcs %t.dir/libls.a %tst.o
-// REQUIRES: x86
// Should fail if no library specified
// RUN: not ld.lld -l 2>&1 \
diff --git a/lld/test/ELF/local-dynamic.s b/lld/test/ELF/local-dynamic.s
index 797a1071311..c122074fd7d 100644
--- a/lld/test/ELF/local-dynamic.s
+++ b/lld/test/ELF/local-dynamic.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// Check that local symbols are not inserted into dynamic table.
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %t -shared -o %t1.so
// RUN: llvm-readobj -t -dyn-symbols %t1.so | FileCheck %s
-// REQUIRES: x86
// CHECK: Symbols [
// CHECK-NEXT: Symbol {
diff --git a/lld/test/ELF/local.s b/lld/test/ELF/local.s
index 983d7ff7ba6..cb9adc86485 100644
--- a/lld/test/ELF/local.s
+++ b/lld/test/ELF/local.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// Check that symbol table is correctly populated with local symbols.
// RUN: llvm-mc -save-temp-labels -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %t -o %t1
// RUN: llvm-readobj -t -s %t1 | FileCheck %s
-// REQUIRES: x86
// Check that Info is equal to the number of local symbols.
// CHECK: Section {
diff --git a/lld/test/ELF/merge-string-empty.s b/lld/test/ELF/merge-string-empty.s
index 0b82ce700a2..7d0eba80dd2 100644
--- a/lld/test/ELF/merge-string-empty.s
+++ b/lld/test/ELF/merge-string-empty.s
@@ -1,6 +1,6 @@
+// REQUIRES: x86
// Ensure that a mergeable string with size 0 does not cause any issue.
-// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: ld.lld %t.o -o %t
diff --git a/lld/test/ELF/no-augmentation.s b/lld/test/ELF/no-augmentation.s
index 31cd92e39b1..a4306ab7e3d 100644
--- a/lld/test/ELF/no-augmentation.s
+++ b/lld/test/ELF/no-augmentation.s
@@ -1,8 +1,7 @@
+// REQUIRES: mips
// RUN: llvm-mc -filetype=obj -triple=mips64-unknown-freebsd %s -o %t.o
// RUN: ld.lld --eh-frame-hdr %t.o -o %t | FileCheck -allow-empty %s
-// REQUIRES: mips
-
// CHECK-NOT: corrupted or unsupported CIE information
// CHECK-NOT: corrupted CIE
diff --git a/lld/test/ELF/output-section.s b/lld/test/ELF/output-section.s
index 68505254686..2a119d99821 100644
--- a/lld/test/ELF/output-section.s
+++ b/lld/test/ELF/output-section.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-readobj -t %t2 | FileCheck %s
-// REQUIRES: x86
// CHECK: Symbol {
// CHECK: Name: bar_sym
diff --git a/lld/test/ELF/plt-aarch64.s b/lld/test/ELF/plt-aarch64.s
index 372186b4b1f..8f637bf593f 100644
--- a/lld/test/ELF/plt-aarch64.s
+++ b/lld/test/ELF/plt-aarch64.s
@@ -1,3 +1,4 @@
+// REQUIRES: aarch64
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=aarch64-pc-freebsd %p/Inputs/plt-aarch64.s -o %t2.o
// RUN: ld.lld -shared %t2.o -o %t2.so
@@ -10,8 +11,6 @@
// RUN: llvm-objdump -s -section=.got.plt %t.exe | FileCheck --check-prefix=DUMPEXE %s
// RUN: llvm-objdump -d %t.exe | FileCheck --check-prefix=DISASMEXE %s
-// REQUIRES: aarch64
-
// CHECKDSO: Name: .plt
// CHECKDSO-NEXT: Type: SHT_PROGBITS
// CHECKDSO-NEXT: Flags [
diff --git a/lld/test/ELF/plt-i686.s b/lld/test/ELF/plt-i686.s
index 9a2c7f53dc5..c24cab20e76 100644
--- a/lld/test/ELF/plt-i686.s
+++ b/lld/test/ELF/plt-i686.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %p/Inputs/shared.s -o %t2.o
// RUN: ld.lld -shared %t2.o -o %t2.so
@@ -9,7 +10,6 @@
// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASMSHARED %s
// RUN: ld.lld -pie %t.o %t2.so -o %t
// RUN: llvm-objdump -d %t | FileCheck --check-prefix=DISASMPIE %s
-// REQUIRES: x86
// CHECK: Name: .plt
// CHECK-NEXT: Type: SHT_PROGBITS
diff --git a/lld/test/ELF/plt.s b/lld/test/ELF/plt.s
index 4ab81aaaed9..cce60d73206 100644
--- a/lld/test/ELF/plt.s
+++ b/lld/test/ELF/plt.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t2.o
// RUN: ld.lld -shared %t2.o -o %t2.so
@@ -8,8 +9,6 @@
// RUN: llvm-readobj -s -r %t3 | FileCheck --check-prefix=CHECK2 %s
// RUN: llvm-objdump -d %t3 | FileCheck --check-prefix=DISASM2 %s
-// REQUIRES: x86
-
// CHECK: Name: .plt
// CHECK-NEXT: Type: SHT_PROGBITS
// CHECK-NEXT: Flags [
diff --git a/lld/test/ELF/pre_init_fini_array.s b/lld/test/ELF/pre_init_fini_array.s
index 1192fd0dc85..cf716ab681e 100644
--- a/lld/test/ELF/pre_init_fini_array.s
+++ b/lld/test/ELF/pre_init_fini_array.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t2
// RUN: ld.lld %t2 -o %t2.so -shared
// RUN: ld.lld %t %t2.so -o %t2
// RUN: llvm-readobj -r -symbols -sections -dynamic-table %t2 | FileCheck %s
// RUN: llvm-objdump -d %t2 | FileCheck --check-prefix=DISASM %s
-// REQUIRES: x86
.globl _start
_start:
diff --git a/lld/test/ELF/pre_init_fini_array_missing.s b/lld/test/ELF/pre_init_fini_array_missing.s
index 4a6b612405f..d5b998443a2 100644
--- a/lld/test/ELF/pre_init_fini_array_missing.s
+++ b/lld/test/ELF/pre_init_fini_array_missing.s
@@ -1,9 +1,9 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-objdump -d %t2 | FileCheck %s
// RUN: ld.lld -pie %t -o %t3
// RUN: llvm-objdump -d %t3 | FileCheck --check-prefix=PIE %s
-// REQUIRES: x86
.globl _start
_start:
diff --git a/lld/test/ELF/relative-dynamic-reloc-ppc64.s b/lld/test/ELF/relative-dynamic-reloc-ppc64.s
index 99c2457b33f..83190a27004 100644
--- a/lld/test/ELF/relative-dynamic-reloc-ppc64.s
+++ b/lld/test/ELF/relative-dynamic-reloc-ppc64.s
@@ -1,3 +1,4 @@
+// REQUIRES: ppc
// RUN: llvm-mc -filetype=obj -triple=powerpc64le-unknown-linux %s -o %t.o
// RUN: ld.lld -shared %t.o -o %t.so
// RUN: llvm-readobj -t -r -dyn-symbols %t.so | FileCheck %s
@@ -6,8 +7,6 @@
// RUN: ld.lld -shared %t.o -o %t.so
// RUN: llvm-readobj -t -r -dyn-symbols %t.so | FileCheck %s
-// REQUIRES: ppc
-
// Test that we create R_PPC64_RELATIVE relocations but don't put any
// symbols in the dynamic symbol table.
diff --git a/lld/test/ELF/relocation-absolute.s b/lld/test/ELF/relocation-absolute.s
index 20d54eca920..b882987bb69 100644
--- a/lld/test/ELF/relocation-absolute.s
+++ b/lld/test/ELF/relocation-absolute.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/abs.s -o %tabs
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %tabs %t -o %tout
// RUN: llvm-objdump -d %tout | FileCheck %s
-// REQUIRES: x86
.global _start
_start:
diff --git a/lld/test/ELF/relocation-common.s b/lld/test/ELF/relocation-common.s
index 28276bfe075..71b1ac0e2e2 100644
--- a/lld/test/ELF/relocation-common.s
+++ b/lld/test/ELF/relocation-common.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %t -o %tout
// RUN: llvm-objdump -t -d %tout | FileCheck %s
-// REQUIRES: x86
.global _start
_start:
diff --git a/lld/test/ELF/relocation-i686.s b/lld/test/ELF/relocation-i686.s
index 3986357d66f..fdec7caa33b 100644
--- a/lld/test/ELF/relocation-i686.s
+++ b/lld/test/ELF/relocation-i686.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-pc-linux %s -o %t
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %p/Inputs/shared.s -o %t2.o
// RUN: ld.lld -shared %t2.o -o %t2.so
// RUN: ld.lld --hash-style=sysv %t %t2.so -o %t2
// RUN: llvm-readobj -s %t2 | FileCheck --check-prefix=ADDR %s
// RUN: llvm-objdump -d %t2 | FileCheck %s
-// REQUIRES: x86
.global _start
_start:
diff --git a/lld/test/ELF/relocation-local.s b/lld/test/ELF/relocation-local.s
index 8173dac0522..383c5c82f64 100644
--- a/lld/test/ELF/relocation-local.s
+++ b/lld/test/ELF/relocation-local.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// Test that relocation of local symbols is working.
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-objdump -s -d %t2 | FileCheck %s
-// REQUIRES: x86
.global _start
diff --git a/lld/test/ELF/relocation-undefined-weak.s b/lld/test/ELF/relocation-undefined-weak.s
index 6aa84ec483f..7ea247fd5d6 100644
--- a/lld/test/ELF/relocation-undefined-weak.s
+++ b/lld/test/ELF/relocation-undefined-weak.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: ld.lld %t -o %tout
// RUN: llvm-readobj -sections %tout | FileCheck %s
// RUN: llvm-objdump -d %tout | FileCheck %s --check-prefix DISASM
-// REQUIRES: x86
// Check that undefined weak symbols are treated as having a VA of 0.
diff --git a/lld/test/ELF/relocation.s b/lld/test/ELF/relocation.s
index 22f3130c35b..00b75d25f96 100644
--- a/lld/test/ELF/relocation.s
+++ b/lld/test/ELF/relocation.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/shared.s -o %t2
// RUN: ld.lld %t2 -soname fixed-length-string.so -o %t2.so -shared
// RUN: ld.lld --hash-style=sysv %t %t2.so -o %t3
// RUN: llvm-readobj -s %t3 | FileCheck --check-prefix=SEC %s
// RUN: llvm-objdump -s -d %t3 | FileCheck %s
-// REQUIRES: x86
// SEC: Name: .plt
// SEC-NEXT: Type: SHT_PROGBITS
diff --git a/lld/test/ELF/relro-non-contiguous.s b/lld/test/ELF/relro-non-contiguous.s
index ce6680860ed..8fdf64a3745 100644
--- a/lld/test/ELF/relro-non-contiguous.s
+++ b/lld/test/ELF/relro-non-contiguous.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/shared.s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/copy-in-shared.s -o %t2.o
// RUN: ld.lld -shared %t.o %t2.o -o %t.so
@@ -15,7 +16,6 @@
// RUN: not ld.lld %t3.o %t.so -z relro -o %t --script=%t.script 2>&1 | FileCheck %s
// No error when we do not request relro.
// RUN: ld.lld %t3.o %t.so -z norelro -o %t --script=%t.script
-// REQUIRES: x86
// CHECK: error: section: .bss.rel.ro is not contiguous with other relro sections
.section .text, "ax", @progbits
diff --git a/lld/test/ELF/reproduce.s b/lld/test/ELF/reproduce.s
index 94371e42017..bfab2e87e80 100644
--- a/lld/test/ELF/reproduce.s
+++ b/lld/test/ELF/reproduce.s
@@ -1,5 +1,5 @@
-# REQUIRES: shell
# REQUIRES: x86
+# REQUIRES: shell
# Extracting the tar archive can get over the path limit on windows.
diff --git a/lld/test/ELF/resolution-shared.s b/lld/test/ELF/resolution-shared.s
index e1eac070e5a..2d61d268c6f 100644
--- a/lld/test/ELF/resolution-shared.s
+++ b/lld/test/ELF/resolution-shared.s
@@ -1,9 +1,9 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/resolution-shared.s -o %t2.o
// RUN: ld.lld %t2.o -o %t2.so -shared
// RUN: ld.lld %t.o %t2.so -o %t3 -shared
// RUN: llvm-readobj -t %t3 | FileCheck %s
-// REQUIRES: x86
.weak foo
foo:
diff --git a/lld/test/ELF/resolution.s b/lld/test/ELF/resolution.s
index 4a42d941eab..f72f487e68e 100644
--- a/lld/test/ELF/resolution.s
+++ b/lld/test/ELF/resolution.s
@@ -1,8 +1,8 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %p/Inputs/resolution.s -o %t2
// RUN: ld.lld -discard-all %t %t2 -o %t3
// RUN: llvm-readobj -t %t3 | FileCheck %s
-// REQUIRES: x86
// This is an exhaustive test for checking which symbol is kept when two
// have the same name. Each symbol has a different size which is used
diff --git a/lld/test/ELF/shared.s b/lld/test/ELF/shared.s
index 79e33ca0e1b..3a8fedec924 100644
--- a/lld/test/ELF/shared.s
+++ b/lld/test/ELF/shared.s
@@ -1,3 +1,4 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %s -o %t.o
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-linux %p/Inputs/shared.s -o %t2.o
// RUN: ld.lld --hash-style=sysv -shared %t2.o -o %t2.so
@@ -6,7 +7,6 @@
// RUN: llvm-readobj --program-headers --dynamic-table -t -s -dyn-symbols -section-data -hash-table %t | FileCheck %s
// RUN: ld.lld --hash-style=sysv %t.o %t2.so %t2.so -o %t2
// RUN: llvm-readobj -dyn-symbols %t2 | FileCheck --check-prefix=DONT_EXPORT %s
-// REQUIRES: x86
// Make sure .symtab is properly aligned.
// SO: Name: .symtab
diff --git a/lld/test/ELF/static-with-export-dynamic.s b/lld/test/ELF/static-with-export-dynamic.s
index 8634835d9aa..f0c67df2262 100644
--- a/lld/test/ELF/static-with-export-dynamic.s
+++ b/lld/test/ELF/static-with-export-dynamic.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=i686-unknown-cloudabi %s -o %t.o
// RUN: ld.lld --export-dynamic %t.o -o %t
// RUN: llvm-readobj -dyn-symbols %t | FileCheck %s
-// REQUIRES: x86
// Ensure that a dynamic symbol table is present when --export-dynamic
// is passed in, even when creating statically linked executables.
diff --git a/lld/test/ELF/string-table.s b/lld/test/ELF/string-table.s
index 490c4d574cf..2a975501d95 100644
--- a/lld/test/ELF/string-table.s
+++ b/lld/test/ELF/string-table.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-readobj -sections %t2 | FileCheck %s
-// REQUIRES: x86
.global _start
_start:
diff --git a/lld/test/ELF/symbols.s b/lld/test/ELF/symbols.s
index 54dfcbd087c..e87b6438494 100644
--- a/lld/test/ELF/symbols.s
+++ b/lld/test/ELF/symbols.s
@@ -1,7 +1,7 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t
// RUN: ld.lld %t -o %t2
// RUN: llvm-readobj -symbols -sections %t2 | FileCheck %s
-// REQUIRES: x86
.type _start, @function
.globl _start
diff --git a/lld/test/ELF/sysroot.s b/lld/test/ELF/sysroot.s
index 6b40c7d3952..e9d6862b7a3 100644
--- a/lld/test/ELF/sysroot.s
+++ b/lld/test/ELF/sysroot.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: mkdir -p %t/lib
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t/m.o
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux \
// RUN: %p/Inputs/libsearch-st.s -o %t/st.o
// RUN: rm -f %t/lib/libls.a
// RUN: llvm-ar rcs %t/lib/libls.a %t/st.o
-// REQUIRES: x86
// Should not link because of undefined symbol _bar
// RUN: not ld.lld -o %t/r %t/m.o 2>&1 \
diff --git a/lld/test/ELF/tls-static.s b/lld/test/ELF/tls-static.s
index 338d95c817e..3e1aead01a3 100644
--- a/lld/test/ELF/tls-static.s
+++ b/lld/test/ELF/tls-static.s
@@ -1,10 +1,10 @@
+// REQUIRES: x86
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t
// RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %S/Inputs/shared.s -o %tso
// RUN: ld.lld -static %t -o %tout
// RUN: ld.lld %t -o %tout
// RUN: ld.lld -shared %tso -o %tshared
// RUN: ld.lld -static %t %tshared -o %tout
-// REQUIRES: x86
.global _start
_start:
OpenPOWER on IntegriCloud