1 # source file to test illegal mips64r2 instructions
9 # dext macro position/size checks
11 # constraint: 0 <= pos < 64
12 dext $
4, $
5, -1, 1 # error (position)
15 dext $
4, $
5, 64, 1 # error (position)
17 # constraint: 0 < size <= 64
18 dext $
4, $
5, 0, 0 # error (size)
21 dext $
4, $
5, 0, 65 # error (size)
23 # constraint: 0 < (pos+size) <= 64
31 dext $
4, $
5, 1, 64 # error (size)
33 dext $
4, $
5, 63, 2 # error (size)
34 dext $
4, $
5, 63, 63 # error (size)
35 dext $
4, $
5, 63, 64 # error (size)
37 # dextm instruction position/size checks
39 # constraint: 0 <= pos < 32
40 dextm $
4, $
5, -1, 33 # error (position)
43 dextm $
4, $
5, 32, 33 # error (position)
45 # constraint: 32 < size <= 64
46 dextm $
4, $
5, 0, 32 # error (size)
49 dextm $
4, $
5, 0, 65 # error (size)
51 # constraint: 32 < (pos+size) <= 64
59 dextm $
4, $
5, 1, 64 # error (size)
61 dextm $
4, $
5, 31, 34 # error (size)
62 dextm $
4, $
5, 31, 63 # error (size)
63 dextm $
4, $
5, 31, 64 # error (size)
65 # dextu instruction position/size checks
67 # constraint: 32 <= pos < 64
68 dextu $
4, $
5, 31, 1 # error (position)
71 dextu $
4, $
5, 64, 1 # error (position)
73 # constraint: 0 < size <= 32
74 dextu $
4, $
5, 32, 0 # error (size)
77 dextu $
4, $
5, 32, 33 # error (size)
79 # constraint: 32 < (pos+size) <= 64
87 dextu $
4, $
5, 33, 32 # error (size)
89 dextu $
4, $
5, 63, 2 # error (size)
90 dextu $
4, $
5, 63, 31 # error (size)
91 dextu $
4, $
5, 63, 32 # error (size)
93 # dins macro position/size checks
95 # constraint: 0 <= pos < 64
96 dins $
4, $
5, -1, 1 # error (position)
99 dins $
4, $
5, 64, 1 # error (position)
101 # constraint: 0 < size <= 64
102 dins $
4, $
5, 0, 0 # error (size)
105 dins $
4, $
5, 0, 65 # error (size)
107 # constraint: 0 < (pos+size) <= 64
115 dins $
4, $
5, 1, 64 # error (size)
117 dins $
4, $
5, 63, 2 # error (size)
118 dins $
4, $
5, 63, 63 # error (size)
119 dins $
4, $
5, 63, 64 # error (size)
121 # dinsm instruction position/size checks
123 # constraint: 0 <= pos < 32
124 dinsm $
4, $
5, -1, 33 # error (position)
127 dinsm $
4, $
5, 32, 33 # error (position)
129 # constraint: 2 <= size <= 64
130 dinsm $
4, $
5, 31, 1 # error (size)
133 dinsm $
4, $
5, 0, 65 # error (size)
135 # constraint: 32 < (pos+size) <= 64
136 dinsm $
4, $
5, 0, 2 # error (size)
137 dinsm $
4, $
5, 0, 3 # error (size)
140 dinsm $
4, $
5, 1, 2 # error (size)
141 dinsm $
4, $
5, 1, 3 # error (size)
143 dinsm $
4, $
5, 1, 64 # error (size)
144 dinsm $
4, $
5, 30, 2 # error (size)
146 dinsm $
4, $
5, 30, 63 # error (size)
147 dinsm $
4, $
5, 30, 64 # error (size)
150 dinsm $
4, $
5, 31, 63 # error (size)
151 dinsm $
4, $
5, 31, 64 # error (size)
153 # dinsu instruction position/size checks
155 # constraint: 32 <= pos < 64
156 dinsu $
4, $
5, 31, 1 # error (position)
159 dinsu $
4, $
5, 64, 1 # error (position)
161 # constraint: 1 <= size <= 32
162 dinsu $
4, $
5, 32, 0 # error (size)
165 dinsu $
4, $
5, 32, 33 # error (size)
167 # constraint: 32 < (pos+size) <= 64
175 dinsu $
4, $
5, 33, 32 # error (size)
178 dinsu $
4, $
5, 62, 31 # error (size)
179 dinsu $
4, $
5, 62, 32 # error (size)
181 dinsu $
4, $
5, 63, 2 # error (size)
182 dinsu $
4, $
5, 63, 31 # error (size)
183 dinsu $
4, $
5, 63, 32 # error (size)
185 # Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...