52 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc %s -o - -verify-machineinstrs -fast-isel=true -mattr=-sse | FileCheck %s3 4target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"5target triple = "x86_64-unknown-linux-gnu"6 7define dso_local x86_fp80 @test_f80() {8; CHECK-LABEL: test_f80:9; CHECK: # %bb.0: # %entry10; CHECK-NEXT: fldz11; CHECK-NEXT: fchs12; CHECK-NEXT: retq13entry:14 %fneg1 = fneg contract x86_fp80 undef15 br label %exit16 17exit: ; preds = %entry18 ret x86_fp80 %fneg119}20 21define dso_local void @test_f32(ptr%p) {22; CHECK-LABEL: test_f32:23; CHECK: # %bb.0: # %entry24; CHECK-NEXT: fldz25; CHECK-NEXT: fchs26; CHECK-NEXT: fstps (%rdi)27; CHECK-NEXT: retq28entry:29 %fneg1 = fneg contract float undef30 br label %exit31 32exit: ; preds = %entry33 store float %fneg1, ptr%p34 ret void35}36 37define dso_local void @test_f64(ptr%p) {38; CHECK-LABEL: test_f64:39; CHECK: # %bb.0: # %entry40; CHECK-NEXT: fldz41; CHECK-NEXT: fchs42; CHECK-NEXT: fstpl (%rdi)43; CHECK-NEXT: retq44entry:45 %fneg1 = fneg contract double undef46 br label %exit47 48exit: ; preds = %entry49 store double %fneg1, ptr%p50 ret void51}52