[SystemZ] Add MC test cases

This adds all MC tests for the SystemZ target.

Patch by Richard Sandiford.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181206 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Ulrich Weigand 2013-05-06 16:20:58 +00:00
parent 25cf4ebd50
commit 097b88fff6
582 changed files with 9426 additions and 0 deletions

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: a %r0, 0 # encoding: [0x5a,0x00,0x00,0x00]
#CHECK: a %r0, 4095 # encoding: [0x5a,0x00,0x0f,0xff]
#CHECK: a %r0, 0(%r1) # encoding: [0x5a,0x00,0x10,0x00]
#CHECK: a %r0, 0(%r15) # encoding: [0x5a,0x00,0xf0,0x00]
#CHECK: a %r0, 4095(%r1,%r15) # encoding: [0x5a,0x01,0xff,0xff]
#CHECK: a %r0, 4095(%r15,%r1) # encoding: [0x5a,0x0f,0x1f,0xff]
#CHECK: a %r15, 0 # encoding: [0x5a,0xf0,0x00,0x00]
a %r0, 0
a %r0, 4095
a %r0, 0(%r1)
a %r0, 0(%r15)
a %r0, 4095(%r1,%r15)
a %r0, 4095(%r15,%r1)
a %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: a %r0, -1
#CHECK: error: invalid operand
#CHECK: a %r0, 4096
a %r0, -1
a %r0, 4096

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: adb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x1a]
#CHECK: adb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x1a]
#CHECK: adb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x1a]
#CHECK: adb %f0, 0(%r15) # encoding: [0xed,0x00,0xf0,0x00,0x00,0x1a]
#CHECK: adb %f0, 4095(%r1,%r15) # encoding: [0xed,0x01,0xff,0xff,0x00,0x1a]
#CHECK: adb %f0, 4095(%r15,%r1) # encoding: [0xed,0x0f,0x1f,0xff,0x00,0x1a]
#CHECK: adb %f15, 0 # encoding: [0xed,0xf0,0x00,0x00,0x00,0x1a]
adb %f0, 0
adb %f0, 4095
adb %f0, 0(%r1)
adb %f0, 0(%r15)
adb %f0, 4095(%r1,%r15)
adb %f0, 4095(%r15,%r1)
adb %f15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: adb %f0, -1
#CHECK: error: invalid operand
#CHECK: adb %f0, 4096
adb %f0, -1
adb %f0, 4096

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: adbr %f0, %f0 # encoding: [0xb3,0x1a,0x00,0x00]
#CHECK: adbr %f0, %f15 # encoding: [0xb3,0x1a,0x00,0x0f]
#CHECK: adbr %f7, %f8 # encoding: [0xb3,0x1a,0x00,0x78]
#CHECK: adbr %f15, %f0 # encoding: [0xb3,0x1a,0x00,0xf0]
adbr %f0, %f0
adbr %f0, %f15
adbr %f7, %f8
adbr %f15, %f0

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: aeb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x0a]
#CHECK: aeb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x0a]
#CHECK: aeb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x0a]
#CHECK: aeb %f0, 0(%r15) # encoding: [0xed,0x00,0xf0,0x00,0x00,0x0a]
#CHECK: aeb %f0, 4095(%r1,%r15) # encoding: [0xed,0x01,0xff,0xff,0x00,0x0a]
#CHECK: aeb %f0, 4095(%r15,%r1) # encoding: [0xed,0x0f,0x1f,0xff,0x00,0x0a]
#CHECK: aeb %f15, 0 # encoding: [0xed,0xf0,0x00,0x00,0x00,0x0a]
aeb %f0, 0
aeb %f0, 4095
aeb %f0, 0(%r1)
aeb %f0, 0(%r15)
aeb %f0, 4095(%r1,%r15)
aeb %f0, 4095(%r15,%r1)
aeb %f15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: aeb %f0, -1
#CHECK: error: invalid operand
#CHECK: aeb %f0, 4096
aeb %f0, -1
aeb %f0, 4096

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: aebr %f0, %f0 # encoding: [0xb3,0x0a,0x00,0x00]
#CHECK: aebr %f0, %f15 # encoding: [0xb3,0x0a,0x00,0x0f]
#CHECK: aebr %f7, %f8 # encoding: [0xb3,0x0a,0x00,0x78]
#CHECK: aebr %f15, %f0 # encoding: [0xb3,0x0a,0x00,0xf0]
aebr %f0, %f0
aebr %f0, %f15
aebr %f7, %f8
aebr %f15, %f0

View File

@ -0,0 +1,15 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: afi %r0, -2147483648 # encoding: [0xc2,0x09,0x80,0x00,0x00,0x00]
#CHECK: afi %r0, -1 # encoding: [0xc2,0x09,0xff,0xff,0xff,0xff]
#CHECK: afi %r0, 0 # encoding: [0xc2,0x09,0x00,0x00,0x00,0x00]
#CHECK: afi %r0, 1 # encoding: [0xc2,0x09,0x00,0x00,0x00,0x01]
#CHECK: afi %r0, 2147483647 # encoding: [0xc2,0x09,0x7f,0xff,0xff,0xff]
#CHECK: afi %r15, 0 # encoding: [0xc2,0xf9,0x00,0x00,0x00,0x00]
afi %r0, -1 << 31
afi %r0, -1
afi %r0, 0
afi %r0, 1
afi %r0, (1 << 31) - 1
afi %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: afi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: afi %r0, (1 << 31)
afi %r0, (-1 << 31) - 1
afi %r0, (1 << 31)

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ag %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x08]
#CHECK: ag %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x08]
#CHECK: ag %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x08]
#CHECK: ag %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x08]
#CHECK: ag %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x08]
#CHECK: ag %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x08]
#CHECK: ag %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x08]
#CHECK: ag %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x08]
#CHECK: ag %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x08]
#CHECK: ag %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x08]
ag %r0, -524288
ag %r0, -1
ag %r0, 0
ag %r0, 1
ag %r0, 524287
ag %r0, 0(%r1)
ag %r0, 0(%r15)
ag %r0, 524287(%r1,%r15)
ag %r0, 524287(%r15,%r1)
ag %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: ag %r0, -524289
#CHECK: error: invalid operand
#CHECK: ag %r0, 524288
ag %r0, -524289
ag %r0, 524288

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: agf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x18]
#CHECK: agf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x18]
#CHECK: agf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x18]
#CHECK: agf %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x18]
#CHECK: agf %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x18]
#CHECK: agf %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x18]
#CHECK: agf %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x18]
#CHECK: agf %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x18]
#CHECK: agf %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x18]
#CHECK: agf %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x18]
agf %r0, -524288
agf %r0, -1
agf %r0, 0
agf %r0, 1
agf %r0, 524287
agf %r0, 0(%r1)
agf %r0, 0(%r15)
agf %r0, 524287(%r1,%r15)
agf %r0, 524287(%r15,%r1)
agf %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: agf %r0, -524289
#CHECK: error: invalid operand
#CHECK: agf %r0, 524288
agf %r0, -524289
agf %r0, 524288

View File

@ -0,0 +1,15 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: agfi %r0, -2147483648 # encoding: [0xc2,0x08,0x80,0x00,0x00,0x00]
#CHECK: agfi %r0, -1 # encoding: [0xc2,0x08,0xff,0xff,0xff,0xff]
#CHECK: agfi %r0, 0 # encoding: [0xc2,0x08,0x00,0x00,0x00,0x00]
#CHECK: agfi %r0, 1 # encoding: [0xc2,0x08,0x00,0x00,0x00,0x01]
#CHECK: agfi %r0, 2147483647 # encoding: [0xc2,0x08,0x7f,0xff,0xff,0xff]
#CHECK: agfi %r15, 0 # encoding: [0xc2,0xf8,0x00,0x00,0x00,0x00]
agfi %r0, -1 << 31
agfi %r0, -1
agfi %r0, 0
agfi %r0, 1
agfi %r0, (1 << 31) - 1
agfi %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: agfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: agfi %r0, (1 << 31)
agfi %r0, (-1 << 31) - 1
agfi %r0, (1 << 31)

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: agfr %r0, %r0 # encoding: [0xb9,0x18,0x00,0x00]
#CHECK: agfr %r0, %r15 # encoding: [0xb9,0x18,0x00,0x0f]
#CHECK: agfr %r15, %r0 # encoding: [0xb9,0x18,0x00,0xf0]
#CHECK: agfr %r7, %r8 # encoding: [0xb9,0x18,0x00,0x78]
agfr %r0,%r0
agfr %r0,%r15
agfr %r15,%r0
agfr %r7,%r8

