mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-01 07:30:31 +00:00
5e5c5f8259
thinking of generalizing it to be able to specify other freedoms beyond accuracy (such as that NaN's don't have to be respected). I'd like the 3.1 release (the first one with this metadata) to have the more generic name already rather than having to auto-upgrade it in 3.2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154744 91177308-0d34-0410-b5e6-96231b3b80d8
32 lines
992 B
LLVM
32 lines
992 B
LLVM
; RUN: not llvm-as < %s |& FileCheck %s
|
|
|
|
define void @foo(i32 %i, float %f, <2 x float> %g) {
|
|
%s = add i32 %i, %i, !fpmath !0
|
|
; CHECK: fpmath requires a floating point result!
|
|
%t = fadd float %f, %f, !fpmath !1
|
|
; CHECK: fpmath takes one operand!
|
|
%u = fadd float %f, %f, !fpmath !2
|
|
; CHECK: fpmath takes one operand!
|
|
%v = fadd float %f, %f, !fpmath !3
|
|
; CHECK: fpmath ULPs not a floating point number!
|
|
%w = fadd float %f, %f, !fpmath !0
|
|
; Above line is correct.
|
|
%w2 = fadd <2 x float> %g, %g, !fpmath !0
|
|
; Above line is correct.
|
|
%x = fadd float %f, %f, !fpmath !4
|
|
; CHECK: fpmath ULPs is negative!
|
|
%y = fadd float %f, %f, !fpmath !5
|
|
; CHECK: fpmath ULPs is negative!
|
|
%z = fadd float %f, %f, !fpmath !6
|
|
; CHECK: fpmath ULPs not a normal number!
|
|
ret void
|
|
}
|
|
|
|
!0 = metadata !{ float 1.0 }
|
|
!1 = metadata !{ }
|
|
!2 = metadata !{ float 1.0, float 1.0 }
|
|
!3 = metadata !{ i32 1 }
|
|
!4 = metadata !{ float -1.0 }
|
|
!5 = metadata !{ float -0.0 }
|
|
!6 = metadata !{ float 0x7FFFFFFF00000000 }
|