1*9880d681SAndroid Build Coastguard Worker; Test 128-bit floating-point addition. 2*9880d681SAndroid Build Coastguard Worker; 3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker; There is no memory form of 128-bit addition. 6*9880d681SAndroid Build Coastguard Workerdefine void @f1(fp128 *%ptr, float %f2) { 7*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: f1: 8*9880d681SAndroid Build Coastguard Worker; CHECK: lxebr %f0, %f0 9*9880d681SAndroid Build Coastguard Worker; CHECK: ld %f1, 0(%r2) 10*9880d681SAndroid Build Coastguard Worker; CHECK: ld %f3, 8(%r2) 11*9880d681SAndroid Build Coastguard Worker; CHECK: axbr %f1, %f0 12*9880d681SAndroid Build Coastguard Worker; CHECK: std %f1, 0(%r2) 13*9880d681SAndroid Build Coastguard Worker; CHECK: std %f3, 8(%r2) 14*9880d681SAndroid Build Coastguard Worker; CHECK: br %r14 15*9880d681SAndroid Build Coastguard Worker %f1 = load fp128 , fp128 *%ptr 16*9880d681SAndroid Build Coastguard Worker %f2x = fpext float %f2 to fp128 17*9880d681SAndroid Build Coastguard Worker %sum = fadd fp128 %f1, %f2x 18*9880d681SAndroid Build Coastguard Worker store fp128 %sum, fp128 *%ptr 19*9880d681SAndroid Build Coastguard Worker ret void 20*9880d681SAndroid Build Coastguard Worker} 21