View File

@ -0,0 +1,15 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: aghi %r0, -32768 # encoding: [0xa7,0x0b,0x80,0x00]
#CHECK: aghi %r0, -1 # encoding: [0xa7,0x0b,0xff,0xff]
#CHECK: aghi %r0, 0 # encoding: [0xa7,0x0b,0x00,0x00]
#CHECK: aghi %r0, 1 # encoding: [0xa7,0x0b,0x00,0x01]
#CHECK: aghi %r0, 32767 # encoding: [0xa7,0x0b,0x7f,0xff]
#CHECK: aghi %r15, 0 # encoding: [0xa7,0xfb,0x00,0x00]
aghi %r0, -32768
aghi %r0, -1
aghi %r0, 0
aghi %r0, 1
aghi %r0, 32767
aghi %r15, 0

View File

@ -0,0 +1,13 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: aghi %r0, -32769
#CHECK: error: invalid operand
#CHECK: aghi %r0, 32768
#CHECK: error: invalid operand
#CHECK: aghi %r0, foo
aghi %r0, -32769
aghi %r0, 32768
aghi %r0, foo

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: agr %r0, %r0 # encoding: [0xb9,0x08,0x00,0x00]
#CHECK: agr %r0, %r15 # encoding: [0xb9,0x08,0x00,0x0f]
#CHECK: agr %r15, %r0 # encoding: [0xb9,0x08,0x00,0xf0]
#CHECK: agr %r7, %r8 # encoding: [0xb9,0x08,0x00,0x78]
agr %r0,%r0
agr %r0,%r15
agr %r15,%r0
agr %r7,%r8

View File

@ -0,0 +1,29 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: agsi -524288, 0 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x7a]
#CHECK: agsi -1, 0 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x7a]
#CHECK: agsi 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0x7a]
#CHECK: agsi 1, 0 # encoding: [0xeb,0x00,0x00,0x01,0x00,0x7a]
#CHECK: agsi 524287, 0 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0x7a]
#CHECK: agsi 0, -128 # encoding: [0xeb,0x80,0x00,0x00,0x00,0x7a]
#CHECK: agsi 0, -1 # encoding: [0xeb,0xff,0x00,0x00,0x00,0x7a]
#CHECK: agsi 0, 1 # encoding: [0xeb,0x01,0x00,0x00,0x00,0x7a]
#CHECK: agsi 0, 127 # encoding: [0xeb,0x7f,0x00,0x00,0x00,0x7a]
#CHECK: agsi 0(%r1), 42 # encoding: [0xeb,0x2a,0x10,0x00,0x00,0x7a]
#CHECK: agsi 0(%r15), 42 # encoding: [0xeb,0x2a,0xf0,0x00,0x00,0x7a]
#CHECK: agsi 524287(%r1), 42 # encoding: [0xeb,0x2a,0x1f,0xff,0x7f,0x7a]
#CHECK: agsi 524287(%r15), 42 # encoding: [0xeb,0x2a,0xff,0xff,0x7f,0x7a]
agsi -524288, 0
agsi -1, 0
agsi 0, 0
agsi 1, 0
agsi 524287, 0
agsi 0, -128
agsi 0, -1
agsi 0, 1
agsi 0, 127
agsi 0(%r1), 42
agsi 0(%r15), 42
agsi 524287(%r1), 42
agsi 524287(%r15), 42

View File

@ -0,0 +1,19 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: agsi -524289, 0
#CHECK: error: invalid operand
#CHECK: agsi 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: agsi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: agsi 0, -129
#CHECK: error: invalid operand
#CHECK: agsi 0, 128
agsi -524289, 0
agsi 524288, 0
agsi 0(%r1,%r2), 0
agsi 0, -129
agsi 0, 128

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ah %r0, 0 # encoding: [0x4a,0x00,0x00,0x00]
#CHECK: ah %r0, 4095 # encoding: [0x4a,0x00,0x0f,0xff]
#CHECK: ah %r0, 0(%r1) # encoding: [0x4a,0x00,0x10,0x00]
#CHECK: ah %r0, 0(%r15) # encoding: [0x4a,0x00,0xf0,0x00]
#CHECK: ah %r0, 4095(%r1,%r15) # encoding: [0x4a,0x01,0xff,0xff]
#CHECK: ah %r0, 4095(%r15,%r1) # encoding: [0x4a,0x0f,0x1f,0xff]
#CHECK: ah %r15, 0 # encoding: [0x4a,0xf0,0x00,0x00]
ah %r0, 0
ah %r0, 4095
ah %r0, 0(%r1)
ah %r0, 0(%r15)
ah %r0, 4095(%r1,%r15)
ah %r0, 4095(%r15,%r1)
ah %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: ah %r0, -1
#CHECK: error: invalid operand
#CHECK: ah %r0, 4096
ah %r0, -1
ah %r0, 4096

View File

@ -0,0 +1,15 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ahi %r0, -32768 # encoding: [0xa7,0x0a,0x80,0x00]
#CHECK: ahi %r0, -1 # encoding: [0xa7,0x0a,0xff,0xff]
#CHECK: ahi %r0, 0 # encoding: [0xa7,0x0a,0x00,0x00]
#CHECK: ahi %r0, 1 # encoding: [0xa7,0x0a,0x00,0x01]
#CHECK: ahi %r0, 32767 # encoding: [0xa7,0x0a,0x7f,0xff]
#CHECK: ahi %r15, 0 # encoding: [0xa7,0xfa,0x00,0x00]
ahi %r0, -32768
ahi %r0, -1
ahi %r0, 0
ahi %r0, 1
ahi %r0, 32767
ahi %r15, 0

View File

