Lines Matching +full:- +full:o1
1 ; RUN: llc < %s -march=sparcv9 -verify-machineinstrs | FileCheck %s
3 ; CHECK-LABEL: test_atomic_i8
6 ; CHECK: ldub [%o1]
19 ; CHECK-LABEL: test_atomic_i16
22 ; CHECK: lduh [%o1]
35 ; CHECK-LABEL: test_atomic_i32
38 ; CHECK: ld [%o1]
51 ; CHECK-LABEL: test_atomic_i64
54 ; CHECK: ldx [%o1]
71 ; CHECK-LABEL: test_cmpxchg_i8
72 ; CHECK: and %o1, -4, %o2
74 ; CHECK: andn %o3, %o1, %o1
75 ; CHECK: sll %o1, 3, %o1
77 ; CHECK: sll %o3, %o1, %o5
78 ; CHECK: xor %o5, -1, %o3
81 ; CHECK: sll %o4, %o1, %o4
83 ; CHECK: sll %o0, %o1, %o0
102 ; CHECK: srl %g3, %o1, %o0
110 ; CHECK-LABEL: test_cmpxchg_i16
112 ; CHECK: and %o1, -4, %o2
113 ; CHECK: and %o1, 3, %o1
114 ; CHECK: xor %o1, 2, %o1
115 ; CHECK: sll %o1, 3, %o1
118 ; CHECK: sll %o4, %o1, %o5
119 ; CHECK: xor %o5, -1, %o3
123 ; CHECK: sll %o0, %o1, %o0
124 ; CHECK: sll %o4, %o1, %o4
143 ; CHECK: srl %g3, %o1, %o0
151 ; CHECK-LABEL: test_cmpxchg_i32
152 ; CHECK: mov 123, [[R:%[gilo][0-7]]]
153 ; CHECK: cas [%o1], %o0, [[R]]
162 ; CHECK-LABEL: test_cmpxchg_i64
163 ; CHECK: mov 123, [[R:%[gilo][0-7]]]
164 ; CHECK: casx [%o1], %o0, [[R]]
173 ; CHECK-LABEL: test_swap_i8
174 ; CHECK: mov 42, [[R:%[gilo][0-7]]]
183 ; CHECK-LABEL: test_swap_i16
184 ; CHECK: mov 42, [[R:%[gilo][0-7]]]
193 ; CHECK-LABEL: test_swap_i32
194 ; CHECK: mov 42, [[R:%[gilo][0-7]]]
195 ; CHECK: swap [%o1], [[R]]
203 ; CHECK-LABEL: test_swap_i64
204 ; CHECK: casx [%o1],
212 ; CHECK-LABEL: test_load_sub_i8
216 ; CHECK: cas [{{%[gilo][0-7]}}]
224 ; CHECK-LABEL: test_load_sub_i16
228 ; CHECK: cas [{{%[gilo][0-7]}}]
236 ; CHECK-LABEL: test_load_add_i32
238 ; CHECK: add [[V:%[gilo][0-7]]], %o1, [[U:%[gilo][0-7]]]
247 ; CHECK-LABEL: test_load_sub_64
258 ; CHECK-LABEL: test_load_xor_32
269 ; CHECK-LABEL: test_load_and_32
272 ; CHECK-NOT: xor
281 ; CHECK-LABEL: test_load_nand_32
293 ; CHECK-LABEL: test_load_max_64
305 ; CHECK-LABEL: test_load_umin_32