diff options
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/MC/ARM/Inputs/1.s | 3 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/2.s | 3 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/3.s | 3 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/4.s | 2 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/5.s | 2 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/6.s | 12 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/7.s | 3 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/attr.s | 5 | ||||
-rw-r--r-- | llvm/test/MC/ARM/Inputs/ident.s | 1 | ||||
-rw-r--r-- | llvm/test/MC/ARM/data-in-code.ll | 17 | ||||
-rw-r--r-- | llvm/test/MC/ARM/mappingsymbols.s | 48 | ||||
-rw-r--r-- | llvm/test/MC/ARM/multi-section-mapping.s | 1 | ||||
-rw-r--r-- | llvm/test/Object/ARM/nm-mapping-symbol.s | 1 |
13 files changed, 83 insertions, 18 deletions
diff --git a/llvm/test/MC/ARM/Inputs/1.s b/llvm/test/MC/ARM/Inputs/1.s new file mode 100644 index 00000000000..0afcc633f64 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/1.s @@ -0,0 +1,3 @@ + .section .foobar,"ax",%progbits + nop + .word 32 diff --git a/llvm/test/MC/ARM/Inputs/2.s b/llvm/test/MC/ARM/Inputs/2.s new file mode 100644 index 00000000000..0ecdb294ab8 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/2.s @@ -0,0 +1,3 @@ + .section .foobar,"",%progbits + nop + .word 32 diff --git a/llvm/test/MC/ARM/Inputs/3.s b/llvm/test/MC/ARM/Inputs/3.s new file mode 100644 index 00000000000..09392623fc1 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/3.s @@ -0,0 +1,3 @@ + .section .foobar,"aw",%progbits + nop + .word 32 diff --git a/llvm/test/MC/ARM/Inputs/4.s b/llvm/test/MC/ARM/Inputs/4.s new file mode 100644 index 00000000000..28d8244bb41 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/4.s @@ -0,0 +1,2 @@ + .section .foobar,"",%progbits + .word 32 diff --git a/llvm/test/MC/ARM/Inputs/5.s b/llvm/test/MC/ARM/Inputs/5.s new file mode 100644 index 00000000000..1faef539b13 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/5.s @@ -0,0 +1,2 @@ + .section .foobar,"aw",%progbits + .word 32 diff --git a/llvm/test/MC/ARM/Inputs/6.s b/llvm/test/MC/ARM/Inputs/6.s new file mode 100644 index 00000000000..0fdb9daaf29 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/6.s @@ -0,0 +1,12 @@ + .section .foo + .word 30 + .word 31 + .word 32 + .word 33 + nop + .word 34 + .word 35 + .word 36 + .word 37 + .word 38 + nop diff --git a/llvm/test/MC/ARM/Inputs/7.s b/llvm/test/MC/ARM/Inputs/7.s new file mode 100644 index 00000000000..b92a61ec971 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/7.s @@ -0,0 +1,3 @@ + .section .foobar,"aw",%progbits + .word 32 + nop diff --git a/llvm/test/MC/ARM/Inputs/attr.s b/llvm/test/MC/ARM/Inputs/attr.s new file mode 100644 index 00000000000..412cad76842 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/attr.s @@ -0,0 +1,5 @@ + .text + .syntax unified + .eabi_attribute 67, "2.09" @ Tag_conformance + .cpu arm7tdmi + .eabi_attribute 6, 2 @ Tag_CPU_arch diff --git a/llvm/test/MC/ARM/Inputs/ident.s b/llvm/test/MC/ARM/Inputs/ident.s new file mode 100644 index 00000000000..19d65fcc7e0 --- /dev/null +++ b/llvm/test/MC/ARM/Inputs/ident.s @@ -0,0 +1 @@ + .ident "LLVM ARM Compiler" diff --git a/llvm/test/MC/ARM/data-in-code.ll b/llvm/test/MC/ARM/data-in-code.ll index c2194e9179c..e579146acfb 100644 --- a/llvm/test/MC/ARM/data-in-code.ll +++ b/llvm/test/MC/ARM/data-in-code.ll @@ -60,23 +60,6 @@ exit: ;; ARM-NEXT: Other: ;; ARM-NEXT: Section: [[MIXED_SECT]] -;; ARM: Symbol { -;; ARM: Name: $d -;; ARM-NEXT: Value: 0x0 -;; ARM-NEXT: Size: 0 -;; ARM-NEXT: Binding: Local (0x0) -;; ARM-NEXT: Type: None (0x0) -;; ARM-NEXT: Other: 0 -;; ARM-NEXT: Section: .ARM.exidx -;; ARM-NEXT: } - -;; ARM: Symbol { -;; ARM: Name: $d -;; ARM-NEXT: Value: 0 -;; ARM-NEXT: Size: 0 -;; ARM-NEXT: Binding: Local -;; ARM-NEXT: Type: None - ;; ARM-NOT: ${{[atd]}} ;; TMB: Symbol { diff --git a/llvm/test/MC/ARM/mappingsymbols.s b/llvm/test/MC/ARM/mappingsymbols.s new file mode 100644 index 00000000000..fff8e104781 --- /dev/null +++ b/llvm/test/MC/ARM/mappingsymbols.s @@ -0,0 +1,48 @@ +# Check section containing code and data with permission executable for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/1.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s + +# Check section containing code and data with no permissions for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/2.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s + +# Check section containing code and data with read/write permissions for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/3.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s + +# Check section containing data with no permissions for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/4.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s -check-prefix=MAPPINGSYMBOLS + +# Check section containing only data with read/write permissions for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/5.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s -check-prefix=MAPPINGSYMBOLS + +# Check section containing the ident string with no permissions for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/ident.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s -check-prefix=MAPPINGSYMBOLS + +# Check section containing the attributes with no permissions for the section. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/attr.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s -check-prefix=MAPPINGSYMBOLS + +# Check section containing code and data with no permissions for the section. +# data comes before code. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/6.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s -check-prefix=MIX + +# Check section containing code and data with no permissions for the section. +# data comes before code. +@ RUN: llvm-mc -triple armv7-none-linux -filetype=obj -o %t.o %p/Inputs/7.s +@ RUN: llvm-readobj -elf-output-style=GNU -symbols %t.o | FileCheck %s + +#CHECK: $a +#CHECK: $d + +#MIX: $a +#MIX: $a +#MIX: $d +#MIX: $d + +#MAPPINGSYMBOLS-NOT: $a +#MAPPINGSYMBOLS-NOT: $d diff --git a/llvm/test/MC/ARM/multi-section-mapping.s b/llvm/test/MC/ARM/multi-section-mapping.s index 2b1b0efab53..e4b7146e4b0 100644 --- a/llvm/test/MC/ARM/multi-section-mapping.s +++ b/llvm/test/MC/ARM/multi-section-mapping.s @@ -29,7 +29,6 @@ @ CHECK: 00000000 .text 00000000 $a @ CHECK-NEXT: 00000000 .wibble 00000000 $a -@ CHECK-NEXT: 00000000 .starts_data 00000000 $d @ CHECK-NEXT: 00000000 .starts_thumb 00000000 $t @ CHECK-NOT: ${{[adt]}} diff --git a/llvm/test/Object/ARM/nm-mapping-symbol.s b/llvm/test/Object/ARM/nm-mapping-symbol.s index 485c1cc39d7..9b7b5b583ea 100644 --- a/llvm/test/Object/ARM/nm-mapping-symbol.s +++ b/llvm/test/Object/ARM/nm-mapping-symbol.s @@ -9,3 +9,4 @@ .section .foobar,"",%progbits .asciz "foo" + nop |