@ -0,0 +1,13 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: ahi %r0, -32769
#CHECK: error: invalid operand
#CHECK: ahi %r0, 32768
#CHECK: error: invalid operand
#CHECK: ahi %r0, foo
ahi %r0, -32769
ahi %r0, 32768
ahi %r0, foo

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ahy %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x7a]
#CHECK: ahy %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x7a]
#CHECK: ahy %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x7a]
#CHECK: ahy %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x7a]
#CHECK: ahy %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x7a]
#CHECK: ahy %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x7a]
#CHECK: ahy %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x7a]
#CHECK: ahy %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x7a]
#CHECK: ahy %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x7a]
#CHECK: ahy %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x7a]
ahy %r0, -524288
ahy %r0, -1
ahy %r0, 0
ahy %r0, 1
ahy %r0, 524287
ahy %r0, 0(%r1)
ahy %r0, 0(%r15)
ahy %r0, 524287(%r1,%r15)
ahy %r0, 524287(%r15,%r1)
ahy %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: ahy %r0, -524289
#CHECK: error: invalid operand
#CHECK: ahy %r0, 524288
ahy %r0, -524289
ahy %r0, 524288

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: al %r0, 0 # encoding: [0x5e,0x00,0x00,0x00]
#CHECK: al %r0, 4095 # encoding: [0x5e,0x00,0x0f,0xff]
#CHECK: al %r0, 0(%r1) # encoding: [0x5e,0x00,0x10,0x00]
#CHECK: al %r0, 0(%r15) # encoding: [0x5e,0x00,0xf0,0x00]
#CHECK: al %r0, 4095(%r1,%r15) # encoding: [0x5e,0x01,0xff,0xff]
#CHECK: al %r0, 4095(%r15,%r1) # encoding: [0x5e,0x0f,0x1f,0xff]
#CHECK: al %r15, 0 # encoding: [0x5e,0xf0,0x00,0x00]
al %r0, 0
al %r0, 4095
al %r0, 0(%r1)
al %r0, 0(%r15)
al %r0, 4095(%r1,%r15)
al %r0, 4095(%r15,%r1)
al %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: al %r0, -1
#CHECK: error: invalid operand
#CHECK: al %r0, 4096
al %r0, -1
al %r0, 4096

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alc %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x98]
#CHECK: alc %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x98]
#CHECK: alc %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x98]
#CHECK: alc %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x98]
#CHECK: alc %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x98]
#CHECK: alc %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x98]
#CHECK: alc %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x98]
#CHECK: alc %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x98]
#CHECK: alc %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x98]
#CHECK: alc %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x98]
alc %r0, -524288
alc %r0, -1
alc %r0, 0
alc %r0, 1
alc %r0, 524287
alc %r0, 0(%r1)
alc %r0, 0(%r15)
alc %r0, 524287(%r1,%r15)
alc %r0, 524287(%r15,%r1)
alc %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: alc %r0, -524289
#CHECK: error: invalid operand
#CHECK: alc %r0, 524288
alc %r0, -524289
alc %r0, 524288

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alcg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x88]
#CHECK: alcg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x88]
#CHECK: alcg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x88]
#CHECK: alcg %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x88]
#CHECK: alcg %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x88]
#CHECK: alcg %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x88]
#CHECK: alcg %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x88]
#CHECK: alcg %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x88]
#CHECK: alcg %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x88]
#CHECK: alcg %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x88]
alcg %r0, -524288
alcg %r0, -1
alcg %r0, 0
alcg %r0, 1
alcg %r0, 524287
alcg %r0, 0(%r1)
alcg %r0, 0(%r15)
alcg %r0, 524287(%r1,%r15)
alcg %r0, 524287(%r15,%r1)
alcg %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: alcg %r0, -524289
#CHECK: error: invalid operand
#CHECK: alcg %r0, 524288
alcg %r0, -524289
alcg %r0, 524288

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alcgr %r0, %r0 # encoding: [0xb9,0x88,0x00,0x00]
#CHECK: alcgr %r0, %r15 # encoding: [0xb9,0x88,0x00,0x0f]
#CHECK: alcgr %r15, %r0 # encoding: [0xb9,0x88,0x00,0xf0]
#CHECK: alcgr %r7, %r8 # encoding: [0xb9,0x88,0x00,0x78]
alcgr %r0,%r0
alcgr %r0,%r15
alcgr %r15,%r0
alcgr %r7,%r8

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alcr %r0, %r0 # encoding: [0xb9,0x98,0x00,0x00]
#CHECK: alcr %r0, %r15 # encoding: [0xb9,0x98,0x00,0x0f]
#CHECK: alcr %r15, %r0 # encoding: [0xb9,0x98,0x00,0xf0]
#CHECK: alcr %r7, %r8 # encoding: [0xb9,0x98,0x00,0x78]
alcr %r0,%r0
alcr %r0,%r15
alcr %r15,%r0
alcr %r7,%r8

View File

@ -0,0 +1,9 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alfi %r0, 0 # encoding: [0xc2,0x0b,0x00,0x00,0x00,0x00]
#CHECK: alfi %r0, 4294967295 # encoding: [0xc2,0x0b,0xff,0xff,0xff,0xff]
#CHECK: alfi %r15, 0 # encoding: [0xc2,0xfb,0x00,0x00,0x00,0x00]
alfi %r0, 0
alfi %r0, (1 << 32) - 1
alfi %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: alfi %r0, -1
#CHECK: error: invalid operand
#CHECK: alfi %r0, (1 << 32)
alfi %r0, -1
alfi %r0, (1 << 32)

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x0a]
#CHECK: alg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x0a]
#CHECK: alg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x0a]
#CHECK: alg %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x0a]
#CHECK: alg %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x0a]
#CHECK: alg %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x0a]
#CHECK: alg %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x0a]
#CHECK: alg %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x0a]
#CHECK: alg %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x0a]
#CHECK: alg %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x0a]
alg %r0, -524288
alg %r0, -1
alg %r0, 0
alg %r0, 1
alg %r0, 524287
alg %r0, 0(%r1)
alg %r0, 0(%r15)
alg %r0, 524287(%r1,%r15)
alg %r0, 524287(%r15,%r1)
alg %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: alg %r0, -524289
#CHECK: error: invalid operand
#CHECK: alg %r0, 524288
alg %r0, -524289
alg %r0, 524288

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: algf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x1a]
#CHECK: algf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x1a]
#CHECK: algf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x1a]
#CHECK: algf %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x1a]
#CHECK: algf %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x1a]
#CHECK: algf %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x1a]
#CHECK: algf %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x1a]
#CHECK: algf %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x1a]
#CHECK: algf %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x1a]
#CHECK: algf %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x1a]
algf %r0, -524288
algf %r0, -1
algf %r0, 0
algf %r0, 1
algf %r0, 524287
algf %r0, 0(%r1)
algf %r0, 0(%r15)
algf %r0, 524287(%r1,%r15)
algf %r0, 524287(%r15,%r1)
algf %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: algf %r0, -524289
#CHECK: error: invalid operand
#CHECK: algf %r0, 524288
algf %r0, -524289
algf %r0, 524288

View File

@ -0,0 +1,9 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: algfi %r0, 0 # encoding: [0xc2,0x0a,0x00,0x00,0x00,0x00]
#CHECK: algfi %r0, 4294967295 # encoding: [0xc2,0x0a,0xff,0xff,0xff,0xff]
#CHECK: algfi %r15, 0 # encoding: [0xc2,0xfa,0x00,0x00,0x00,0x00]
algfi %r0, 0
algfi %r0, (1 << 32) - 1
algfi %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: algfi %r0, -1
#CHECK: error: invalid operand
#CHECK: algfi %r0, (1 << 32)
algfi %r0, -1
algfi %r0, (1 << 32)

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: algfr %r0, %r0 # encoding: [0xb9,0x1a,0x00,0x00]
#CHECK: algfr %r0, %r15 # encoding: [0xb9,0x1a,0x00,0x0f]
#CHECK: algfr %r15, %r0 # encoding: [0xb9,0x1a,0x00,0xf0]
#CHECK: algfr %r7, %r8 # encoding: [0xb9,0x1a,0x00,0x78]
algfr %r0,%r0
algfr %r0,%r15
algfr %r15,%r0
algfr %r7,%r8

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: algr %r0, %r0 # encoding: [0xb9,0x0a,0x00,0x00]
#CHECK: algr %r0, %r15 # encoding: [0xb9,0x0a,0x00,0x0f]
#CHECK: algr %r15, %r0 # encoding: [0xb9,0x0a,0x00,0xf0]
#CHECK: algr %r7, %r8 # encoding: [0xb9,0x0a,0x00,0x78]
algr %r0,%r0
algr %r0,%r15
algr %r15,%r0
algr %r7,%r8

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: alr %r0, %r0 # encoding: [0x1e,0x00]
#CHECK: alr %r0, %r15 # encoding: [0x1e,0x0f]
#CHECK: alr %r15, %r0 # encoding: [0x1e,0xf0]
#CHECK: alr %r7, %r8 # encoding: [0x1e,0x78]
alr %r0,%r0
alr %r0,%r15
alr %r15,%r0
alr %r7,%r8

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: aly %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x5e]
#CHECK: aly %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x5e]
#CHECK: aly %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x5e]
#CHECK: aly %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x5e]
#CHECK: aly %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x5e]
#CHECK: aly %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x5e]
#CHECK: aly %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x5e]
#CHECK: aly %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x5e]
#CHECK: aly %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x5e]
#CHECK: aly %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x5e]
aly %r0, -524288
aly %r0, -1
aly %r0, 0
aly %r0, 1
aly %r0, 524287
aly %r0, 0(%r1)
aly %r0, 0(%r15)
aly %r0, 524287(%r1,%r15)
aly %r0, 524287(%r15,%r1)
aly %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: aly %r0, -524289
#CHECK: error: invalid operand
#CHECK: aly %r0, 524288
aly %r0, -524289
aly %r0, 524288

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ar %r0, %r0 # encoding: [0x1a,0x00]
#CHECK: ar %r0, %r15 # encoding: [0x1a,0x0f]
#CHECK: ar %r15, %r0 # encoding: [0x1a,0xf0]
#CHECK: ar %r7, %r8 # encoding: [0x1a,0x78]
ar %r0,%r0
ar %r0,%r15
ar %r15,%r0
ar %r7,%r8

View File

