1# For z196 only. 2# RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=z196 < %s 2> %t 3# RUN: FileCheck < %t %s 4 5#CHECK: error: invalid operand 6#CHECK: aghik %r0, %r1, -32769 7#CHECK: error: invalid operand 8#CHECK: aghik %r0, %r1, 32768 9#CHECK: error: invalid operand 10#CHECK: aghik %r0, %r1, foo 11 12 aghik %r0, %r1, -32769 13 aghik %r0, %r1, 32768 14 aghik %r0, %r1, foo 15 16#CHECK: error: invalid operand 17#CHECK: ahik %r0, %r1, -32769 18#CHECK: error: invalid operand 19#CHECK: ahik %r0, %r1, 32768 20#CHECK: error: invalid operand 21#CHECK: ahik %r0, %r1, foo 22 23 ahik %r0, %r1, -32769 24 ahik %r0, %r1, 32768 25 ahik %r0, %r1, foo 26 27#CHECK: error: invalid operand 28#CHECK: loc %r0,0,-1 29#CHECK: error: invalid operand 30#CHECK: loc %r0,0,16 31#CHECK: error: invalid operand 32#CHECK: loc %r0,-524289,1 33#CHECK: error: invalid operand 34#CHECK: loc %r0,524288,1 35#CHECK: error: invalid use of indexed addressing 36#CHECK: loc %r0,0(%r1,%r2),1 37 38 loc %r0,0,-1 39 loc %r0,0,16 40 loc %r0,-524289,1 41 loc %r0,524288,1 42 loc %r0,0(%r1,%r2),1 43 44#CHECK: error: invalid operand 45#CHECK: locg %r0,0,-1 46#CHECK: error: invalid operand 47#CHECK: locg %r0,0,16 48#CHECK: error: invalid operand 49#CHECK: locg %r0,-524289,1 50#CHECK: error: invalid operand 51#CHECK: locg %r0,524288,1 52#CHECK: error: invalid use of indexed addressing 53#CHECK: locg %r0,0(%r1,%r2),1 54 55 locg %r0,0,-1 56 locg %r0,0,16 57 locg %r0,-524289,1 58 locg %r0,524288,1 59 locg %r0,0(%r1,%r2),1 60 61#CHECK: error: invalid operand 62#CHECK: locgr %r0,%r0,-1 63#CHECK: error: invalid operand 64#CHECK: locgr %r0,%r0,16 65 66 locgr %r0,%r0,-1 67 locgr %r0,%r0,16 68 69#CHECK: error: invalid operand 70#CHECK: locr %r0,%r0,-1 71#CHECK: error: invalid operand 72#CHECK: locr %r0,%r0,16 73 74 locr %r0,%r0,-1 75 locr %r0,%r0,16 76 77#CHECK: error: invalid operand 78#CHECK: risbhg %r0,%r0,0,0,-1 79#CHECK: error: invalid operand 80#CHECK: risbhg %r0,%r0,0,0,64 81#CHECK: error: invalid operand 82#CHECK: risbhg %r0,%r0,0,-1,0 83#CHECK: error: invalid operand 84#CHECK: risbhg %r0,%r0,0,256,0 85#CHECK: error: invalid operand 86#CHECK: risbhg %r0,%r0,-1,0,0 87#CHECK: error: invalid operand 88#CHECK: risbhg %r0,%r0,256,0,0 89 90 risbhg %r0,%r0,0,0,-1 91 risbhg %r0,%r0,0,0,64 92 risbhg %r0,%r0,0,-1,0 93 risbhg %r0,%r0,0,256,0 94 risbhg %r0,%r0,-1,0,0 95 risbhg %r0,%r0,256,0,0 96 97#CHECK: error: invalid operand 98#CHECK: risblg %r0,%r0,0,0,-1 99#CHECK: error: invalid operand 100#CHECK: risblg %r0,%r0,0,0,64 101#CHECK: error: invalid operand 102#CHECK: risblg %r0,%r0,0,-1,0 103#CHECK: error: invalid operand 104#CHECK: risblg %r0,%r0,0,256,0 105#CHECK: error: invalid operand 106#CHECK: risblg %r0,%r0,-1,0,0 107#CHECK: error: invalid operand 108#CHECK: risblg %r0,%r0,256,0,0 109 110 risblg %r0,%r0,0,0,-1 111 risblg %r0,%r0,0,0,64 112 risblg %r0,%r0,0,-1,0 113 risblg %r0,%r0,0,256,0 114 risblg %r0,%r0,-1,0,0 115 risblg %r0,%r0,256,0,0 116 117#CHECK: error: invalid operand 118#CHECK: sllk %r0,%r0,-524289 119#CHECK: error: invalid operand 120#CHECK: sllk %r0,%r0,524288 121#CHECK: error: %r0 used in an address 122#CHECK: sllk %r0,%r0,0(%r0) 123#CHECK: error: invalid use of indexed addressing 124#CHECK: sllk %r0,%r0,0(%r1,%r2) 125 126 sllk %r0,%r0,-524289 127 sllk %r0,%r0,524288 128 sllk %r0,%r0,0(%r0) 129 sllk %r0,%r0,0(%r1,%r2) 130 131#CHECK: error: invalid operand 132#CHECK: srak %r0,%r0,-524289 133#CHECK: error: invalid operand 134#CHECK: srak %r0,%r0,524288 135#CHECK: error: %r0 used in an address 136#CHECK: srak %r0,%r0,0(%r0) 137#CHECK: error: invalid use of indexed addressing 138#CHECK: srak %r0,%r0,0(%r1,%r2) 139 140 srak %r0,%r0,-524289 141 srak %r0,%r0,524288 142 srak %r0,%r0,0(%r0) 143 srak %r0,%r0,0(%r1,%r2) 144 145#CHECK: error: invalid operand 146#CHECK: srlk %r0,%r0,-524289 147#CHECK: error: invalid operand 148#CHECK: srlk %r0,%r0,524288 149#CHECK: error: %r0 used in an address 150#CHECK: srlk %r0,%r0,0(%r0) 151#CHECK: error: invalid use of indexed addressing 152#CHECK: srlk %r0,%r0,0(%r1,%r2) 153 154 srlk %r0,%r0,-524289 155 srlk %r0,%r0,524288 156 srlk %r0,%r0,0(%r0) 157 srlk %r0,%r0,0(%r1,%r2) 158 159#CHECK: error: invalid operand 160#CHECK: stoc %r0,0,-1 161#CHECK: error: invalid operand 162#CHECK: stoc %r0,0,16 163#CHECK: error: invalid operand 164#CHECK: stoc %r0,-524289,1 165#CHECK: error: invalid operand 166#CHECK: stoc %r0,524288,1 167#CHECK: error: invalid use of indexed addressing 168#CHECK: stoc %r0,0(%r1,%r2),1 169 170 stoc %r0,0,-1 171 stoc %r0,0,16 172 stoc %r0,-524289,1 173 stoc %r0,524288,1 174 stoc %r0,0(%r1,%r2),1 175 176#CHECK: error: invalid operand 177#CHECK: stocg %r0,0,-1 178#CHECK: error: invalid operand 179#CHECK: stocg %r0,0,16 180#CHECK: error: invalid operand 181#CHECK: stocg %r0,-524289,1 182#CHECK: error: invalid operand 183#CHECK: stocg %r0,524288,1 184#CHECK: error: invalid use of indexed addressing 185#CHECK: stocg %r0,0(%r1,%r2),1 186 187 stocg %r0,0,-1 188 stocg %r0,0,16 189 stocg %r0,-524289,1 190 stocg %r0,524288,1 191 stocg %r0,0(%r1,%r2),1 192