From: Tim Northover Date: Tue, 2 Jun 2015 18:37:20 +0000 (+0000) Subject: AArch64: fix typo in SMIN far atomics and add tests X-Git-Tag: llvmorg-3.7.0-rc1~3184 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3f3a4d8503de164f6c6b03e114f7094ce8a659ba;p=platform%2Fupstream%2Fllvm.git AArch64: fix typo in SMIN far atomics and add tests llvm-svn: 238858 --- diff --git a/llvm/lib/Target/AArch64/AArch64InstrInfo.td b/llvm/lib/Target/AArch64/AArch64InstrInfo.td index 99f231a..2f1b893 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 224943b..bcfd3e7 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 intructions: aliases to LD 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 67c6954c..b20fabb 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