@ -0,0 +1,29 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: asi -524288, 0 # encoding: [0xeb,0x00,0x00,0x00,0x80,0x6a]
#CHECK: asi -1, 0 # encoding: [0xeb,0x00,0x0f,0xff,0xff,0x6a]
#CHECK: asi 0, 0 # encoding: [0xeb,0x00,0x00,0x00,0x00,0x6a]
#CHECK: asi 1, 0 # encoding: [0xeb,0x00,0x00,0x01,0x00,0x6a]
#CHECK: asi 524287, 0 # encoding: [0xeb,0x00,0x0f,0xff,0x7f,0x6a]
#CHECK: asi 0, -128 # encoding: [0xeb,0x80,0x00,0x00,0x00,0x6a]
#CHECK: asi 0, -1 # encoding: [0xeb,0xff,0x00,0x00,0x00,0x6a]
#CHECK: asi 0, 1 # encoding: [0xeb,0x01,0x00,0x00,0x00,0x6a]
#CHECK: asi 0, 127 # encoding: [0xeb,0x7f,0x00,0x00,0x00,0x6a]
#CHECK: asi 0(%r1), 42 # encoding: [0xeb,0x2a,0x10,0x00,0x00,0x6a]
#CHECK: asi 0(%r15), 42 # encoding: [0xeb,0x2a,0xf0,0x00,0x00,0x6a]
#CHECK: asi 524287(%r1), 42 # encoding: [0xeb,0x2a,0x1f,0xff,0x7f,0x6a]
#CHECK: asi 524287(%r15), 42 # encoding: [0xeb,0x2a,0xff,0xff,0x7f,0x6a]
asi -524288, 0
asi -1, 0
asi 0, 0
asi 1, 0
asi 524287, 0
asi 0, -128
asi 0, -1
asi 0, 1
asi 0, 127
asi 0(%r1), 42
asi 0(%r15), 42
asi 524287(%r1), 42
asi 524287(%r15), 42

View File

@ -0,0 +1,19 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: asi -524289, 0
#CHECK: error: invalid operand
#CHECK: asi 524288, 0
#CHECK: error: invalid use of indexed addressing
#CHECK: asi 0(%r1,%r2), 0
#CHECK: error: invalid operand
#CHECK: asi 0, -129
#CHECK: error: invalid operand
#CHECK: asi 0, 128
asi -524289, 0
asi 524288, 0
asi 0(%r1,%r2), 0
asi 0, -129
asi 0, 128

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: axbr %f0, %f0 # encoding: [0xb3,0x4a,0x00,0x00]
#CHECK: axbr %f0, %f13 # encoding: [0xb3,0x4a,0x00,0x0d]
#CHECK: axbr %f8, %f8 # encoding: [0xb3,0x4a,0x00,0x88]
#CHECK: axbr %f13, %f0 # encoding: [0xb3,0x4a,0x00,0xd0]
axbr %f0, %f0
axbr %f0, %f13
axbr %f8, %f8
axbr %f13, %f0

View File

@ -0,0 +1,17 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: axbr %f0, %f2
#CHECK: error: invalid register
#CHECK: axbr %f0, %f14
#CHECK: error: invalid register
#CHECK: axbr %f2, %f0
#CHECK: error: invalid register
#CHECK: axbr %f14, %f0
axbr %f0, %f2
axbr %f0, %f14
axbr %f2, %f0
axbr %f14, %f0

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ay %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x5a]
#CHECK: ay %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x5a]
#CHECK: ay %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x5a]
#CHECK: ay %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x5a]
#CHECK: ay %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x5a]
#CHECK: ay %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x5a]
#CHECK: ay %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x5a]
#CHECK: ay %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x5a]
#CHECK: ay %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x5a]
#CHECK: ay %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x5a]
ay %r0, -524288
ay %r0, -1
ay %r0, 0
ay %r0, 1
ay %r0, 524287
ay %r0, 0(%r1)
ay %r0, 0(%r15)
ay %r0, 524287(%r1,%r15)
ay %r0, 524287(%r15,%r1)
ay %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: ay %r0, -524289
#CHECK: error: invalid operand
#CHECK: ay %r0, 524288
ay %r0, -524289
ay %r0, 524288

View File

@ -0,0 +1,12 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: basr %r0, %r1 # encoding: [0x0d,0x01]
#CHECK: basr %r0, %r15 # encoding: [0x0d,0x0f]
#CHECK: basr %r14, %r9 # encoding: [0x0d,0xe9]
#CHECK: basr %r15, %r1 # encoding: [0x0d,0xf1]
basr %r0,%r1
basr %r0,%r15
basr %r14,%r9
basr %r15,%r1

View File

@ -0,0 +1,9 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: br %r1 # encoding: [0x07,0xf1]
#CHECK: br %r14 # encoding: [0x07,0xfe]
#CHECK: br %r15 # encoding: [0x07,0xff]
br %r1
br %r14
br %r15

View File

@ -0,0 +1,31 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: bras %r0, foo # encoding: [0xa7,0x05,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: bras %r14, foo # encoding: [0xa7,0xe5,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: bras %r15, foo # encoding: [0xa7,0xf5,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
bras %r0,foo
bras %r14,foo
bras %r15,foo
#CHECK: bras %r0, bar+100 # encoding: [0xa7,0x05,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
#CHECK: bras %r14, bar+100 # encoding: [0xa7,0xe5,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
#CHECK: bras %r15, bar+100 # encoding: [0xa7,0xf5,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
bras %r0,bar+100
bras %r14,bar+100
bras %r15,bar+100
#CHECK: bras %r0, bar@PLT # encoding: [0xa7,0x05,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
#CHECK: bras %r14, bar@PLT # encoding: [0xa7,0xe5,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
#CHECK: bras %r15, bar@PLT # encoding: [0xa7,0xf5,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
bras %r0,bar@PLT
bras %r14,bar@PLT
bras %r15,bar@PLT

View File

@ -0,0 +1,31 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: brasl %r0, foo # encoding: [0xc0,0x05,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: brasl %r14, foo # encoding: [0xc0,0xe5,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: brasl %r15, foo # encoding: [0xc0,0xf5,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brasl %r0,foo
brasl %r14,foo
brasl %r15,foo
#CHECK: brasl %r0, bar+100 # encoding: [0xc0,0x05,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
#CHECK: brasl %r14, bar+100 # encoding: [0xc0,0xe5,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
#CHECK: brasl %r15, bar+100 # encoding: [0xc0,0xf5,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
brasl %r0,bar+100
brasl %r14,bar+100
brasl %r15,bar+100
#CHECK: brasl %r0, bar@PLT # encoding: [0xc0,0x05,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
#CHECK: brasl %r14, bar@PLT # encoding: [0xc0,0xe5,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
#CHECK: brasl %r15, bar@PLT # encoding: [0xc0,0xf5,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
brasl %r0,bar@PLT
brasl %r14,bar@PLT
brasl %r15,bar@PLT

View File

