1 ; Test 128-bit atomic stores. 2 ; 3 ; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s 4 5 define void @f1(i128 %val, i128 *%src) { 6 ; CHECK-LABEL: f1: 7 ; CHECK-DAG: lg %r1, 8(%r2) 8 ; CHECK-DAG: lg %r0, 0(%r2) 9 ; CHECK: stpq %r0, 0(%r3) 10 ; CHECK: bcr 1{{[45]}}, %r0 11 ; CHECK: br %r14 12 store atomic i128 %val, i128 *%src seq_cst, align 16 13 ret void 14 } 15 16 define void @f2(i128 %val, i128 *%src) { 17 ; CHECK-LABEL: f2: 18 ; CHECK-DAG: lg %r1, 8(%r2) 19 ; CHECK-DAG: lg %r0, 0(%r2) 20 ; CHECK: stpq %r0, 0(%r3) 21 ; CHECK-NOT: bcr 1{{[45]}}, %r0 22 ; CHECK: br %r14 23 store atomic i128 %val, i128 *%src monotonic, align 16 24 ret void 25 } 26