summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2015-06-02 18:37:20 +0000
committerTim Northover <tnorthover@apple.com>2015-06-02 18:37:20 +0000
commit3f3a4d8503de164f6c6b03e114f7094ce8a659ba (patch)
treec71d9a69401e85f9bd70fbf667b871bf752b0f80
parent264e542083cfff5c58553cceea5ba1d6c6d23921 (diff)
downloadbcm5719-llvm-3f3a4d8503de164f6c6b03e114f7094ce8a659ba.tar.gz
bcm5719-llvm-3f3a4d8503de164f6c6b03e114f7094ce8a659ba.zip
AArch64: fix typo in SMIN far atomics and add tests
llvm-svn: 238858
-rw-r--r--llvm/lib/Target/AArch64/AArch64InstrInfo.td2
-rw-r--r--llvm/test/MC/AArch64/armv8.1a-atomic.s5
-rw-r--r--llvm/test/MC/Disassembler/AArch64/armv8.1a-atomic.txt4
3 files changed, 10 insertions, 1 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64InstrInfo.td b/llvm/lib/Target/AArch64/AArch64InstrInfo.td
index 99f231a1e0e..2f1b8933bf6 100644
--- a/llvm/lib/Target/AArch64/AArch64InstrInfo.td
+++ b/llvm/lib/Target/AArch64/AArch64InstrInfo.td
@@ -789,7 +789,7 @@ defm LDSMAXA : LDOPregister<0b100, "smax", 1, 0, "a">;
defm LDSMAXL : LDOPregister<0b100, "smax", 0, 1, "l">;
defm LDSMAXAL : LDOPregister<0b100, "smax", 1, 1, "al">;
-defm LDSMIN : LDOPregister<0b101, "smin`", 0, 0, "">;
+defm LDSMIN : LDOPregister<0b101, "smin", 0, 0, "">;
defm LDSMINA : LDOPregister<0b101, "smin", 1, 0, "a">;
defm LDSMINL : LDOPregister<0b101, "smin", 0, 1, "l">;
defm LDSMINAL : LDOPregister<0b101, "smin", 1, 1, "al">;
diff --git a/llvm/test/MC/AArch64/armv8.1a-atomic.s b/llvm/test/MC/AArch64/armv8.1a-atomic.s
index 224943b59f1..bcfd3e7d166 100644
--- a/llvm/test/MC/AArch64/armv8.1a-atomic.s
+++ b/llvm/test/MC/AArch64/armv8.1a-atomic.s
@@ -84,6 +84,7 @@
ldsminlb w0, w1, [x2]
ldumaxalh w0, w1, [x2]
ldumin w0, w1, [x2]
+ ldsminb w2, w3, [x5]
//CHECK: ldadda x0, x1, [x2] // encoding: [0x41,0x00,0xa0,0xf8]
//CHECK: ldclrl x0, x1, [x2] // encoding: [0x41,0x10,0x60,0xf8]
//CHECK: ldeoral x0, x1, [x2] // encoding: [0x41,0x20,0xe0,0xf8]
@@ -92,6 +93,7 @@
//CHECK: ldsminlb w0, w1, [x2] // encoding: [0x41,0x50,0x60,0x38]
//CHECK: ldumaxalh w0, w1, [x2] // encoding: [0x41,0x60,0xe0,0x78]
//CHECK: ldumin w0, w1, [x2] // encoding: [0x41,0x70,0x20,0xb8]
+//CHECK: ldsminb w2, w3, [x5] // encoding: [0xa3,0x50,0x22,0x38]
// ST<OP> intructions: aliases to LD<OP>
stADDlb w0, [x2]
@@ -102,6 +104,7 @@
stsminh w0, [x2]
stumax w0, [x2]
stumin x0, [x2]
+ stsminl x29, [sp]
//CHECK: staddlb w0, [x2] // encoding: [0x5f,0x00,0x60,0x38]
//CHECK: stclrlh w0, [x2] // encoding: [0x5f,0x10,0x60,0x78]
//CHECK: steorl w0, [x2] // encoding: [0x5f,0x20,0x60,0xb8]
@@ -110,6 +113,8 @@
//CHECK: stsminh w0, [x2] // encoding: [0x5f,0x50,0x20,0x78]
//CHECK: stumax w0, [x2] // encoding: [0x5f,0x60,0x20,0xb8]
//CHECK: stumin x0, [x2] // encoding: [0x5f,0x70,0x20,0xf8]
+//CHECK: stsminl x29, [sp] // encoding: [0xff,0x53,0x7d,0xf8]
+
ldsmax x0, x1, [w2]
ldeorl w0, w1, [w2]
diff --git a/llvm/test/MC/Disassembler/AArch64/armv8.1a-atomic.txt b/llvm/test/MC/Disassembler/AArch64/armv8.1a-atomic.txt
index 67c6954c567..b20fabb8c6f 100644
--- a/llvm/test/MC/Disassembler/AArch64/armv8.1a-atomic.txt
+++ b/llvm/test/MC/Disassembler/AArch64/armv8.1a-atomic.txt
@@ -51,6 +51,7 @@
0x41,0x50,0x60,0x38
0x41,0x60,0xe0,0x78
0x41,0x70,0x20,0xb8
+0xab,0x51,0xe7,0x78
# CHECK: ldadda x0, x1, [x2]
# CHECK: ldclrl x0, x1, [x2]
# CHECK: ldeoral x0, x1, [x2]
@@ -59,6 +60,7 @@
# CHECK: ldsminlb w0, w1, [x2]
# CHECK: ldumaxalh w0, w1, [x2]
# CHECK: ldumin w0, w1, [x2]
+# CHECK: ldsminalh w7, w11, [x13]
0x5f,0x00,0x60,0x38
0x5f,0x10,0x60,0x78
@@ -68,6 +70,7 @@
0x5f,0x50,0x20,0x78
0x5f,0x60,0x20,0xb8
0x5f,0x70,0x20,0xf8
+0xff,0x53,0x7d,0xf8
# CHECK: staddlb w0, [x2]
# CHECK: stclrlh w0, [x2]
# CHECK: steorl w0, [x2]
@@ -76,6 +79,7 @@
# CHECK: stsminh w0, [x2]
# CHECK: stumax w0, [x2]
# CHECK: stumin x0, [x2]
+# CHECK: stsminl x29, [sp]
0x82,0x7c,0x20,0x48
0x82,0x7c,0x20,0x08
OpenPOWER on IntegriCloud