@ -0,0 +1,238 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: brc 0, foo # encoding: [0xa7,0x04,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 0, foo
#CHECK: brc 1, foo # encoding: [0xa7,0x14,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jo foo # encoding: [0xa7,0x14,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 1, foo
jo foo
#CHECK: brc 2, foo # encoding: [0xa7,0x24,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jh foo # encoding: [0xa7,0x24,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 2, foo
jh foo
#CHECK: brc 3, foo # encoding: [0xa7,0x34,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnle foo # encoding: [0xa7,0x34,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 3, foo
jnle foo
#CHECK: brc 4, foo # encoding: [0xa7,0x44,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jl foo # encoding: [0xa7,0x44,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 4, foo
jl foo
#CHECK: brc 5, foo # encoding: [0xa7,0x54,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnhe foo # encoding: [0xa7,0x54,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 5, foo
jnhe foo
#CHECK: brc 6, foo # encoding: [0xa7,0x64,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jlh foo # encoding: [0xa7,0x64,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 6, foo
jlh foo
#CHECK: brc 7, foo # encoding: [0xa7,0x74,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jne foo # encoding: [0xa7,0x74,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 7, foo
jne foo
#CHECK: brc 8, foo # encoding: [0xa7,0x84,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: je foo # encoding: [0xa7,0x84,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 8, foo
je foo
#CHECK: brc 9, foo # encoding: [0xa7,0x94,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnlh foo # encoding: [0xa7,0x94,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 9, foo
jnlh foo
#CHECK: brc 10, foo # encoding: [0xa7,0xa4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jhe foo # encoding: [0xa7,0xa4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 10, foo
jhe foo
#CHECK: brc 11, foo # encoding: [0xa7,0xb4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnl foo # encoding: [0xa7,0xb4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 11, foo
jnl foo
#CHECK: brc 12, foo # encoding: [0xa7,0xc4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jle foo # encoding: [0xa7,0xc4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 12, foo
jle foo
#CHECK: brc 13, foo # encoding: [0xa7,0xd4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jnh foo # encoding: [0xa7,0xd4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 13, foo
jnh foo
#CHECK: brc 14, foo # encoding: [0xa7,0xe4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: jno foo # encoding: [0xa7,0xe4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 14, foo
jno foo
#CHECK: brc 15, foo # encoding: [0xa7,0xf4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
#CHECK: j foo # encoding: [0xa7,0xf4,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC16DBL
brc 15, foo
j foo
#CHECK: brc 0, bar+100 # encoding: [0xa7,0x04,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
brc 0, bar+100
#CHECK: jo bar+100 # encoding: [0xa7,0x14,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jo bar+100
#CHECK: jh bar+100 # encoding: [0xa7,0x24,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jh bar+100
#CHECK: jnle bar+100 # encoding: [0xa7,0x34,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jnle bar+100
#CHECK: jl bar+100 # encoding: [0xa7,0x44,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jl bar+100
#CHECK: jnhe bar+100 # encoding: [0xa7,0x54,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jnhe bar+100
#CHECK: jlh bar+100 # encoding: [0xa7,0x64,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jlh bar+100
#CHECK: jne bar+100 # encoding: [0xa7,0x74,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jne bar+100
#CHECK: je bar+100 # encoding: [0xa7,0x84,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
je bar+100
#CHECK: jnlh bar+100 # encoding: [0xa7,0x94,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jnlh bar+100
#CHECK: jhe bar+100 # encoding: [0xa7,0xa4,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jhe bar+100
#CHECK: jnl bar+100 # encoding: [0xa7,0xb4,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jnl bar+100
#CHECK: jle bar+100 # encoding: [0xa7,0xc4,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jle bar+100
#CHECK: jnh bar+100 # encoding: [0xa7,0xd4,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jnh bar+100
#CHECK: jno bar+100 # encoding: [0xa7,0xe4,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
jno bar+100
#CHECK: j bar+100 # encoding: [0xa7,0xf4,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC16DBL
j bar+100
#CHECK: brc 0, bar@PLT # encoding: [0xa7,0x04,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
brc 0, bar@PLT
#CHECK: jo bar@PLT # encoding: [0xa7,0x14,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jo bar@PLT
#CHECK: jh bar@PLT # encoding: [0xa7,0x24,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jh bar@PLT
#CHECK: jnle bar@PLT # encoding: [0xa7,0x34,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jnle bar@PLT
#CHECK: jl bar@PLT # encoding: [0xa7,0x44,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jl bar@PLT
#CHECK: jnhe bar@PLT # encoding: [0xa7,0x54,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jnhe bar@PLT
#CHECK: jlh bar@PLT # encoding: [0xa7,0x64,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jlh bar@PLT
#CHECK: jne bar@PLT # encoding: [0xa7,0x74,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jne bar@PLT
#CHECK: je bar@PLT # encoding: [0xa7,0x84,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
je bar@PLT
#CHECK: jnlh bar@PLT # encoding: [0xa7,0x94,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jnlh bar@PLT
#CHECK: jhe bar@PLT # encoding: [0xa7,0xa4,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jhe bar@PLT
#CHECK: jnl bar@PLT # encoding: [0xa7,0xb4,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jnl bar@PLT
#CHECK: jle bar@PLT # encoding: [0xa7,0xc4,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jle bar@PLT
#CHECK: jnh bar@PLT # encoding: [0xa7,0xd4,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jnh bar@PLT
#CHECK: jno bar@PLT # encoding: [0xa7,0xe4,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
jno bar@PLT
#CHECK: j bar@PLT # encoding: [0xa7,0xf4,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC16DBL
j bar@PLT

View File

@ -0,0 +1,13 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: brc foo, bar
#CHECK: error: invalid operand
#CHECK: brc -1, bar
#CHECK: error: invalid operand
#CHECK: brc 16, bar
brc foo, bar
brc -1, bar
brc 16, bar

View File

@ -0,0 +1,238 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: brcl 0, foo # encoding: [0xc0,0x04,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 0, foo
#CHECK: brcl 1, foo # encoding: [0xc0,0x14,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgo foo # encoding: [0xc0,0x14,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 1, foo
jgo foo
#CHECK: brcl 2, foo # encoding: [0xc0,0x24,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgh foo # encoding: [0xc0,0x24,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 2, foo
jgh foo
#CHECK: brcl 3, foo # encoding: [0xc0,0x34,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnle foo # encoding: [0xc0,0x34,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 3, foo
jgnle foo
#CHECK: brcl 4, foo # encoding: [0xc0,0x44,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgl foo # encoding: [0xc0,0x44,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 4, foo
jgl foo
#CHECK: brcl 5, foo # encoding: [0xc0,0x54,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnhe foo # encoding: [0xc0,0x54,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 5, foo
jgnhe foo
#CHECK: brcl 6, foo # encoding: [0xc0,0x64,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jglh foo # encoding: [0xc0,0x64,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 6, foo
jglh foo
#CHECK: brcl 7, foo # encoding: [0xc0,0x74,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgne foo # encoding: [0xc0,0x74,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 7, foo
jgne foo
#CHECK: brcl 8, foo # encoding: [0xc0,0x84,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jge foo # encoding: [0xc0,0x84,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 8, foo
jge foo
#CHECK: brcl 9, foo # encoding: [0xc0,0x94,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnlh foo # encoding: [0xc0,0x94,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 9, foo
jgnlh foo
#CHECK: brcl 10, foo # encoding: [0xc0,0xa4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jghe foo # encoding: [0xc0,0xa4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 10, foo
jghe foo
#CHECK: brcl 11, foo # encoding: [0xc0,0xb4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnl foo # encoding: [0xc0,0xb4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 11, foo
jgnl foo
#CHECK: brcl 12, foo # encoding: [0xc0,0xc4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgle foo # encoding: [0xc0,0xc4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 12, foo
jgle foo
#CHECK: brcl 13, foo # encoding: [0xc0,0xd4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgnh foo # encoding: [0xc0,0xd4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 13, foo
jgnh foo
#CHECK: brcl 14, foo # encoding: [0xc0,0xe4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jgno foo # encoding: [0xc0,0xe4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 14, foo
jgno foo
#CHECK: brcl 15, foo # encoding: [0xc0,0xf4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: jg foo # encoding: [0xc0,0xf4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
brcl 15, foo
jg foo
#CHECK: brcl 0, bar+100 # encoding: [0xc0,0x04,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
brcl 0, bar+100
#CHECK: jgo bar+100 # encoding: [0xc0,0x14,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgo bar+100
#CHECK: jgh bar+100 # encoding: [0xc0,0x24,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgh bar+100
#CHECK: jgnle bar+100 # encoding: [0xc0,0x34,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgnle bar+100
#CHECK: jgl bar+100 # encoding: [0xc0,0x44,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgl bar+100
#CHECK: jgnhe bar+100 # encoding: [0xc0,0x54,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgnhe bar+100
#CHECK: jglh bar+100 # encoding: [0xc0,0x64,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jglh bar+100
#CHECK: jgne bar+100 # encoding: [0xc0,0x74,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgne bar+100
#CHECK: jge bar+100 # encoding: [0xc0,0x84,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jge bar+100
#CHECK: jgnlh bar+100 # encoding: [0xc0,0x94,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgnlh bar+100
#CHECK: jghe bar+100 # encoding: [0xc0,0xa4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jghe bar+100
#CHECK: jgnl bar+100 # encoding: [0xc0,0xb4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgnl bar+100
#CHECK: jgle bar+100 # encoding: [0xc0,0xc4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgle bar+100
#CHECK: jgnh bar+100 # encoding: [0xc0,0xd4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgnh bar+100
#CHECK: jgno bar+100 # encoding: [0xc0,0xe4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jgno bar+100
#CHECK: jg bar+100 # encoding: [0xc0,0xf4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
jg bar+100
#CHECK: brcl 0, bar@PLT # encoding: [0xc0,0x04,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
brcl 0, bar@PLT
#CHECK: jgo bar@PLT # encoding: [0xc0,0x14,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgo bar@PLT
#CHECK: jgh bar@PLT # encoding: [0xc0,0x24,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgh bar@PLT
#CHECK: jgnle bar@PLT # encoding: [0xc0,0x34,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgnle bar@PLT
#CHECK: jgl bar@PLT # encoding: [0xc0,0x44,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgl bar@PLT
#CHECK: jgnhe bar@PLT # encoding: [0xc0,0x54,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgnhe bar@PLT
#CHECK: jglh bar@PLT # encoding: [0xc0,0x64,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jglh bar@PLT
#CHECK: jgne bar@PLT # encoding: [0xc0,0x74,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgne bar@PLT
#CHECK: jge bar@PLT # encoding: [0xc0,0x84,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jge bar@PLT
#CHECK: jgnlh bar@PLT # encoding: [0xc0,0x94,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgnlh bar@PLT
#CHECK: jghe bar@PLT # encoding: [0xc0,0xa4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jghe bar@PLT
#CHECK: jgnl bar@PLT # encoding: [0xc0,0xb4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgnl bar@PLT
#CHECK: jgle bar@PLT # encoding: [0xc0,0xc4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgle bar@PLT
#CHECK: jgnh bar@PLT # encoding: [0xc0,0xd4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgnh bar@PLT
#CHECK: jgno bar@PLT # encoding: [0xc0,0xe4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jgno bar@PLT
#CHECK: jg bar@PLT # encoding: [0xc0,0xf4,A,A,A,A]
#CHECK: fixup A - offset: 2, value: bar@PLT+2, kind: FK_390_PC32DBL
jg bar@PLT

