| /llvm-project-15.0.7/llvm/test/Transforms/InstSimplify/ConstProp/ |
| H A D | copysign.ll | 4 declare float @llvm.copysign.f32(float, float) 5 declare double @llvm.copysign.f64(double, double) 6 declare bfloat @llvm.copysign.bf16(bfloat, bfloat) 7 declare fp128 @llvm.copysign.f128(fp128, fp128) 8 declare ppc_fp128 @llvm.copysign.ppcf128(ppc_fp128, ppc_fp128) 14 %x = call float @llvm.copysign.f32(float 1.0, float -2.0) 22 %x = call float @llvm.copysign.f32(float -2.0, float 1.0) 30 %x = call float @llvm.copysign.f32(float -2.0, float -1.0) 38 %x = call double @llvm.copysign.f64(double 1.0, double -2.0) 46 %x = call double @llvm.copysign.f64(double -1.0, double 2.0) [all …]
|
| /llvm-project-15.0.7/llvm/test/Transforms/InstCombine/ |
| H A D | copysign.ll | 5 declare float @llvm.copysign.f32(float, float) 7 declare <3 x double> @llvm.copysign.v3f64(<3 x double>, <3 x double>) 14 %r = call arcp float @llvm.copysign.f32(float %x, float 0.0) 33 %r = call nnan float @llvm.copysign.f32(float %x, float -0.0) 53 %r = call ninf float @llvm.copysign.f32(float %x, float %fabs) 76 %r = call ninf float @llvm.copysign.f32(float %y, float %max) 80 ; The magnitude operand of the 1st copysign is irrelevant. 81 ; copysign(x, copysign(y, z)) --> copysign(x, z) 89 %r = call ninf float @llvm.copysign.f32(float %x, float %s) 99 %r = call float @llvm.copysign.f32(float %n, float %y) [all …]
|
| H A D | fabs-copysign.ll | 9 declare double @llvm.copysign.f64(double, double) 10 declare float @llvm.copysign.f32(float, float) 14 ; CHECK-NEXT: [[TMP1:%.*]] = call nnan ninf double @llvm.copysign.f64(double 1.000000e+00, doubl… 24 ; CHECK-NEXT: [[TMP1:%.*]] = call nnan ninf double @llvm.copysign.f64(double 1.000000e+00, doubl… 34 ; CHECK-NEXT: [[TMP1:%.*]] = call nnan ninf <4 x double> @llvm.copysign.v4f64(<4 x double> <doub… 44 ; CHECK-NEXT: [[TMP1:%.*]] = call nnan ninf <4 x double> @llvm.copysign.v4f64(<4 x double> <doub… 54 ; CHECK-NEXT: [[TMP1:%.*]] = call nnan ninf float @llvm.copysign.f32(float 1.000000e+00, float [… 66 ; CHECK-NEXT: [[TMP1:%.*]] = call nnan ninf double @llvm.copysign.f64(double 1.000000e+00, doubl…
|
| /llvm-project-15.0.7/llvm/test/Analysis/CostModel/AMDGPU/ |
| H A D | arith-fp.ll | 36 %F32 = call float @llvm.copysign.f32(float undef, float undef) 37 %V4F32 = call <4 x float> @llvm.copysign.v4f32(<4 x float> undef, <4 x float> undef) 41 %F64 = call double @llvm.copysign.f64(double undef, double undef) 85 declare float @llvm.copysign.f32(float, float) 86 declare <4 x float> @llvm.copysign.v4f32(<4 x float>, <4 x float>) 87 declare <8 x float> @llvm.copysign.v8f32(<8 x float>, <8 x float>) 88 declare <16 x float> @llvm.copysign.v16f32(<16 x float>, <16 x float>) 90 declare double @llvm.copysign.f64(double, double) 91 declare <2 x double> @llvm.copysign.v2f64(<2 x double>, <2 x double>) 92 declare <4 x double> @llvm.copysign.v4f64(<4 x double>, <4 x double>) [all …]
|
| /llvm-project-15.0.7/llvm/test/CodeGen/X86/ |
| H A D | combine-fcopysign.ll | 10 ; copysign(x, c1) -> fabs(x) iff ispos(c1) 53 %2 = call <4 x float> @llvm.copysign.v4f32(<4 x float> %x, <4 x float> %1) 57 ; copysign(x, c1) -> fneg(fabs(x)) iff isneg(c1) 101 %3 = call <4 x float> @llvm.copysign.v4f32(<4 x float> %x, <4 x float> %2) 105 ; copysign(fabs(x), y) -> copysign(x, y) 123 %2 = call <4 x float> @llvm.copysign.v4f32(<4 x float> %1, <4 x float> %y) 127 ; copysign(fneg(x), y) -> copysign(x, y) 149 ; copysign(copysign(x,z), y) -> copysign(x, y) 171 ; copysign(x, copysign(y,z)) -> copysign(x, z) 193 ; copysign(x, fp_extend(y)) -> copysign(x, y) [all …]
|
| H A D | vec-copysign-avx512.ll | 10 %tmp = tail call <4 x float> @llvm.copysign.v4f32( <4 x float> %a, <4 x float> %b ) 19 %tmp = tail call <8 x float> @llvm.copysign.v8f32( <8 x float> %a, <8 x float> %b ) 28 %tmp = tail call <16 x float> @llvm.copysign.v16f32( <16 x float> %a, <16 x float> %b ) 37 %tmp = tail call <2 x double> @llvm.copysign.v2f64( <2 x double> %a, <2 x double> %b ) 46 %tmp = tail call <4 x double> @llvm.copysign.v4f64( <4 x double> %a, <4 x double> %b ) 59 declare <4 x float> @llvm.copysign.v4f32(<4 x float> %Mag, <4 x float> %Sgn) 60 declare <8 x float> @llvm.copysign.v8f32(<8 x float> %Mag, <8 x float> %Sgn) 61 declare <16 x float> @llvm.copysign.v16f32(<16 x float> %Mag, <16 x float> %Sgn) 62 declare <2 x double> @llvm.copysign.v2f64(<2 x double> %Mag, <2 x double> %Sgn) 63 declare <4 x double> @llvm.copysign.v4f64(<4 x double> %Mag, <4 x double> %Sgn) [all …]
|
| H A D | sse-fcopysign.ll | 41 ; X86-NEXT: calll copysign 49 ; X64-NEXT: jmp copysign # TAILCALL 52 %tmp = tail call double @copysign( double %a, double %tmp2 ) 83 declare dso_local double @copysign(double, double) 110 %tmp = tail call float @llvm.copysign.f32( float %b, float %a ) 144 %tmp = tail call double @llvm.copysign.f64( double %a, double %tmp2 ) 178 %tmp = tail call x86_fp80 @llvm.copysign.f80( x86_fp80 %b, x86_fp80 %a ) 193 %tmp = tail call float @llvm.copysign.f32( float 1.0, float -2.0 ) 210 %tmp = tail call double @llvm.copysign.f64( double 0.0, double %tmp2 ) 269 declare dso_local float @llvm.copysign.f32(float %Mag, float %Sgn) [all …]
|
| H A D | sse1-fcopysign.ll | 20 %tmp = tail call float @llvm.copysign.f32(float %a, float 1.0) 39 %tmp = tail call float @llvm.copysign.f32(float %a, float -1.0) 53 …%tmp = tail call <4 x float> @llvm.copysign.v4f32(<4 x float> %a, <4 x float> <float 1.0, float 1.… 67 …%tmp = tail call <4 x float> @llvm.copysign.v4f32(<4 x float> %a, <4 x float> <float -1.0, float -… 85 …%tmp = tail call <4 x float> @llvm.copysign.v4f32(<4 x float> <float 1.0, float 1.0, float 1.0, fl… 89 declare float @llvm.copysign.f32(float, float) 90 declare <4 x float> @llvm.copysign.v4f32(<4 x float>, <4 x float>)
|
| H A D | vec-copysign.ll | 34 %tmp = tail call <4 x float> @llvm.copysign.v4f32( <4 x float> %a, <4 x float> %b ) 84 %tmp = tail call <8 x float> @llvm.copysign.v8f32( <8 x float> %a, <8 x float> %b ) 111 %tmp = tail call <2 x double> @llvm.copysign.v2f64( <2 x double> %a, <2 x double> %b ) 151 %tmp = tail call <4 x double> @llvm.copysign.v4f64( <4 x double> %a, <4 x double> %b ) 155 declare <4 x float> @llvm.copysign.v4f32(<4 x float> %Mag, <4 x float> %Sgn) 156 declare <8 x float> @llvm.copysign.v8f32(<8 x float> %Mag, <8 x float> %Sgn) 157 declare <2 x double> @llvm.copysign.v2f64(<2 x double> %Mag, <2 x double> %Sgn) 158 declare <4 x double> @llvm.copysign.v4f64(<4 x double> %Mag, <4 x double> %Sgn)
|
| /llvm-project-15.0.7/llvm/test/CodeGen/VE/Scalar/ |
| H A D | fcopysign.ll | 3 ;;; Test ‘llvm.copysign.*’ Intrinsic 6 ;;; This is an overloaded intrinsic. You can use llvm.copysign on any 10 ;;; declare float @llvm.copysign.f32(float %Mag, float %Sgn) 11 ;;; declare double @llvm.copysign.f64(double %Mag, double %Sgn) 12 ;;; declare x86_fp80 @llvm.copysign.f80(x86_fp80 %Mag, x86_fp80 %Sgn) 13 ;;; declare fp128 @llvm.copysign.f128(fp128 %Mag, fp128 %Sgn) 44 %3 = tail call fast float @llvm.copysign.f32(float %0, float %1) 49 declare float @llvm.copysign.f32(float, float) 64 declare double @llvm.copysign.f64(double, double) 85 %3 = tail call fast fp128 @llvm.copysign.f128(fp128 %0, fp128 %1) [all …]
|
| /llvm-project-15.0.7/clang/lib/Headers/openmp_wrappers/ |
| H A D | complex_cmath.h | 130 copysign(__x.real(), __x.imag())); in sqrt() 192 return std::complex<_Tp>(copysign(__x.imag(), __x.real()), in asinh() 195 return std::complex<_Tp>(copysign(__z.real(), __x.real()), in asinh() 196 copysign(__z.imag(), __x.imag())); in asinh() 228 return std::complex<_Tp>(copysign(__z.real(), _Tp(0)), in acosh() 229 copysign(__z.imag(), __x.imag())); in acosh() 238 return std::complex<_Tp>(copysign(_Tp(0), __x.real()), in atanh() 250 return std::complex<_Tp>(copysign(_Tp(0), __x.real()), in atanh() 255 copysign(_Tp(0), __x.imag())); in atanh() 258 return std::complex<_Tp>(copysign(__z.real(), __x.real()), in atanh() [all …]
|
| /llvm-project-15.0.7/llvm/test/Transforms/SLPVectorizer/X86/ |
| H A D | fcopysign.ll | 20 declare float @llvm.copysign.f32(float, float) 21 declare double @llvm.copysign.f64(double, double) 39 %fcopysign0 = call double @llvm.copysign.f64(double %a0, double %b0) 40 %fcopysign1 = call double @llvm.copysign.f64(double %a1, double %b1) 173 %fcopysign0 = call float @llvm.copysign.f32(float %a0, float %b0) 174 %fcopysign1 = call float @llvm.copysign.f32(float %a1, float %b1) 175 %fcopysign2 = call float @llvm.copysign.f32(float %a2, float %b2) 176 %fcopysign3 = call float @llvm.copysign.f32(float %a3, float %b3) 219 %fcopysign0 = call float @llvm.copysign.f32(float %a0, float %b0) 220 %fcopysign1 = call float @llvm.copysign.f32(float %a1, float %b1) [all …]
|
| /llvm-project-15.0.7/llvm/test/CodeGen/WebAssembly/ |
| H A D | copysign-casts.ll | 3 ; DAGCombiner oddly folds casts into the rhs of copysign. Test that they get 8 declare double @copysign(double, double) nounwind readnone 13 ; CHECK: f64.copysign $push1=, $pop{{[0-9]+}}, $pop0{{$}} 16 %t = call double @copysign(double %a, double %c) 22 ; CHECK: f32.copysign $push1=, $pop{{[0-9]+}}, $pop0{{$}}
|
| /llvm-project-15.0.7/libclc/generic/lib/math/ |
| H A D | copysign.cl | 4 _CLC_DEFINE_BINARY_BUILTIN(float, copysign, __builtin_copysignf, float, float) 10 _CLC_DEFINE_BINARY_BUILTIN(double, copysign, __builtin_copysign, double, double) 18 _CLC_DEF _CLC_OVERLOAD half copysign(half x, half y) 25 _CLC_BINARY_VECTORIZE(_CLC_OVERLOAD _CLC_DEF, half, copysign, half, half)
|
| /llvm-project-15.0.7/llvm/test/CodeGen/AArch64/ |
| H A D | sve-fcopysign.ll | 15 …%r = call <vscale x 2 x float> @llvm.copysign.v2f32(<vscale x 2 x float> %a, <vscale x 2 x float> … 29 …%r = call <vscale x 2 x float> @llvm.copysign.v2f32(<vscale x 2 x float> %a, <vscale x 2 x float> … 33 declare <vscale x 2 x float> @llvm.copysign.v2f32(<vscale x 2 x float> %a, <vscale x 2 x float> %b)… 44 …%r = call <vscale x 4 x float> @llvm.copysign.v4f32(<vscale x 4 x float> %a, <vscale x 4 x float> … 61 …%r = call <vscale x 4 x float> @llvm.copysign.v4f32(<vscale x 4 x float> %a, <vscale x 4 x float> … 65 declare <vscale x 4 x float> @llvm.copysign.v4f32(<vscale x 4 x float> %a, <vscale x 4 x float> %b)… 145 %r = call <vscale x 4 x half> @llvm.copysign.v4f16(<vscale x 4 x half> %a, <vscale x 4 x half> %b) 159 …%r = call <vscale x 4 x half> @llvm.copysign.v4f16(<vscale x 4 x half> %a, <vscale x 4 x half> %tm… 179 declare <vscale x 4 x half> @llvm.copysign.v4f16(<vscale x 4 x half> %a, <vscale x 4 x half> %b) #0 190 %r = call <vscale x 8 x half> @llvm.copysign.v8f16(<vscale x 8 x half> %a, <vscale x 8 x half> %b) [all …]
|
| H A D | sve2-fcopysign.ll | 15 …%r = call <vscale x 2 x float> @llvm.copysign.v2f32(<vscale x 2 x float> %a, <vscale x 2 x float> … 29 …%r = call <vscale x 2 x float> @llvm.copysign.v2f32(<vscale x 2 x float> %a, <vscale x 2 x float> … 33 declare <vscale x 2 x float> @llvm.copysign.v2f32(<vscale x 2 x float> %a, <vscale x 2 x float> %b)… 44 …%r = call <vscale x 4 x float> @llvm.copysign.v4f32(<vscale x 4 x float> %a, <vscale x 4 x float> … 61 …%r = call <vscale x 4 x float> @llvm.copysign.v4f32(<vscale x 4 x float> %a, <vscale x 4 x float> … 65 declare <vscale x 4 x float> @llvm.copysign.v4f32(<vscale x 4 x float> %a, <vscale x 4 x float> %b)… 137 %r = call <vscale x 4 x half> @llvm.copysign.v4f16(<vscale x 4 x half> %a, <vscale x 4 x half> %b) 151 …%r = call <vscale x 4 x half> @llvm.copysign.v4f16(<vscale x 4 x half> %a, <vscale x 4 x half> %tm… 171 declare <vscale x 4 x half> @llvm.copysign.v4f16(<vscale x 4 x half> %a, <vscale x 4 x half> %b) #0 182 %r = call <vscale x 8 x half> @llvm.copysign.v8f16(<vscale x 8 x half> %a, <vscale x 8 x half> %b) [all …]
|
| H A D | vector-fcopysign.ll | 16 %r = call <1 x float> @llvm.copysign.v1f32(<1 x float> %a, <1 x float> %b) 30 %r = call <1 x float> @llvm.copysign.v1f32(<1 x float> %a, <1 x float> %tmp0) 34 declare <1 x float> @llvm.copysign.v1f32(<1 x float> %a, <1 x float> %b) #0 78 %r = call <2 x float> @llvm.copysign.v2f32(<2 x float> %a, <2 x float> %b) 94 declare <2 x float> @llvm.copysign.v2f32(<2 x float> %a, <2 x float> %b) #0 104 %r = call <4 x float> @llvm.copysign.v4f32(<4 x float> %a, <4 x float> %b) 122 declare <4 x float> @llvm.copysign.v4f32(<4 x float> %a, <4 x float> %b) #0 226 %r = call <4 x half> @llvm.copysign.v4f16(<4 x half> %a, <4 x half> %b) 327 declare <4 x half> @llvm.copysign.v4f16(<4 x half> %a, <4 x half> %b) #0 397 %r = call <8 x half> @llvm.copysign.v8f16(<8 x half> %a, <8 x half> %b) [all …]
|
| H A D | fcopysign.ll | 7 declare fp128 @llvm.copysign.f128(fp128, fp128) 8 declare float @llvm.copysign.f32(float %a, float %b) 9 declare double @llvm.copysign.f64(double %a, double %b) 10 declare half @llvm.copysign.f16(half %a, half %b) 51 …%call = tail call fp128 @llvm.copysign.f128(fp128 0xL00000000000000007FFF000000000000, fp128 %conv… 91 %call = tail call fp128 @llvm.copysign.f128(fp128 %v0, fp128 %conv) 114 %c = call float @llvm.copysign.f32(float %a, float %b) 138 %c = call double @llvm.copysign.f64(double %a, double %b) 167 %c = call half @llvm.copysign.f16(half %a, half %b)
|
| /llvm-project-15.0.7/llvm/test/CodeGen/AMDGPU/ |
| H A D | fcopysign.f32.ll | 5 declare float @llvm.copysign.f32(float, float) nounwind readnone 6 declare <2 x float> @llvm.copysign.v2f32(<2 x float>, <2 x float>) nounwind readnone 7 declare <4 x float> @llvm.copysign.v4f32(<4 x float>, <4 x float>) nounwind readnone 23 %result = call float @llvm.copysign.f32(float %mag, float %sign) 34 %result = call <2 x float> @llvm.copysign.v2f32(<2 x float> %mag, <2 x float> %sign) 47 %result = call <4 x float> @llvm.copysign.v4f32(<4 x float> %mag, <4 x float> %sign)
|
| H A D | fcopysign.f64.ll | 4 declare double @llvm.copysign.f64(double, double) nounwind readnone 5 declare <2 x double> @llvm.copysign.v2f64(<2 x double>, <2 x double>) nounwind readnone 6 declare <4 x double> @llvm.copysign.v4f64(<4 x double>, <4 x double>) nounwind readnone 21 %result = call double @llvm.copysign.f64(double %mag, double %sign) 38 %result = call double @llvm.copysign.f64(double %mag, double %c) 46 %result = call <2 x double> @llvm.copysign.v2f64(<2 x double> %mag, <2 x double> %sign) 54 %result = call <4 x double> @llvm.copysign.v4f64(<4 x double> %mag, <4 x double> %sign)
|
| H A D | fcopysign.f16.ll | 5 declare half @llvm.copysign.f16(half, half) 6 declare float @llvm.copysign.f32(float, float) 7 declare double @llvm.copysign.f64(double, double) 8 declare <2 x half> @llvm.copysign.v2f16(<2 x half>, <2 x half>) 9 declare <3 x half> @llvm.copysign.v3f16(<3 x half>, <3 x half>) 10 declare <4 x half> @llvm.copysign.v4f16(<4 x half>, <4 x half>) 35 %out = call half @llvm.copysign.f16(half %mag, half %sign) 59 %out = call float @llvm.copysign.f32(float %mag.ext, float %sign) 110 %out = call float @llvm.copysign.f32(float %mag, float %sign.ext) 164 %out = call half @llvm.copysign.f16(half %mag, half %sign.trunc) [all …]
|
| /llvm-project-15.0.7/llvm/test/CodeGen/RISCV/rvv/ |
| H A D | vfcopysign-sdnode.ll | 7 declare <vscale x 1 x half> @llvm.copysign.nxv1f16(<vscale x 1 x half>, <vscale x 1 x half>) 15 …%r = call <vscale x 1 x half> @llvm.copysign.nxv1f16(<vscale x 1 x half> %vm, <vscale x 1 x half> … 179 declare <vscale x 2 x half> @llvm.copysign.nxv2f16(<vscale x 2 x half>, <vscale x 2 x half>) 227 declare <vscale x 4 x half> @llvm.copysign.nxv4f16(<vscale x 4 x half>, <vscale x 4 x half>) 275 declare <vscale x 8 x half> @llvm.copysign.nxv8f16(<vscale x 8 x half>, <vscale x 8 x half>) 447 declare <vscale x 16 x half> @llvm.copysign.nxv16f16(<vscale x 16 x half>, <vscale x 16 x half>) 495 declare <vscale x 32 x half> @llvm.copysign.nxv32f16(<vscale x 32 x half>, <vscale x 32 x half>) 543 declare <vscale x 1 x float> @llvm.copysign.nxv1f32(<vscale x 1 x float>, <vscale x 1 x float>) 709 declare <vscale x 2 x float> @llvm.copysign.nxv2f32(<vscale x 2 x float>, <vscale x 2 x float>) 757 declare <vscale x 4 x float> @llvm.copysign.nxv4f32(<vscale x 4 x float>, <vscale x 4 x float>) [all …]
|
| /llvm-project-15.0.7/clang/test/Headers/Inputs/include/ |
| H A D | complex | 151 __a = copysign(std::isinf(__a) ? _Tp(1) : _Tp(0), __a); 154 __c = copysign(_Tp(0), __c); 156 __d = copysign(_Tp(0), __d); 163 __a = copysign(_Tp(0), __a); 165 __b = copysign(_Tp(0), __b); 171 __a = copysign(_Tp(0), __a); 173 __b = copysign(_Tp(0), __b); 175 __c = copysign(_Tp(0), __c); 177 __d = copysign(_Tp(0), __d); 223 __x = copysign(_Tp(INFINITY), __c) * __a; [all …]
|
| /llvm-project-15.0.7/llvm/test/CodeGen/PowerPC/ |
| H A D | vector-copysign.ll | 12 %0 = tail call <2 x double> @llvm.copysign.v2f64(<2 x double> %a, <2 x double> %b) 22 %0 = tail call <4 x float> @llvm.copysign.v4f32(<4 x float> %a, <4 x float> %b) 26 declare <2 x double> @llvm.copysign.v2f64(<2 x double>, <2 x double>) 27 declare <4 x float> @llvm.copysign.v4f32(<4 x float>, <4 x float>)
|
| /llvm-project-15.0.7/libcxx/include/ |
| H A D | complex | 607 __c = copysign(_Tp(0), __c); 609 __d = copysign(_Tp(0), __d); 617 __a = copysign(_Tp(0), __a); 1161 return complex<_Tp>(copysign(__x.imag(), __x.real()), copysign(__pi/_Tp(2), __x.imag())); 1163 return complex<_Tp>(copysign(__z.real(), __x.real()), copysign(__z.imag(), __x.imag())); 1197 return complex<_Tp>(copysign(__z.real(), _Tp(0)), copysign(__z.imag(), __x.imag())); 1209 return complex<_Tp>(copysign(_Tp(0), __x.real()), copysign(__pi/_Tp(2), __x.imag())); 1223 return complex<_Tp>(copysign(_Tp(0), __x.real()), copysign(__pi/_Tp(2), __x.imag())); 1227 return complex<_Tp>(copysign(_Tp(INFINITY), __x.real()), copysign(_Tp(0), __x.imag())); 1230 return complex<_Tp>(copysign(__z.real(), __x.real()), copysign(__z.imag(), __x.imag())); [all …]
|