Lines Matching refs:i128
3 define i1 @try_cmpxchg(i128* %addr, i128 %desired, i128 %new) {
9 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
10 %success = extractvalue { i128, i1 } %pair, 1
14 define void @cmpxchg_flow(i128* %addr, i128 %desired, i128 %new) {
20 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
21 %success = extractvalue { i128, i1 } %pair, 1
34 define i1 @cmpxchg_arithcmp(i128* %addr, i128 %desired, i128 %new) {
39 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
40 %oldval = extractvalue { i128, i1 } %pair, 0
41 %success = icmp sge i128 %oldval, %desired
45 define i128 @cmpxchg_zext(i128* %addr, i128 %desired, i128 %new) {
51 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
52 %success = extractvalue { i128, i1 } %pair, 1
53 %mask = zext i1 %success to i128
54 ret i128 %mask
58 define i128 @cmpxchg_use_eflags_and_val(i128* %addr, i128 %offset) {
65 %init = load atomic i128, i128* %addr seq_cst, align 16
69 %old = phi i128 [%init, %entry], [%oldval, %loop]
70 %new = add i128 %old, %offset
72 %pair = cmpxchg i128* %addr, i128 %old, i128 %new seq_cst seq_cst
73 %oldval = extractvalue { i128, i1 } %pair, 0
74 %success = extractvalue { i128, i1 } %pair, 1
79 ret i128 %old