1 2 # RUN: not llvm-mc -triple powerpc64-unknown-unknown < %s 2> %t 3 # RUN: FileCheck < %t %s 4 5 # Register operands 6 7 # CHECK: error: invalid operand for instruction 8 # CHECK-NEXT: add 32, 32, 32 9 add 32, 32, 32 10 11 # CHECK: error: invalid register name 12 # CHECK-NEXT: add %r32, %r32, %r32 13 add %r32, %r32, %r32 14 15 # TLS register operands 16 17 # CHECK: error: invalid operand for instruction 18 # CHECK-NEXT: add 3, symbol@tls, 4 19 add 3, symbol@tls, 4 20 21 # CHECK: error: invalid operand for instruction 22 # CHECK-NEXT: subf 3, 4, symbol@tls 23 subf 3, 4, symbol@tls 24 25 # Signed 16-bit immediate operands 26 27 # CHECK: error: invalid operand for instruction 28 # CHECK-NEXT: addi 1, 0, -32769 29 addi 1, 0, -32769 30 31 # CHECK: error: invalid operand for instruction 32 # CHECK-NEXT: addi 1, 0, 32768 33 addi 1, 0, 32768 34 35 # Unsigned 16-bit immediate operands 36 37 # CHECK: error: invalid operand for instruction 38 # CHECK-NEXT: ori 1, 2, -1 39 ori 1, 2, -1 40 41 # CHECK: error: invalid operand for instruction 42 # CHECK-NEXT: ori 1, 2, 65536 43 ori 1, 2, 65536 44 45 # Signed 16-bit immediate operands (extended range for addis) 46 47 # CHECK: error: invalid operand for instruction 48 addis 1, 0, -65537 49 50 # CHECK: error: invalid operand for instruction 51 addis 1, 0, 65536 52 53 # D-Form memory operands 54 55 # CHECK: error: invalid register number 56 # CHECK-NEXT: lwz 1, 0(32) 57 lwz 1, 0(32) 58 59 # CHECK: error: invalid register name 60 # CHECK-NEXT: lwz 1, 0(%r32) 61 lwz 1, 0(%r32) 62 63 # CHECK: error: invalid operand for instruction 64 # CHECK-NEXT: lwz 1, -32769(2) 65 lwz 1, -32769(2) 66 67 # CHECK: error: invalid operand for instruction 68 # CHECK-NEXT: lwz 1, 32768(2) 69 lwz 1, 32768(2) 70 71 # CHECK: error: invalid register number 72 # CHECK-NEXT: ld 1, 0(32) 73 ld 1, 0(32) 74 75 # CHECK: error: invalid register name 76 # CHECK-NEXT: ld 1, 0(%r32) 77 ld 1, 0(%r32) 78 79 # CHECK: error: invalid operand for instruction 80 # CHECK-NEXT: ld 1, 1(2) 81 ld 1, 1(2) 82 83 # CHECK: error: invalid operand for instruction 84 # CHECK-NEXT: ld 1, 2(2) 85 ld 1, 2(2) 86 87 # CHECK: error: invalid operand for instruction 88 # CHECK-NEXT: ld 1, 3(2) 89 ld 1, 3(2) 90 91 # CHECK: error: invalid operand for instruction 92 # CHECK-NEXT: ld 1, -32772(2) 93 ld 1, -32772(2) 94 95 # CHECK: error: invalid operand for instruction 96 # CHECK-NEXT: ld 1, 32768(2) 97 ld 1, 32768(2) 98 99