From 4e9a96d810eb0cc126ebe6f18e536b474c84940c Mon Sep 17 00:00:00 2001 From: Amaury de la Vieuville Date: Mon, 10 Jun 2013 14:17:08 +0000 Subject: ARM: ISB cannot be passed the same options as DMB ISB should only accepts full system sync, other options are reserved git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183656 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/MC/ARM/basic-arm-instructions.s | 4 ++++ test/MC/ARM/basic-thumb2-instructions.s | 4 ++++ test/MC/ARM/diagnostics.s | 5 +++++ test/MC/ARM/thumb2-diagnostics.s | 5 +++++ test/MC/Disassembler/ARM/basic-arm-instructions.txt | 2 ++ test/MC/Disassembler/ARM/thumb2.txt | 2 ++ 6 files changed, 22 insertions(+) (limited to 'test/MC') diff --git a/test/MC/ARM/basic-arm-instructions.s b/test/MC/ARM/basic-arm-instructions.s index 4b72c14..8aec4b3 100644 --- a/test/MC/ARM/basic-arm-instructions.s +++ b/test/MC/ARM/basic-arm-instructions.s @@ -778,9 +778,13 @@ Lforward: @------------------------------------------------------------------------------ isb sy isb + isb #15 + isb #1 @ CHECK: isb sy @ encoding: [0x6f,0xf0,0x7f,0xf5] @ CHECK: isb sy @ encoding: [0x6f,0xf0,0x7f,0xf5] +@ CHECK: isb sy @ encoding: [0x6f,0xf0,0x7f,0xf5] +@ CHECK: isb #0x1 @ encoding: [0x61,0xf0,0x7f,0xf5] @------------------------------------------------------------------------------ diff --git a/test/MC/ARM/basic-thumb2-instructions.s b/test/MC/ARM/basic-thumb2-instructions.s index 8127feb..98eb7f2 100644 --- a/test/MC/ARM/basic-thumb2-instructions.s +++ b/test/MC/ARM/basic-thumb2-instructions.s @@ -571,9 +571,13 @@ _func: @------------------------------------------------------------------------------ isb sy isb + isb #15 + isb #1 @ CHECK: isb sy @ encoding: [0xbf,0xf3,0x6f,0x8f] @ CHECK: isb sy @ encoding: [0xbf,0xf3,0x6f,0x8f] +@ CHECK: isb sy @ encoding: [0xbf,0xf3,0x6f,0x8f] +@ CHECK: isb #0x1 @ encoding: [0xbf,0xf3,0x61,0x8f] @------------------------------------------------------------------------------ diff --git a/test/MC/ARM/diagnostics.s b/test/MC/ARM/diagnostics.s index d65cfd7..b4b7386 100644 --- a/test/MC/ARM/diagnostics.s +++ b/test/MC/ARM/diagnostics.s @@ -371,3 +371,8 @@ @ CHECK-ERRORS: error: invalid operand for instruction @ CHECK-ERRORS: msr foo, #0 @ CHECK-ERRORS: ^ + + isb #-1 + isb #16 +@ CHECK-ERRORS: error: immediate value out of range +@ CHECK-ERRORS: error: immediate value out of range diff --git a/test/MC/ARM/thumb2-diagnostics.s b/test/MC/ARM/thumb2-diagnostics.s index d94c686..b7fe44d 100644 --- a/test/MC/ARM/thumb2-diagnostics.s +++ b/test/MC/ARM/thumb2-diagnostics.s @@ -42,3 +42,8 @@ @ CHECK-ERRORS: error: invalid operand for instruction @ CHECK-ERRORS: error: immediate operand must be in the range [0,15] @ CHECK-ERRORS: error: immediate operand must be in the range [0,15] + + isb #-1 + isb #16 +@ CHECK-ERRORS: error: immediate value out of range +@ CHECK-ERRORS: error: immediate value out of range diff --git a/test/MC/Disassembler/ARM/basic-arm-instructions.txt b/test/MC/Disassembler/ARM/basic-arm-instructions.txt index ae4172b..fd36268 100644 --- a/test/MC/Disassembler/ARM/basic-arm-instructions.txt +++ b/test/MC/Disassembler/ARM/basic-arm-instructions.txt @@ -613,8 +613,10 @@ # ISB #------------------------------------------------------------------------------ # CHECK: isb sy +# CHECK: isb #0xa 0x6f 0xf0 0x7f 0xf5 +0x6a 0xf0 0x7f 0xf5 diff --git a/test/MC/Disassembler/ARM/thumb2.txt b/test/MC/Disassembler/ARM/thumb2.txt index 31f75b3..fc237ab 100644 --- a/test/MC/Disassembler/ARM/thumb2.txt +++ b/test/MC/Disassembler/ARM/thumb2.txt @@ -447,8 +447,10 @@ # ISB #------------------------------------------------------------------------------ #CHECK: isb sy +#CHECK: isb #0xa 0xbf 0xf3 0x6f 0x8f +0xbf 0xf3 0x6a 0x8f #------------------------------------------------------------------------------ # IT -- cgit v1.1