llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Brian Cain (androm3da) <details> <summary>Changes</summary> The C intrinsic header hvx_hexagon_protos.h only guarded the 53 HVXIEEEFP intrinsics by architecture version (__HVX_ARCH__ >= 68/73/79), making them visible even when IEEE FP is not enabled. Add defined(__HVX_IEEE_FP__) to each guard so the intrinsics are only available when the extension is active (+hvx-ieee-fp). --- Patch is 35.56 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/184031.diff 2 Files Affected: - (modified) clang/lib/Headers/hvx_hexagon_protos.h (+106-106) - (modified) clang/test/Headers/hexagon-hvx-headers.c (+39) ``````````diff diff --git a/clang/lib/Headers/hvx_hexagon_protos.h b/clang/lib/Headers/hvx_hexagon_protos.h index 19309a40d6dd1..63120d4061b2b 100644 --- a/clang/lib/Headers/hvx_hexagon_protos.h +++ b/clang/lib/Headers/hvx_hexagon_protos.h @@ -4386,7 +4386,7 @@ #define Q6_Ww_v6mpyacc_WwWubWbI_v(Vxx,Vuu,Vvv,Iu2) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_v6mpyvubs10_vxx)(Vxx,Vuu,Vvv,Iu2) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vabs(Vu32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vabs_Vhf(HVX_Vector Vu) @@ -4395,9 +4395,9 @@ ========================================================================== */ #define Q6_Vhf_vabs_Vhf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vabs_hf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vabs(Vu32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vabs_Vsf(HVX_Vector Vu) @@ -4406,7 +4406,7 @@ ========================================================================== */ #define Q6_Vsf_vabs_Vsf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vabs_sf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -4419,7 +4419,7 @@ #define Q6_Vqf16_vadd_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_hf)(Vu,Vv) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vadd(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vadd_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4428,7 +4428,7 @@ ========================================================================== */ #define Q6_Vhf_vadd_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_hf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -4485,7 +4485,7 @@ #define Q6_Vqf32_vadd_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_sf)(Vu,Vv) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vdd32.sf=vadd(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vadd_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4494,9 +4494,9 @@ ========================================================================== */ #define Q6_Wsf_vadd_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_sf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vadd(Vu32.sf,Vv32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vadd_VsfVsf(HVX_Vector Vu, HVX_Vector Vv) @@ -4505,9 +4505,9 @@ ========================================================================== */ #define Q6_Vsf_vadd_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vadd_sf_sf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.w=vfmv(Vu32.w) C Intrinsic Prototype: HVX_Vector Q6_Vw_vfmv_Vw(HVX_Vector Vu) @@ -4516,7 +4516,7 @@ ========================================================================== */ #define Q6_Vw_vfmv_Vw(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vassign_fp)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -4551,7 +4551,7 @@ #define Q6_Vsf_equals_Vqf32(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vconv_sf_qf32)(Vu) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.b=vcvt(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vb_vcvt_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4560,9 +4560,9 @@ ========================================================================== */ #define Q6_Vb_vcvt_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_b_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.h=vcvt(Vu32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vh_vcvt_Vhf(HVX_Vector Vu) @@ -4571,9 +4571,9 @@ ========================================================================== */ #define Q6_Vh_vcvt_Vhf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_h_hf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vdd32.hf=vcvt(Vu32.b) C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vcvt_Vb(HVX_Vector Vu) @@ -4582,9 +4582,9 @@ ========================================================================== */ #define Q6_Whf_vcvt_Vb(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_hf_b)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vcvt(Vu32.h) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vcvt_Vh(HVX_Vector Vu) @@ -4593,9 +4593,9 @@ ========================================================================== */ #define Q6_Vhf_vcvt_Vh(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_hf_h)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vcvt(Vu32.sf,Vv32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vcvt_VsfVsf(HVX_Vector Vu, HVX_Vector Vv) @@ -4604,9 +4604,9 @@ ========================================================================== */ #define Q6_Vhf_vcvt_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_hf_sf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vdd32.hf=vcvt(Vu32.ub) C Intrinsic Prototype: HVX_VectorPair Q6_Whf_vcvt_Vub(HVX_Vector Vu) @@ -4615,9 +4615,9 @@ ========================================================================== */ #define Q6_Whf_vcvt_Vub(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_hf_ub)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vcvt(Vu32.uh) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vcvt_Vuh(HVX_Vector Vu) @@ -4626,9 +4626,9 @@ ========================================================================== */ #define Q6_Vhf_vcvt_Vuh(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_hf_uh)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vdd32.sf=vcvt(Vu32.hf) C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vcvt_Vhf(HVX_Vector Vu) @@ -4637,9 +4637,9 @@ ========================================================================== */ #define Q6_Wsf_vcvt_Vhf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_sf_hf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.ub=vcvt(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vub_vcvt_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4648,9 +4648,9 @@ ========================================================================== */ #define Q6_Vub_vcvt_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_ub_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.uh=vcvt(Vu32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vuh_vcvt_Vhf(HVX_Vector Vu) @@ -4659,9 +4659,9 @@ ========================================================================== */ #define Q6_Vuh_vcvt_Vhf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vcvt_uh_hf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vdmpy(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vdmpy_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4670,9 +4670,9 @@ ========================================================================== */ #define Q6_Vsf_vdmpy_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vdmpy_sf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vx32.sf+=vdmpy(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vdmpyacc_VsfVhfVhf(HVX_Vector Vx, HVX_Vector Vu, HVX_Vector Vv) @@ -4681,9 +4681,9 @@ ========================================================================== */ #define Q6_Vsf_vdmpyacc_VsfVhfVhf(Vx,Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vdmpy_sf_hf_acc)(Vx,Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vfmax(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vfmax_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4692,9 +4692,9 @@ ========================================================================== */ #define Q6_Vhf_vfmax_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfmax_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vfmax(Vu32.sf,Vv32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vfmax_VsfVsf(HVX_Vector Vu, HVX_Vector Vv) @@ -4703,9 +4703,9 @@ ========================================================================== */ #define Q6_Vsf_vfmax_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfmax_sf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vfmin(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vfmin_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4714,9 +4714,9 @@ ========================================================================== */ #define Q6_Vhf_vfmin_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfmin_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vfmin(Vu32.sf,Vv32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vfmin_VsfVsf(HVX_Vector Vu, HVX_Vector Vv) @@ -4725,9 +4725,9 @@ ========================================================================== */ #define Q6_Vsf_vfmin_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfmin_sf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vfneg(Vu32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vfneg_Vhf(HVX_Vector Vu) @@ -4736,9 +4736,9 @@ ========================================================================== */ #define Q6_Vhf_vfneg_Vhf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfneg_hf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vfneg(Vu32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vfneg_Vsf(HVX_Vector Vu) @@ -4747,7 +4747,7 @@ ========================================================================== */ #define Q6_Vsf_vfneg_Vsf(Vu) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vfneg_sf)(Vu) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -4881,7 +4881,7 @@ #define Q6_Vsf_vmin_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmin_sf)(Vu,Vv) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vmpy(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vmpy_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -4890,9 +4890,9 @@ ========================================================================== */ #define Q6_Vhf_vmpy_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_hf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vx32.hf+=vmpy(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vmpyacc_VhfVhfVhf(HVX_Vector Vx, HVX_Vector Vu, HVX_Vector Vv) @@ -4901,7 +4901,7 @@ ========================================================================== */ #define Q6_Vhf_vmpyacc_VhfVhfVhf(Vx,Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_hf_hf_acc)(Vx,Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -4991,7 +4991,7 @@ #define Q6_Vqf32_vmpy_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_qf32_sf)(Vu,Vv) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vdd32.sf=vmpy(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vmpy_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -5000,9 +5000,9 @@ ========================================================================== */ #define Q6_Wsf_vmpy_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_sf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vxx32.sf+=vmpy(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vmpyacc_WsfVhfVhf(HVX_VectorPair Vxx, HVX_Vector Vu, HVX_Vector Vv) @@ -5011,9 +5011,9 @@ ========================================================================== */ #define Q6_Wsf_vmpyacc_WsfVhfVhf(Vxx,Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_sf_hf_acc)(Vxx,Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.sf=vmpy(Vu32.sf,Vv32.sf) C Intrinsic Prototype: HVX_Vector Q6_Vsf_vmpy_VsfVsf(HVX_Vector Vu, HVX_Vector Vv) @@ -5022,7 +5022,7 @@ ========================================================================== */ #define Q6_Vsf_vmpy_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vmpy_sf_sf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -5035,7 +5035,7 @@ #define Q6_Vqf16_vsub_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vsub_hf)(Vu,Vv) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vd32.hf=vsub(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_Vector Q6_Vhf_vsub_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -5044,7 +5044,7 @@ ========================================================================== */ #define Q6_Vhf_vsub_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vsub_hf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#endif /* __HEXAGON_ARCH___ >= 68 && __HVX_IEEE_FP__ */ #if __HVX_ARCH__ >= 68 /* ========================================================================== @@ -5101,7 +5101,7 @@ #define Q6_Vqf32_vsub_VsfVsf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vsub_sf)(Vu,Vv) #endif /* __HEXAGON_ARCH___ >= 68 */ -#if __HVX_ARCH__ >= 68 +#if __HVX_ARCH__ >= 68 && defined(__HVX_IEEE_FP__) /* ========================================================================== Assembly Syntax: Vdd32.sf=vsub(Vu32.hf,Vv32.hf) C Intrinsic Prototype: HVX_VectorPair Q6_Wsf_vsub_VhfVhf(HVX_Vector Vu, HVX_Vector Vv) @@ -5110,9 +5110,9 @@ ========================================================================== */ #define Q6_Wsf_vsub_VhfVhf(Vu,Vv) __BUILTIN_VECTOR_WRAP(__builtin_HEXAGON_V6_vsub_sf_hf)(Vu,Vv) -#endif /* __HEXAGON_ARCH___ >= 68 */ +#e... [truncated] `````````` </details> https://github.com/llvm/llvm-project/pull/184031 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
