[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / Mips / crc / invalid.s
blobf8e0fba7da0ab66fa71080e0aa90f0e01a8c06cf
1 # Instructions that are invalid.
3 # RUN: not llvm-mc %s -arch=mips -mcpu=mips32r6 -mattr=+crc 2>%t1
4 # RUN: FileCheck %s < %t1
5 # RUN: not llvm-mc %s -arch=mips64 -mcpu=mips64r6 -mattr=+crc 2>%t1
6 # RUN: FileCheck %s < %t1
8 .set noat
9 crc32b $1, $2, $2 # CHECK: :[[@LINE]]:3: error: source and destination must match
10 crc32b $1, $2, $3 # CHECK: :[[@LINE]]:3: error: source and destination must match
11 crc32b $1, $2, 2 # CHECK: :[[@LINE]]:19: error: invalid operand for instruction
12 crc32b $1, 2, $2 # CHECK: :[[@LINE]]:15: error: invalid operand for instruction
13 crc32b 1, $2, $2 # CHECK: :[[@LINE]]:11: error: invalid operand for instruction
14 crc32b $1, $2 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
15 crc32b $1 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
16 crc32b $1, $2, 0($2) # CHECK: :[[@LINE]]:19: error: invalid operand for instruction
18 crc32h $1, $2, $2 # CHECK: :[[@LINE]]:3: error: source and destination must match
19 crc32h $1, $2, $3 # CHECK: :[[@LINE]]:3: error: source and destination must match
20 crc32h $1, $2, 2 # CHECK: :[[@LINE]]:19: error: invalid operand for instruction
21 crc32h $1, 2, $2 # CHECK: :[[@LINE]]:15: error: invalid operand for instruction
22 crc32h 1, $2, $2 # CHECK: :[[@LINE]]:11: error: invalid operand for instruction
23 crc32h $1, $2 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
24 crc32h $1 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
25 crc32h $1, $2, 0($2) # CHECK: :[[@LINE]]:19: error: invalid operand for instruction
27 crc32w $1, $2, $2 # CHECK: :[[@LINE]]:3: error: source and destination must match
28 crc32w $1, $2, $3 # CHECK: :[[@LINE]]:3: error: source and destination must match
29 crc32w $1, $2, 2 # CHECK: :[[@LINE]]:19: error: invalid operand for instruction
30 crc32w $1, 2, $2 # CHECK: :[[@LINE]]:15: error: invalid operand for instruction
31 crc32w 1, $2, $2 # CHECK: :[[@LINE]]:11: error: invalid operand for instruction
32 crc32w $1, $2 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
33 crc32w $1 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
34 crc32w $1, $2, 0($2) # CHECK: :[[@LINE]]:19: error: invalid operand for instruction
36 crc32cb $1, $2, $2 # CHECK: :[[@LINE]]:3: error: source and destination must match
37 crc32cb $1, $2, $3 # CHECK: :[[@LINE]]:3: error: source and destination must match
38 crc32cb $1, $2, 2 # CHECK: :[[@LINE]]:20: error: invalid operand for instruction
39 crc32cb $1, 2, $2 # CHECK: :[[@LINE]]:16: error: invalid operand for instruction
40 crc32cb 1, $2, $2 # CHECK: :[[@LINE]]:12: error: invalid operand for instruction
41 crc32cb $1, $2 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
42 crc32cb $1 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
43 crc32cb $1, $2, 0($2) # CHECK: :[[@LINE]]:20: error: invalid operand for instruction
45 crc32ch $1, $2, $2 # CHECK: :[[@LINE]]:3: error: source and destination must match
46 crc32ch $1, $2, $3 # CHECK: :[[@LINE]]:3: error: source and destination must match
47 crc32ch $1, $2, 2 # CHECK: :[[@LINE]]:20: error: invalid operand for instruction
48 crc32ch $1, 2, $2 # CHECK: :[[@LINE]]:16: error: invalid operand for instruction
49 crc32ch 1, $2, $2 # CHECK: :[[@LINE]]:12: error: invalid operand for instruction
50 crc32ch $1, $2 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
51 crc32ch $1 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
52 crc32ch $1, $2, 0($2) # CHECK: :[[@LINE]]:20: error: invalid operand for instruction
54 crc32cw $1, $2, $2 # CHECK: :[[@LINE]]:3: error: source and destination must match
55 crc32cw $1, $2, $3 # CHECK: :[[@LINE]]:3: error: source and destination must match
56 crc32cw $1, $2, 2 # CHECK: :[[@LINE]]:20: error: invalid operand for instruction
57 crc32cw $1, 2, $2 # CHECK: :[[@LINE]]:16: error: invalid operand for instruction
58 crc32cw 1, $2, $2 # CHECK: :[[@LINE]]:12: error: invalid operand for instruction
59 crc32cw $1, $2 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
60 crc32cw $1 # CHECK: :[[@LINE]]:3: error: too few operands for instruction
61 crc32cw $1, $2, 0($2) # CHECK: :[[@LINE]]:20: error: invalid operand for instruction
63 crc32 $1, $2, $2 # CHECK: :[[@LINE]]:3: error: unknown instruction
64 crcb $1, $2, $2 # CHECK: :[[@LINE]]:3: error: unknown instruction
65 crc $1, $2, $2 # CHECK: :[[@LINE]]:3: error: unknown instruction