summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorOliver Stannard <oliver.stannard@arm.com>2016-01-20 12:54:31 +0000
committerOliver Stannard <oliver.stannard@arm.com>2016-01-20 12:54:31 +0000
commitf7696f8267c94c0eb99568d8054c5aada0876d53 (patch)
treeea3f67cb98efe157c98f47460a2d79c6587f8563 /llvm/test
parent9619f04c0e12c24b1282f6d4449de4a9228c3060 (diff)
downloadbcm5719-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.s15
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
OpenPOWER on IntegriCloud