34830c0fc6eb29ae2a8a102aa6d31ca608fb9a49
[oota-llvm.git] / test / MC / Mips / octeon-instructions.s
1 # RUN: llvm-mc  %s -triple=mips64-unknown-linux -show-encoding -mcpu=octeon | FileCheck %s
2
3 # CHECK: baddu $9, $6, $7             # encoding: [0x70,0xc7,0x48,0x28]
4 # CHECK: baddu $17, $18, $19          # encoding: [0x72,0x53,0x88,0x28]
5 # CHECK: baddu $2, $2, $3             # encoding: [0x70,0x43,0x10,0x28]
6 # CHECK: bbit0 $19, 22, foo           # encoding: [0xca,0x76,A,A]
7 # CHECK: bbit032 $fp, 11, foo         # encoding: [0xdb,0xcb,A,A]
8 # CHECK: bbit032 $8, 10, foo          # encoding: [0xd9,0x0a,A,A]
9 # CHECK: bbit1 $3, 31, foo            # encoding: [0xe8,0x7f,A,A]
10 # CHECK: bbit132 $24, 10, foo         # encoding: [0xfb,0x0a,A,A]
11 # CHECK: bbit132 $14, 14, foo         # encoding: [0xf9,0xce,A,A]
12 # CHECK: cins  $25, $10, 22, 2        # encoding: [0x71,0x59,0x15,0xb2]
13 # CHECK: cins  $9, $9, 17, 29         # encoding: [0x71,0x29,0xec,0x72]
14 # CHECK: cins32 $15, $2, 18, 8        # encoding: [0x70,0x4f,0x44,0xb3]
15 # CHECK: cins32 $22, $22, 9, 22       # encoding: [0x72,0xd6,0xb2,0x73]
16 # CHECK: cins32 $24, $ra, 0, 31       # encoding: [0x73,0xf8,0xf8,0x33]
17 # CHECK: cins32 $15, $15, 5, 5        # encoding: [0x71,0xef,0x29,0x73]
18 # CHECK: dmul  $9, $6, $7             # encoding: [0x70,0xc7,0x48,0x03]
19 # CHECK: dmul  $19, $24, $25          # encoding: [0x73,0x19,0x98,0x03]
20 # CHECK: dmul  $9, $9, $6             # encoding: [0x71,0x26,0x48,0x03]
21 # CHECK: dmul  $21, $21, $25          # encoding: [0x72,0xb9,0xa8,0x03]
22 # CHECK: dpop  $9, $6                 # encoding: [0x70,0xc0,0x48,0x2d]
23 # CHECK: dpop  $15, $22               # encoding: [0x72,0xc0,0x78,0x2d]
24 # CHECK: dpop  $12, $12               # encoding: [0x71,0x80,0x60,0x2d]
25 # CHECK: exts  $4, $25, 27, 15        # encoding: [0x73,0x24,0x7e,0xfa]
26 # CHECK: exts  $15, $15, 17, 6        # encoding: [0x71,0xef,0x34,0x7a]
27 # CHECK: exts32 $4, $13, 10, 8        # encoding: [0x71,0xa4,0x42,0xbb]
28 # CHECK: exts32 $15, $15, 11, 20      # encoding: [0x71,0xef,0xa2,0xfb]
29 # CHECK: exts32 $7, $4, 22, 9         # encoding: [0x70,0x87,0x4d,0xbb]
30 # CHECK: exts32 $25, $25, 5, 25       # encoding: [0x73,0x39,0xc9,0x7b]
31 # CHECK: mtm0  $15                    # encoding: [0x71,0xe0,0x00,0x08]
32 # CHECK: mtm1  $16                    # encoding: [0x72,0x00,0x00,0x0c]
33 # CHECK: mtm2  $17                    # encoding: [0x72,0x20,0x00,0x0d]
34 # CHECK: mtp0  $18                    # encoding: [0x72,0x40,0x00,0x09]
35 # CHECK: mtp1  $19                    # encoding: [0x72,0x60,0x00,0x0a]
36 # CHECK: mtp2  $20                    # encoding: [0x72,0x80,0x00,0x0b]
37 # CHECK: pop   $9, $6                 # encoding: [0x70,0xc0,0x48,0x2c]
38 # CHECK: pop   $8, $19                # encoding: [0x72,0x60,0x40,0x2c]
39 # CHECK: pop   $2, $2                 # encoding: [0x70,0x40,0x10,0x2c]
40 # CHECK: seq   $25, $23, $24          # encoding: [0x72,0xf8,0xc8,0x2a]
41 # CHECK: seq   $6, $6, $24            # encoding: [0x70,0xd8,0x30,0x2a]
42 # CHECK: seqi  $17, $15, -512         # encoding: [0x71,0xf1,0x80,0x2e]
43 # CHECK: seqi  $16, $16, 38           # encoding: [0x72,0x10,0x09,0xae]
44 # CHECK: sne   $25, $23, $24          # encoding: [0x72,0xf8,0xc8,0x2b]
45 # CHECK: sne   $23, $23, $20          # encoding: [0x72,0xf4,0xb8,0x2b]
46 # CHECK: snei  $4, $16, -313          # encoding: [0x72,0x04,0xb1,0xef]
47 # CHECK: snei  $26, $26, 511          # encoding: [0x73,0x5a,0x7f,0xef]
48 # CHECK: sync  2                      # encoding: [0x00,0x00,0x00,0x8f]
49 # CHECK: sync  6                      # encoding: [0x00,0x00,0x01,0x8f]
50 # CHECK: sync  4                      # encoding: [0x00,0x00,0x01,0x0f]
51 # CHECK: sync  5                      # encoding: [0x00,0x00,0x01,0x4f]
52 # CHECK: v3mulu $21, $10, $21         # encoding: [0x71,0x55,0xa8,0x11]
53 # CHECK: v3mulu $20, $20, $10         # encoding: [0x72,0x8a,0xa0,0x11]
54 # CHECK: vmm0  $3, $19, $16           # encoding: [0x72,0x70,0x18,0x10]
55 # CHECK: vmm0  $ra, $ra, $9           # encoding: [0x73,0xe9,0xf8,0x10]
56 # CHECK: vmulu $sp, $10, $17          # encoding: [0x71,0x51,0xe8,0x0f]
57 # CHECK: vmulu $27, $27, $6           # encoding: [0x73,0x66,0xd8,0x0f]
58
59 foo:
60   baddu $9, $6, $7
61   baddu $17, $18, $19
62   baddu $2, $3
63   bbit0 $19, 22, foo
64   bbit032 $30, 11, foo
65   bbit0 $8, 42, foo
66   bbit1 $3, 31, foo
67   bbit132 $24, 10, foo
68   bbit1 $14, 46, foo
69   cins  $25, $10, 22, 2
70   cins  $9, 17, 29
71   cins32 $15, $2, 18, 8
72   cins32 $22, 9, 22
73   cins  $24, $31, 32, 31
74   cins  $15, 37, 5
75   dmul  $9, $6, $7
76   dmul  $19, $24, $25
77   dmul  $9, $6
78   dmul  $21, $25
79   dpop  $9, $6
80   dpop  $15, $22
81   dpop  $12
82   exts  $4, $25, 27, 15
83   exts  $15, 17, 6
84   exts32 $4, $13, 10, 8
85   exts32 $15, 11, 20
86   exts  $7, $4, 54, 9
87   exts  $25, 37, 25
88   mtm0  $15
89   mtm1  $16
90   mtm2  $17
91   mtp0  $18
92   mtp1  $19
93   mtp2  $20
94   pop   $9, $6
95   pop   $8, $19
96   pop   $2
97   seq   $25, $23, $24
98   seq   $6, $24
99   seqi  $17, $15, -512
100   seqi  $16, 38
101   sne   $25, $23, $24
102   sne   $23, $20
103   snei  $4, $16, -313
104   snei  $26, 511
105   synciobdma
106   syncs
107   syncw
108   syncws
109   v3mulu $21, $10, $21
110   v3mulu $20, $10
111   vmm0  $3, $19, $16
112   vmm0  $31, $9
113   vmulu $29, $10, $17
114   vmulu $27, $6