mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 11:42:57 +01:00
Revert "MSG"
This reverts commit 9a0ce889d1c39c74d69ecad5ce9c875155ae55de. This was committed by mistake. llvm-svn: 329119
This commit is contained in:
parent
522c7ade27
commit
68f650fb3e
@ -6446,7 +6446,7 @@ SDValue SITargetLowering::performMinMaxCombine(SDNode *N,
|
|||||||
|
|
||||||
|
|
||||||
if (Opc != AMDGPUISD::FMIN_LEGACY && Opc != AMDGPUISD::FMAX_LEGACY &&
|
if (Opc != AMDGPUISD::FMIN_LEGACY && Opc != AMDGPUISD::FMAX_LEGACY &&
|
||||||
!VT.isVector() && VT != MVT::f64 &&
|
VT != MVT::f64 &&
|
||||||
((VT != MVT::f16 && VT != MVT::i16) || Subtarget->hasMin3Max3_16())) {
|
((VT != MVT::f16 && VT != MVT::i16) || Subtarget->hasMin3Max3_16())) {
|
||||||
// max(max(a, b), c) -> max3(a, b, c)
|
// max(max(a, b), c) -> max3(a, b, c)
|
||||||
// min(min(a, b), c) -> min3(a, b, c)
|
// min(min(a, b), c) -> min3(a, b, c)
|
||||||
|
@ -84,21 +84,9 @@ define amdgpu_kernel void @test_fmax3_olt_1_f16(half addrspace(1)* %out, half ad
|
|||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
; Checks whether the test passes; performMinMaxCombine() should not optimize vector patterns of max3
|
|
||||||
; since there are no pack instructions for fmax3.
|
|
||||||
; GCN-LABEL: {{^}}no_fmax3_v2f16:
|
|
||||||
define <2 x half> @no_fmax3_v2f16(<2 x half> %a, <2 x half> %b, <2 x half> %c, <2 x half> %d) {
|
|
||||||
entry:
|
|
||||||
%max = tail call fast <2 x half> @llvm.maxnum.v2f16(<2 x half> %a, <2 x half> %b)
|
|
||||||
%max1 = tail call fast <2 x half> @llvm.maxnum.v2f16(<2 x half> %c, <2 x half> %max)
|
|
||||||
%res = tail call fast <2 x half> @llvm.maxnum.v2f16(<2 x half> %max1, <2 x half> %d)
|
|
||||||
ret <2 x half> %res
|
|
||||||
}
|
|
||||||
|
|
||||||
declare i32 @llvm.amdgcn.workitem.id.x() #1
|
declare i32 @llvm.amdgcn.workitem.id.x() #1
|
||||||
declare float @llvm.maxnum.f32(float, float) #1
|
declare float @llvm.maxnum.f32(float, float) #1
|
||||||
declare half @llvm.maxnum.f16(half, half) #1
|
declare half @llvm.maxnum.f16(half, half) #1
|
||||||
declare <2 x half> @llvm.maxnum.v2f16(<2 x half>, <2 x half>)
|
|
||||||
|
|
||||||
attributes #0 = { nounwind }
|
attributes #0 = { nounwind }
|
||||||
attributes #1 = { nounwind readnone speculatable }
|
attributes #1 = { nounwind readnone speculatable }
|
||||||
|
@ -82,21 +82,9 @@ define amdgpu_kernel void @test_fmin3_olt_1_f16(half addrspace(1)* %out, half ad
|
|||||||
ret void
|
ret void
|
||||||
}
|
}
|
||||||
|
|
||||||
; Checks whether the test passes; performMinMaxCombine() should not optimize vector patterns of min3
|
|
||||||
; since there are no pack instructions for fmin3.
|
|
||||||
; GCN-LABEL: {{^}}no_fmin3_v2f16:
|
|
||||||
define <2 x half> @no_fmin3_v2f16(<2 x half> %a, <2 x half> %b, <2 x half> %c, <2 x half> %d) {
|
|
||||||
entry:
|
|
||||||
%min = tail call fast <2 x half> @llvm.minnum.v2f16(<2 x half> %a, <2 x half> %b)
|
|
||||||
%min1 = tail call fast <2 x half> @llvm.minnum.v2f16(<2 x half> %c, <2 x half> %min)
|
|
||||||
%res = tail call fast <2 x half> @llvm.minnum.v2f16(<2 x half> %min1, <2 x half> %d)
|
|
||||||
ret <2 x half> %res
|
|
||||||
}
|
|
||||||
|
|
||||||
declare i32 @llvm.amdgcn.workitem.id.x() #1
|
declare i32 @llvm.amdgcn.workitem.id.x() #1
|
||||||
declare float @llvm.minnum.f32(float, float) #1
|
declare float @llvm.minnum.f32(float, float) #1
|
||||||
declare half @llvm.minnum.f16(half, half) #1
|
declare half @llvm.minnum.f16(half, half) #1
|
||||||
declare <2 x half> @llvm.minnum.v2f16(<2 x half>, <2 x half>)
|
|
||||||
|
|
||||||
attributes #0 = { nounwind }
|
attributes #0 = { nounwind }
|
||||||
attributes #1 = { nounwind readnone speculatable }
|
attributes #1 = { nounwind readnone speculatable }
|
||||||
|
Loading…
Reference in New Issue
Block a user