View File

@ -0,0 +1,13 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: brcl foo, bar
#CHECK: error: invalid operand
#CHECK: brcl -1, bar
#CHECK: error: invalid operand
#CHECK: brcl 16, bar
brcl foo, bar
brcl -1, bar
brcl 16, bar

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: c %r0, 0 # encoding: [0x59,0x00,0x00,0x00]
#CHECK: c %r0, 4095 # encoding: [0x59,0x00,0x0f,0xff]
#CHECK: c %r0, 0(%r1) # encoding: [0x59,0x00,0x10,0x00]
#CHECK: c %r0, 0(%r15) # encoding: [0x59,0x00,0xf0,0x00]
#CHECK: c %r0, 4095(%r1,%r15) # encoding: [0x59,0x01,0xff,0xff]
#CHECK: c %r0, 4095(%r15,%r1) # encoding: [0x59,0x0f,0x1f,0xff]
#CHECK: c %r15, 0 # encoding: [0x59,0xf0,0x00,0x00]
c %r0, 0
c %r0, 4095
c %r0, 0(%r1)
c %r0, 0(%r15)
c %r0, 4095(%r1,%r15)
c %r0, 4095(%r15,%r1)
c %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: c %r0, -1
#CHECK: error: invalid operand
#CHECK: c %r0, 4096
c %r0, -1
c %r0, 4096

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cdb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x19]
#CHECK: cdb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x19]
#CHECK: cdb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x19]
#CHECK: cdb %f0, 0(%r15) # encoding: [0xed,0x00,0xf0,0x00,0x00,0x19]
#CHECK: cdb %f0, 4095(%r1,%r15) # encoding: [0xed,0x01,0xff,0xff,0x00,0x19]
#CHECK: cdb %f0, 4095(%r15,%r1) # encoding: [0xed,0x0f,0x1f,0xff,0x00,0x19]
#CHECK: cdb %f15, 0 # encoding: [0xed,0xf0,0x00,0x00,0x00,0x19]
cdb %f0, 0
cdb %f0, 4095
cdb %f0, 0(%r1)
cdb %f0, 0(%r15)
cdb %f0, 4095(%r1,%r15)
cdb %f0, 4095(%r15,%r1)
cdb %f15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: cdb %f0, -1
#CHECK: error: invalid operand
#CHECK: cdb %f0, 4096
cdb %f0, -1
cdb %f0, 4096

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cdbr %f0, %f0 # encoding: [0xb3,0x19,0x00,0x00]
#CHECK: cdbr %f0, %f15 # encoding: [0xb3,0x19,0x00,0x0f]
#CHECK: cdbr %f7, %f8 # encoding: [0xb3,0x19,0x00,0x78]
#CHECK: cdbr %f15, %f0 # encoding: [0xb3,0x19,0x00,0xf0]
cdbr %f0, %f0
cdbr %f0, %f15
cdbr %f7, %f8
cdbr %f15, %f0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cdfbr %f0, %r0 # encoding: [0xb3,0x95,0x00,0x00]
#CHECK: cdfbr %f0, %r15 # encoding: [0xb3,0x95,0x00,0x0f]
#CHECK: cdfbr %f15, %r0 # encoding: [0xb3,0x95,0x00,0xf0]
#CHECK: cdfbr %f7, %r8 # encoding: [0xb3,0x95,0x00,0x78]
#CHECK: cdfbr %f15, %r15 # encoding: [0xb3,0x95,0x00,0xff]
cdfbr %f0, %r0
cdfbr %f0, %r15
cdfbr %f15, %r0
cdfbr %f7, %r8
cdfbr %f15, %r15

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cdfbr %r0, %r0
#CHECK: error: invalid register
#CHECK: cdfbr %f0, %f0
#CHECK: error: invalid register
#CHECK: cdfbr %f0, %a0
#CHECK: error: invalid register
#CHECK: cdfbr %a0, %r0
cdfbr %r0, %r0
cdfbr %f0, %f0
cdfbr %f0, %a0
cdfbr %a0, %r0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cdgbr %f0, %r0 # encoding: [0xb3,0xa5,0x00,0x00]
#CHECK: cdgbr %f0, %r15 # encoding: [0xb3,0xa5,0x00,0x0f]
#CHECK: cdgbr %f15, %r0 # encoding: [0xb3,0xa5,0x00,0xf0]
#CHECK: cdgbr %f7, %r8 # encoding: [0xb3,0xa5,0x00,0x78]
#CHECK: cdgbr %f15, %r15 # encoding: [0xb3,0xa5,0x00,0xff]
cdgbr %f0, %r0
cdgbr %f0, %r15
cdgbr %f15, %r0
cdgbr %f7, %r8
cdgbr %f15, %r15

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cdgbr %r0, %r0
#CHECK: error: invalid register
#CHECK: cdgbr %f0, %f0
#CHECK: error: invalid register
#CHECK: cdgbr %f0, %a0
#CHECK: error: invalid register
#CHECK: cdgbr %a0, %r0
cdgbr %r0, %r0
cdgbr %f0, %f0
cdgbr %f0, %a0
cdgbr %a0, %r0

View File

