Skip to content

Commit bb13f3a

Browse files
committed
Rename ConvertFToTF32INTEL to RoundFToTF32INTEL (KhronosGroup#1913)
Extension name will be preserved for a while for binary compatibility. Signed-off-by: Sidorov, Dmitry <[email protected]>
1 parent 567892f commit bb13f3a

File tree

6 files changed

+29
-25
lines changed

6 files changed

+29
-25
lines changed

include/LLVMSPIRVExtensions.inc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ EXT(SPV_INTEL_arithmetic_fence)
4848
EXT(SPV_INTEL_bfloat16_conversion)
4949
EXT(SPV_INTEL_split_barrier)
5050
EXT(SPV_INTEL_masked_gather_scatter)
51-
EXT(SPV_INTEL_tensor_float32_conversion)
51+
EXT(SPV_INTEL_tensor_float32_conversion) // TODO: to remove old extension
52+
EXT(SPV_INTEL_tensor_float32_rounding)
5253
EXT(SPV_INTEL_hw_thread_queries)
5354
EXT(SPV_EXT_relaxed_printf_string_address_space)

lib/SPIRV/libSPIRV/SPIRVInstruction.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3437,13 +3437,13 @@ _SPIRV_OP(MaskedScatter, false, 5)
34373437
#undef _SPIRV_OP
34383438

34393439
template <Op OC>
3440-
class SPIRVTensorFloat32ConversionINTELInstBase : public SPIRVUnaryInst<OC> {
3440+
class SPIRVTensorFloat32RoundingINTELInstBase : public SPIRVUnaryInst<OC> {
34413441
protected:
34423442
SPIRVCapVec getRequiredCapability() const override {
3443-
return getVec(internal::CapabilityTensorFloat32ConversionINTEL);
3443+
return getVec(internal::CapabilityTensorFloat32RoundingINTEL);
34443444
}
34453445

3446-
llvm::Optional<ExtensionID> getRequiredExtension() const override {
3446+
std::optional<ExtensionID> getRequiredExtension() const override {
34473447
return ExtensionID::SPV_INTEL_tensor_float32_conversion;
34483448
}
34493449

@@ -3461,8 +3461,8 @@ class SPIRVTensorFloat32ConversionINTELInstBase : public SPIRVUnaryInst<OC> {
34613461
// because it may call a method of class Module that may modify LiteralMap
34623462
// of Module field. That modification is not impacting validate method for
34633463
// these instructions, so const_cast is safe here.
3464-
using SPVTF32ConvTy = SPIRVTensorFloat32ConversionINTELInstBase<OC>;
3465-
SPIRVValue *Input = const_cast<SPVTF32ConvTy *>(this)->getOperand(0);
3464+
using SPVTF32RoundTy = SPIRVTensorFloat32RoundingINTELInstBase<OC>;
3465+
SPIRVValue *Input = const_cast<SPVTF32RoundTy *>(this)->getOperand(0);
34663466

34673467
SPIRVType *InCompTy = Input->getType();
34683468
SPIRVWord InCompCount = 1;
@@ -3490,8 +3490,8 @@ class SPIRVTensorFloat32ConversionINTELInstBase : public SPIRVUnaryInst<OC> {
34903490
};
34913491

34923492
#define _SPIRV_OP(x) \
3493-
typedef SPIRVTensorFloat32ConversionINTELInstBase<internal::Op##x> SPIRV##x;
3494-
_SPIRV_OP(ConvertFToTF32INTEL)
3493+
typedef SPIRVTensorFloat32RoundingINTELInstBase<internal::Op##x> SPIRV##x;
3494+
_SPIRV_OP(RoundFToTF32INTEL)
34953495
#undef _SPIRV_OP
34963496
} // namespace SPIRV
34973497

lib/SPIRV/libSPIRV/SPIRVNameMapEnum.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -584,8 +584,8 @@ template <> inline void SPIRVMap<Capability, std::string>::init() {
584584
add(internal::CapabilityFPArithmeticFenceINTEL, "FPArithmeticFenceINTEL");
585585
add(internal::CapabilityBfloat16ConversionINTEL, "Bfloat16ConversionINTEL");
586586
add(internal::CapabilityMaskedGatherScatterINTEL, "MaskedGatherScatterINTEL");
587-
add(internal::CapabilityTensorFloat32ConversionINTEL,
588-
"TensorFloat32ConversionINTEL");
587+
add(internal::CapabilityTensorFloat32RoundingINTEL,
588+
"TensorFloat32RoundingINTEL");
589589
add(internal::CapabilityHWThreadQueryINTEL, "HWThreadQueryINTEL");
590590
}
591591
SPIRV_DEF_NAMEMAP(Capability, SPIRVCapabilityNameMap)

lib/SPIRV/libSPIRV/SPIRVOpCodeEnumInternal.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ _SPIRV_OP_INTERNAL(ConvertFToBF16INTEL, internal::OpConvertFToBF16INTEL)
1010
_SPIRV_OP_INTERNAL(ConvertBF16ToFINTEL, internal::OpConvertBF16ToFINTEL)
1111
_SPIRV_OP_INTERNAL(MaskedGatherINTEL, internal::OpMaskedGatherINTEL)
1212
_SPIRV_OP_INTERNAL(MaskedScatterINTEL, internal::OpMaskedScatterINTEL)
13-
_SPIRV_OP_INTERNAL(ConvertFToTF32INTEL, internal::ConvertFToTF32INTEL)
13+
_SPIRV_OP_INTERNAL(RoundFToTF32INTEL, internal::RoundFToTF32INTEL)

lib/SPIRV/libSPIRV/spirv_internal.hpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ enum InternalOp {
4242
IOpConvertFToBF16INTEL = 6116,
4343
IOpConvertBF16ToFINTEL = 6117,
4444
IOpArithmeticFenceINTEL = 6145,
45-
IOpConvertFToTF32INTEL = 6426,
45+
IOpRoundFToTF32INTEL = 6426,
4646
IOpMaskedGatherINTEL = 6428,
4747
IOpMaskedScatterINTEL = 6429,
4848
IOpPrev = OpMax - 2,
@@ -70,7 +70,7 @@ enum InternalCapability {
7070
ICapTokenTypeINTEL = 6112,
7171
ICapBfloat16ConversionINTEL = 6115,
7272
ICapFPArithmeticFenceINTEL = 6144,
73-
ICapabilityTensorFloat32ConversionINTEL = 6425,
73+
ICapabilityTensorFloat32RoundingINTEL = 6425,
7474
ICapabilityMaskedGatherScatterINTEL = 6427,
7575
ICapabilityHWThreadQueryINTEL = 6134,
7676
};
@@ -97,6 +97,9 @@ _SPIRV_OP(Op, MaskedScatterINTEL)
9797
_SPIRV_OP(Capability, TensorFloat32ConversionINTEL)
9898
_SPIRV_OP(Op, ConvertFToTF32INTEL)
9999

100+
_SPIRV_OP(Capability, TensorFloat32RoundingINTEL)
101+
_SPIRV_OP(Op, RoundFToTF32INTEL)
102+
100103
enum InternalBuiltIn {
101104
IBuiltInSubDeviceIDINTEL = 6135,
102105
IBuiltInGlobalHWThreadIDINTEL = 6136,

test/transcoding/SPV_INTEL_tensor_float32_conversion/convert_tensor_float32.ll

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-n8:16:32:64"
1414
target triple = "spir64-unknown-unknown"
1515

16-
; CHECK-SPIRV: Capability TensorFloat32ConversionINTEL
16+
; CHECK-SPIRV: Capability TensorFloat32RoundingINTEL
1717
; CHECK-SPIRV: Extension "SPV_INTEL_tensor_float32_conversion"
1818
; CHECK-SPIRV: TypeFloat [[#FP32Ty:]] 32
1919
; CHECK-SPIRV: TypeVector [[#FP32v8Ty:]] [[#FP32Ty]] 8
@@ -22,24 +22,24 @@ target triple = "spir64-unknown-unknown"
2222
; CHECK-SPIRV: FunctionParameter [[#FP32Ty]] [[FP32ValId:.*]]
2323
; CHECK-SPIRV: FunctionParameter [[#FP32v8Ty]] [[FP32v8ValId:.*]]
2424

25-
; CHECK-SPIRV: ConvertFToTF32INTEL [[#FP32Ty]] [[#]] [[FP32ValId]]
26-
; CHECK-SPIRV: ConvertFToTF32INTEL [[#FP32v8Ty]] [[#]] [[FP32v8ValId]]
27-
; CHECK-SPIRV: ConvertFToTF32INTEL [[#FP32Ty]] [[#]] [[#CONST]]
25+
; CHECK-SPIRV: RoundFToTF32INTEL [[#FP32Ty]] [[#]] [[FP32ValId]]
26+
; CHECK-SPIRV: RoundFToTF32INTEL [[#FP32v8Ty]] [[#]] [[FP32v8ValId]]
27+
; CHECK-SPIRV: RoundFToTF32INTEL [[#FP32Ty]] [[#]] [[#CONST]]
2828

29-
; CHECK-LLVM: call spir_func float @_Z27__spirv_ConvertFToTF32INTELf(float
30-
; CHECK-LLVM: call spir_func <8 x float> @_Z27__spirv_ConvertFToTF32INTELDv8_f(<8 x float>
31-
; CHECK-LLVM: call spir_func float @_Z27__spirv_ConvertFToTF32INTELf(float 1.000000e+00)
29+
; CHECK-LLVM: call spir_func float @_Z25__spirv_RoundFToTF32INTELf(float
30+
; CHECK-LLVM: call spir_func <8 x float> @_Z25__spirv_RoundFToTF32INTELDv8_f(<8 x float>
31+
; CHECK-LLVM: call spir_func float @_Z25__spirv_RoundFToTF32INTELf(float 1.000000e+00)
3232

3333
define spir_func void @_Z2opffv8(float %a, <8 x float> %in) {
34-
%1 = tail call spir_func float @_Z27__spirv_ConvertFToTF32INTELf(float %a)
35-
%2 = tail call spir_func <8 x float> @_Z27__spirv_ConvertFToTF32INTELDv8_f(<8 x float> %in)
36-
%3 = tail call spir_func float @_Z27__spirv_ConvertFToTF32INTELf(float 1.000000e+00)
34+
%1 = tail call spir_func float @_Z25__spirv_RoundFToTF32INTELf(float %a)
35+
%2 = tail call spir_func <8 x float> @_Z25__spirv_RoundFToTF32INTELDv8_f(<8 x float> %in)
36+
%3 = tail call spir_func float @_Z25__spirv_RoundFToTF32INTELf(float 1.000000e+00)
3737
ret void
3838
}
3939

40-
declare spir_func float @_Z27__spirv_ConvertFToTF32INTELf(float)
40+
declare spir_func float @_Z25__spirv_RoundFToTF32INTELf(float)
4141

42-
declare spir_func <8 x float> @_Z27__spirv_ConvertFToTF32INTELDv8_f(<8 x float>)
42+
declare spir_func <8 x float> @_Z25__spirv_RoundFToTF32INTELDv8_f(<8 x float>)
4343

4444
!opencl.spir.version = !{!0}
4545
!spirv.Source = !{!1}

0 commit comments

Comments
 (0)