diff options
| author | Oliver Stannard <oliver.stannard@arm.com> | 2016-01-20 12:54:31 +0000 |
|---|---|---|
| committer | Oliver Stannard <oliver.stannard@arm.com> | 2016-01-20 12:54:31 +0000 |
| commit | f7696f8267c94c0eb99568d8054c5aada0876d53 (patch) | |
| tree | ea3f67cb98efe157c98f47460a2d79c6587f8563 /llvm/test | |
| parent | 9619f04c0e12c24b1282f6d4449de4a9228c3060 (diff) | |
| download | bcm5719-llvm-f7696f8267c94c0eb99568d8054c5aada0876d53.tar.gz bcm5719-llvm-f7696f8267c94c0eb99568d8054c5aada0876d53.zip | |
[AArch64] Fix two bugs in the .inst directive
The AArch64 .inst directive was implemented using EmitIntValue, which resulted
in both $x and $d (code and data) mapping symbols being emitted at the same
address. This fixes it to only emit the $x mapping symbol.
EmitIntValue also emits the value in big-endian order when targeting big-endian
systems, but instructions are always emitted in little-endian order for
AArch64.
Differential Revision: http://reviews.llvm.org/D16349
llvm-svn: 258308
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/MC/AArch64/inst-directive.s | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/llvm/test/MC/AArch64/inst-directive.s b/llvm/test/MC/AArch64/inst-directive.s index 3bb620f689d..7fd5200b9e5 100644 --- a/llvm/test/MC/AArch64/inst-directive.s +++ b/llvm/test/MC/AArch64/inst-directive.s @@ -1,7 +1,14 @@ // RUN: llvm-mc %s -triple=aarch64-none-linux-gnu -filetype=asm -o - \ // RUN: | FileCheck %s --check-prefix=CHECK-ASM -// RUN: llvm-mc %s -triple=aarch64-none-linux-gnu -filetype=obj -o - \ -// RUN: | llvm-readobj -s -sd | FileCheck %s --check-prefix=CHECK-OBJ +// RUN: llvm-mc %s -triple=aarch64-none-linux-gnu -filetype=obj -o %t +// RUN: llvm-readobj -s -sd %t | FileCheck %s --check-prefix=CHECK-OBJ +// RUN: llvm-objdump -t %t | FileCheck %s --check-prefix=CHECK-SYMS + +// RUN: llvm-mc %s -triple=aarch64_be-none-linux-gnu -filetype=asm -o - \ +// RUN: | FileCheck %s --check-prefix=CHECK-ASM +// RUN: llvm-mc %s -triple=aarch64_be-none-linux-gnu -filetype=obj -o %t +// RUN: llvm-readobj -s -sd %t | FileCheck %s --check-prefix=CHECK-OBJ +// RUN: llvm-objdump -t %t | FileCheck %s --check-prefix=CHECK-SYMS .section .inst.aarch64_inst @@ -22,3 +29,7 @@ aarch64_inst: // CHECK-OBJ: SectionData ( // CHECK-OBJ-NEXT: 0000: 2040105E // CHECK-OBJ-NEXT: ) + +// CHECK-SYMS-NOT: 0000000000000000 .inst.aarch64_inst 00000000 $d +// CHECK-SYMS: 0000000000000000 .inst.aarch64_inst 00000000 $x +// CHECK-SYMS-NOT: 0000000000000000 .inst.aarch64_inst 00000000 $d |