@ -0,0 +1,17 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: ceb %f0, 0 # encoding: [0xed,0x00,0x00,0x00,0x00,0x09]
#CHECK: ceb %f0, 4095 # encoding: [0xed,0x00,0x0f,0xff,0x00,0x09]
#CHECK: ceb %f0, 0(%r1) # encoding: [0xed,0x00,0x10,0x00,0x00,0x09]
#CHECK: ceb %f0, 0(%r15) # encoding: [0xed,0x00,0xf0,0x00,0x00,0x09]
#CHECK: ceb %f0, 4095(%r1,%r15) # encoding: [0xed,0x01,0xff,0xff,0x00,0x09]
#CHECK: ceb %f0, 4095(%r15,%r1) # encoding: [0xed,0x0f,0x1f,0xff,0x00,0x09]
#CHECK: ceb %f15, 0 # encoding: [0xed,0xf0,0x00,0x00,0x00,0x09]
ceb %f0, 0
ceb %f0, 4095
ceb %f0, 0(%r1)
ceb %f0, 0(%r15)
ceb %f0, 4095(%r1,%r15)
ceb %f0, 4095(%r15,%r1)
ceb %f15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: ceb %f0, -1
#CHECK: error: invalid operand
#CHECK: ceb %f0, 4096
ceb %f0, -1
ceb %f0, 4096

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cebr %f0, %f0 # encoding: [0xb3,0x09,0x00,0x00]
#CHECK: cebr %f0, %f15 # encoding: [0xb3,0x09,0x00,0x0f]
#CHECK: cebr %f7, %f8 # encoding: [0xb3,0x09,0x00,0x78]
#CHECK: cebr %f15, %f0 # encoding: [0xb3,0x09,0x00,0xf0]
cebr %f0, %f0
cebr %f0, %f15
cebr %f7, %f8
cebr %f15, %f0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cefbr %f0, %r0 # encoding: [0xb3,0x94,0x00,0x00]
#CHECK: cefbr %f0, %r15 # encoding: [0xb3,0x94,0x00,0x0f]
#CHECK: cefbr %f15, %r0 # encoding: [0xb3,0x94,0x00,0xf0]
#CHECK: cefbr %f7, %r8 # encoding: [0xb3,0x94,0x00,0x78]
#CHECK: cefbr %f15, %r15 # encoding: [0xb3,0x94,0x00,0xff]
cefbr %f0, %r0
cefbr %f0, %r15
cefbr %f15, %r0
cefbr %f7, %r8
cefbr %f15, %r15

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cefbr %r0, %r0
#CHECK: error: invalid register
#CHECK: cefbr %f0, %f0
#CHECK: error: invalid register
#CHECK: cefbr %f0, %a0
#CHECK: error: invalid register
#CHECK: cefbr %a0, %r0
cefbr %r0, %r0
cefbr %f0, %f0
cefbr %f0, %a0
cefbr %a0, %r0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cegbr %f0, %r0 # encoding: [0xb3,0xa4,0x00,0x00]
#CHECK: cegbr %f0, %r15 # encoding: [0xb3,0xa4,0x00,0x0f]
#CHECK: cegbr %f15, %r0 # encoding: [0xb3,0xa4,0x00,0xf0]
#CHECK: cegbr %f7, %r8 # encoding: [0xb3,0xa4,0x00,0x78]
#CHECK: cegbr %f15, %r15 # encoding: [0xb3,0xa4,0x00,0xff]
cegbr %f0, %r0
cegbr %f0, %r15
cegbr %f15, %r0
cegbr %f7, %r8
cegbr %f15, %r15

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cegbr %r0, %r0
#CHECK: error: invalid register
#CHECK: cegbr %f0, %f0
#CHECK: error: invalid register
#CHECK: cegbr %f0, %a0
#CHECK: error: invalid register
#CHECK: cegbr %a0, %r0
cegbr %r0, %r0
cegbr %f0, %f0
cegbr %f0, %a0
cegbr %a0, %r0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cfdbr %r0, 0, %f0 # encoding: [0xb3,0x99,0x00,0x00]
#CHECK: cfdbr %r0, 0, %f15 # encoding: [0xb3,0x99,0x00,0x0f]
#CHECK: cfdbr %r0, 15, %f0 # encoding: [0xb3,0x99,0xf0,0x00]
#CHECK: cfdbr %r4, 5, %f6 # encoding: [0xb3,0x99,0x50,0x46]
#CHECK: cfdbr %r15, 0, %f0 # encoding: [0xb3,0x99,0x00,0xf0]
cfdbr %r0, 0, %f0
cfdbr %r0, 0, %f15
cfdbr %r0, 15, %f0
cfdbr %r4, 5, %f6
cfdbr %r15, 0, %f0

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cfdbr %r0, 0, %r0
#CHECK: error: invalid register
#CHECK: cfdbr %f0, 0, %f0
#CHECK: error: invalid operand
#CHECK: cfdbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfdbr %r0, 16, %f0
cfdbr %r0, 0, %r0
cfdbr %f0, 0, %f0
cfdbr %r0, -1, %f0
cfdbr %r0, 16, %f0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cfebr %r0, 0, %f0 # encoding: [0xb3,0x98,0x00,0x00]
#CHECK: cfebr %r0, 0, %f15 # encoding: [0xb3,0x98,0x00,0x0f]
#CHECK: cfebr %r0, 15, %f0 # encoding: [0xb3,0x98,0xf0,0x00]
#CHECK: cfebr %r4, 5, %f6 # encoding: [0xb3,0x98,0x50,0x46]
#CHECK: cfebr %r15, 0, %f0 # encoding: [0xb3,0x98,0x00,0xf0]
cfebr %r0, 0, %f0
cfebr %r0, 0, %f15
cfebr %r0, 15, %f0
cfebr %r4, 5, %f6
cfebr %r15, 0, %f0

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cfebr %r0, 0, %r0
#CHECK: error: invalid register
#CHECK: cfebr %f0, 0, %f0
#CHECK: error: invalid operand
#CHECK: cfebr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfebr %r0, 16, %f0
cfebr %r0, 0, %r0
cfebr %f0, 0, %f0
cfebr %r0, -1, %f0
cfebr %r0, 16, %f0

View File

@ -0,0 +1,15 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cfi %r0, -2147483648 # encoding: [0xc2,0x0d,0x80,0x00,0x00,0x00]
#CHECK: cfi %r0, -1 # encoding: [0xc2,0x0d,0xff,0xff,0xff,0xff]
#CHECK: cfi %r0, 0 # encoding: [0xc2,0x0d,0x00,0x00,0x00,0x00]
#CHECK: cfi %r0, 1 # encoding: [0xc2,0x0d,0x00,0x00,0x00,0x01]
#CHECK: cfi %r0, 2147483647 # encoding: [0xc2,0x0d,0x7f,0xff,0xff,0xff]
#CHECK: cfi %r15, 0 # encoding: [0xc2,0xfd,0x00,0x00,0x00,0x00]
cfi %r0, -1 << 31
cfi %r0, -1
cfi %r0, 0
cfi %r0, 1
cfi %r0, (1 << 31) - 1
cfi %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: cfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: cfi %r0, (1 << 31)
cfi %r0, (-1 << 31) - 1
cfi %r0, (1 << 31)

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cfxbr %r0, 0, %f0 # encoding: [0xb3,0x9a,0x00,0x00]
#CHECK: cfxbr %r0, 0, %f13 # encoding: [0xb3,0x9a,0x00,0x0d]
#CHECK: cfxbr %r0, 15, %f0 # encoding: [0xb3,0x9a,0xf0,0x00]
#CHECK: cfxbr %r4, 5, %f8 # encoding: [0xb3,0x9a,0x50,0x48]
#CHECK: cfxbr %r15, 0, %f0 # encoding: [0xb3,0x9a,0x00,0xf0]
cfxbr %r0, 0, %f0
cfxbr %r0, 0, %f13
cfxbr %r0, 15, %f0
cfxbr %r4, 5, %f8
cfxbr %r15, 0, %f0

View File

