32 lines · plain
1; Test loads of negative floating-point zero.2;3; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s4 5; Test f32.6define float @f1() {7; CHECK-LABEL: f1:8; CHECK: lzer [[REGISTER:%f[0-5]+]]9; CHECK: lcdfr %f0, [[REGISTER]]10; CHECK: br %r1411 ret float -0.012}13 14; Test f64.15define double @f2() {16; CHECK-LABEL: f2:17; CHECK: lzdr [[REGISTER:%f[0-5]+]]18; CHECK: lcdfr %f0, [[REGISTER]]19; CHECK: br %r1420 ret double -0.021}22 23; Test f128.24define void @f3(ptr %x) {25; CHECK-LABEL: f3:26; CHECK: lzxr [[REGISTER:%f[0-5]+]]27; CHECK: lcxbr %f0, [[REGISTER]]28; CHECK: br %r1429 store fp128 0xL00000000000000008000000000000000, ptr %x30 ret void31}32