@ -0,0 +1,23 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cfxbr %r0, 0, %r0
#CHECK: error: invalid register
#CHECK: cfxbr %f0, 0, %f0
#CHECK: error: invalid operand
#CHECK: cfxbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cfxbr %r0, 16, %f0
#CHECK: error: invalid register
#CHECK: cfxbr %r0, 0, %f2
#CHECK: error: invalid register
#CHECK: cfxbr %r0, 0, %f14
cfxbr %r0, 0, %r0
cfxbr %f0, 0, %f0
cfxbr %r0, -1, %f0
cfxbr %r0, 16, %f0
cfxbr %r0, 0, %f2
cfxbr %r0, 0, %f14

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cg %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x20]
#CHECK: cg %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x20]
#CHECK: cg %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x20]
#CHECK: cg %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x20]
#CHECK: cg %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x20]
#CHECK: cg %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x20]
#CHECK: cg %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x20]
#CHECK: cg %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x20]
#CHECK: cg %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x20]
#CHECK: cg %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x20]
cg %r0, -524288
cg %r0, -1
cg %r0, 0
cg %r0, 1
cg %r0, 524287
cg %r0, 0(%r1)
cg %r0, 0(%r15)
cg %r0, 524287(%r1,%r15)
cg %r0, 524287(%r15,%r1)
cg %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: cg %r0, -524289
#CHECK: error: invalid operand
#CHECK: cg %r0, 524288
cg %r0, -524289
cg %r0, 524288

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cgdbr %r0, 0, %f0 # encoding: [0xb3,0xa9,0x00,0x00]
#CHECK: cgdbr %r0, 0, %f15 # encoding: [0xb3,0xa9,0x00,0x0f]
#CHECK: cgdbr %r0, 15, %f0 # encoding: [0xb3,0xa9,0xf0,0x00]
#CHECK: cgdbr %r4, 5, %f6 # encoding: [0xb3,0xa9,0x50,0x46]
#CHECK: cgdbr %r15, 0, %f0 # encoding: [0xb3,0xa9,0x00,0xf0]
cgdbr %r0, 0, %f0
cgdbr %r0, 0, %f15
cgdbr %r0, 15, %f0
cgdbr %r4, 5, %f6
cgdbr %r15, 0, %f0

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cgdbr %r0, 0, %r0
#CHECK: error: invalid register
#CHECK: cgdbr %f0, 0, %f0
#CHECK: error: invalid operand
#CHECK: cgdbr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgdbr %r0, 16, %f0
cgdbr %r0, 0, %r0
cgdbr %f0, 0, %f0
cgdbr %r0, -1, %f0
cgdbr %r0, 16, %f0

View File

@ -0,0 +1,13 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cgebr %r0, 0, %f0 # encoding: [0xb3,0xa8,0x00,0x00]
#CHECK: cgebr %r0, 0, %f15 # encoding: [0xb3,0xa8,0x00,0x0f]
#CHECK: cgebr %r0, 15, %f0 # encoding: [0xb3,0xa8,0xf0,0x00]
#CHECK: cgebr %r4, 5, %f6 # encoding: [0xb3,0xa8,0x50,0x46]
#CHECK: cgebr %r15, 0, %f0 # encoding: [0xb3,0xa8,0x00,0xf0]
cgebr %r0, 0, %f0
cgebr %r0, 0, %f15
cgebr %r0, 15, %f0
cgebr %r4, 5, %f6
cgebr %r15, 0, %f0

View File

@ -0,0 +1,16 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid register
#CHECK: cgebr %r0, 0, %r0
#CHECK: error: invalid register
#CHECK: cgebr %f0, 0, %f0
#CHECK: error: invalid operand
#CHECK: cgebr %r0, -1, %f0
#CHECK: error: invalid operand
#CHECK: cgebr %r0, 16, %f0
cgebr %r0, 0, %r0
cgebr %f0, 0, %f0
cgebr %r0, -1, %f0
cgebr %r0, 16, %f0

View File

@ -0,0 +1,23 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cgf %r0, -524288 # encoding: [0xe3,0x00,0x00,0x00,0x80,0x30]
#CHECK: cgf %r0, -1 # encoding: [0xe3,0x00,0x0f,0xff,0xff,0x30]
#CHECK: cgf %r0, 0 # encoding: [0xe3,0x00,0x00,0x00,0x00,0x30]
#CHECK: cgf %r0, 1 # encoding: [0xe3,0x00,0x00,0x01,0x00,0x30]
#CHECK: cgf %r0, 524287 # encoding: [0xe3,0x00,0x0f,0xff,0x7f,0x30]
#CHECK: cgf %r0, 0(%r1) # encoding: [0xe3,0x00,0x10,0x00,0x00,0x30]
#CHECK: cgf %r0, 0(%r15) # encoding: [0xe3,0x00,0xf0,0x00,0x00,0x30]
#CHECK: cgf %r0, 524287(%r1,%r15) # encoding: [0xe3,0x01,0xff,0xff,0x7f,0x30]
#CHECK: cgf %r0, 524287(%r15,%r1) # encoding: [0xe3,0x0f,0x1f,0xff,0x7f,0x30]
#CHECK: cgf %r15, 0 # encoding: [0xe3,0xf0,0x00,0x00,0x00,0x30]
cgf %r0, -524288
cgf %r0, -1
cgf %r0, 0
cgf %r0, 1
cgf %r0, 524287
cgf %r0, 0(%r1)
cgf %r0, 0(%r15)
cgf %r0, 524287(%r1,%r15)
cgf %r0, 524287(%r15,%r1)
cgf %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: cgf %r0, -524289
#CHECK: error: invalid operand
#CHECK: cgf %r0, 524288
cgf %r0, -524289
cgf %r0, 524288

View File

@ -0,0 +1,15 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cgfi %r0, -2147483648 # encoding: [0xc2,0x0c,0x80,0x00,0x00,0x00]
#CHECK: cgfi %r0, -1 # encoding: [0xc2,0x0c,0xff,0xff,0xff,0xff]
#CHECK: cgfi %r0, 0 # encoding: [0xc2,0x0c,0x00,0x00,0x00,0x00]
#CHECK: cgfi %r0, 1 # encoding: [0xc2,0x0c,0x00,0x00,0x00,0x01]
#CHECK: cgfi %r0, 2147483647 # encoding: [0xc2,0x0c,0x7f,0xff,0xff,0xff]
#CHECK: cgfi %r15, 0 # encoding: [0xc2,0xfc,0x00,0x00,0x00,0x00]
cgfi %r0, -1 << 31
cgfi %r0, -1
cgfi %r0, 0
cgfi %r0, 1
cgfi %r0, (1 << 31) - 1
cgfi %r15, 0

View File

@ -0,0 +1,10 @@
# RUN: not llvm-mc -triple s390x-linux-gnu < %s 2> %t
# RUN: FileCheck < %t %s
#CHECK: error: invalid operand
#CHECK: cgfi %r0, (-1 << 31) - 1
#CHECK: error: invalid operand
#CHECK: cgfi %r0, (1 << 31)
cgfi %r0, (-1 << 31) - 1
cgfi %r0, (1 << 31)

View File

@ -0,0 +1,11 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cgfr %r0, %r0 # encoding: [0xb9,0x30,0x00,0x00]
#CHECK: cgfr %r0, %r15 # encoding: [0xb9,0x30,0x00,0x0f]
#CHECK: cgfr %r15, %r0 # encoding: [0xb9,0x30,0x00,0xf0]
#CHECK: cgfr %r7, %r8 # encoding: [0xb9,0x30,0x00,0x78]
cgfr %r0,%r0
cgfr %r0,%r15
cgfr %r15,%r0
cgfr %r7,%r8

View File

@ -0,0 +1,31 @@
# RUN: llvm-mc -triple s390x-linux-gnu -show-encoding %s | FileCheck %s
#CHECK: cgfrl %r0, 2864434397 # encoding: [0xc6,0x0c,0x55,0x5d,0xe6,0x6e]
#CHECK: cgfrl %r15, 2864434397 # encoding: [0xc6,0xfc,0x55,0x5d,0xe6,0x6e]
cgfrl %r0,0xaabbccdd
cgfrl %r15,0xaabbccdd
#CHECK: cgfrl %r0, foo # encoding: [0xc6,0x0c,A,A,A,A]
# fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
#CHECK: cgfrl %r15, foo # encoding: [0xc6,0xfc,A,A,A,A]
# fixup A - offset: 2, value: foo+2, kind: FK_390_PC32DBL
cgfrl %r0,foo
cgfrl %r15,foo
#CHECK: cgfrl %r3, bar+100 # encoding: [0xc6,0x3c,A,A,A,A]
# fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
#CHECK: cgfrl %r4, bar+100 # encoding: [0xc6,0x4c,A,A,A,A]
# fixup A - offset: 2, value: (bar+100)+2, kind: FK_390_PC32DBL
cgfrl %r3,bar+100
cgfrl %r4,bar+100
#CHECK: cgfrl %r7, frob@PLT # encoding: [0xc6,0x7c,A,A,A,A]
# fixup A - offset: 2, value: frob@PLT+2, kind: FK_390_PC32DBL
#CHECK: cgfrl %r8, frob@PLT # encoding: [0xc6,0x8c,A,A,A,A]
# fixup A - offset: 2, value: frob@PLT+2, kind: FK_390_PC32DBL
cgfrl %r7,frob@PLT
cgfrl %r8,frob@PLT

Some files were not shown because too many files have changed in this diff Show More