Skip to content

Commit 733c4fc

Browse files
committed
Revert "Promote SPV_INTEL_optimization_hints to SPV_KHR_expect_assume"
This reverts commit d8cb9a8.
1 parent f7d6423 commit 733c4fc

File tree

13 files changed

+72
-65
lines changed

13 files changed

+72
-65
lines changed

llvm-spirv/include/LLVMSPIRVExtensions.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ EXT(SPV_EXT_shader_atomic_float_min_max)
77
EXT(SPV_KHR_no_integer_wrap_decoration)
88
EXT(SPV_KHR_float_controls)
99
EXT(SPV_KHR_linkonce_odr)
10-
EXT(SPV_KHR_expect_assume)
1110
EXT(SPV_INTEL_subgroups)
1211
EXT(SPV_INTEL_media_block_io)
1312
EXT(SPV_INTEL_device_side_avc_motion_estimation)
@@ -22,6 +21,7 @@ EXT(SPV_INTEL_kernel_attributes)
2221
EXT(SPV_INTEL_io_pipes)
2322
EXT(SPV_INTEL_inline_assembly)
2423
EXT(SPV_INTEL_arbitrary_precision_integers)
24+
EXT(SPV_INTEL_optimization_hints)
2525
EXT(SPV_INTEL_float_controls2)
2626
EXT(SPV_INTEL_vector_compute)
2727
EXT(SPV_INTEL_fast_composite)

llvm-spirv/lib/SPIRV/SPIRVReader.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2433,16 +2433,16 @@ Value *SPIRVToLLVM::transValueWithoutDecoration(SPIRVValue *BV, Function *F,
24332433
return mapValue(BV, Call);
24342434
}
24352435

2436-
case OpAssumeTrueKHR: {
2436+
case internal::OpAssumeTrueINTEL: {
24372437
IRBuilder<> Builder(BB);
2438-
SPIRVAssumeTrueKHR *BC = static_cast<SPIRVAssumeTrueKHR *>(BV);
2438+
SPIRVAssumeTrueINTEL *BC = static_cast<SPIRVAssumeTrueINTEL *>(BV);
24392439
Value *Condition = transValue(BC->getCondition(), F, BB);
24402440
return mapValue(BV, Builder.CreateAssumption(Condition));
24412441
}
24422442

2443-
case OpExpectKHR: {
2443+
case internal::OpExpectINTEL: {
24442444
IRBuilder<> Builder(BB);
2445-
SPIRVExpectKHRInstBase *BC = static_cast<SPIRVExpectKHRInstBase *>(BV);
2445+
SPIRVExpectINTELInstBase *BC = static_cast<SPIRVExpectINTELInstBase *>(BV);
24462446
Type *RetTy = transType(BC->getType());
24472447
Value *Val = transValue(BC->getOperand(0), F, BB);
24482448
Value *ExpVal = transValue(BC->getOperand(1), F, BB);

llvm-spirv/lib/SPIRV/SPIRVWriter.cpp

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2380,11 +2380,12 @@ SPIRVValue *LLVMToSPIRVBase::transIntrinsicInst(IntrinsicInst *II,
23802380
switch (II->getIntrinsicID()) {
23812381
case Intrinsic::assume: {
23822382
// llvm.assume translation is currently supported only within
2383-
// SPV_KHR_expect_assume extension, ignore it otherwise, since it's
2383+
// SPV_INTEL_optimization_hints extension, ignore it otherwise, since it's
23842384
// an optimization hint
2385-
if (BM->isAllowedToUseExtension(ExtensionID::SPV_KHR_expect_assume)) {
2385+
if (BM->isAllowedToUseExtension(
2386+
ExtensionID::SPV_INTEL_optimization_hints)) {
23862387
SPIRVValue *Condition = transValue(II->getArgOperand(0), BB);
2387-
return BM->addAssumeTrueKHRInst(Condition, BB);
2388+
return BM->addAssumeTrueINTELInst(Condition, BB);
23882389
}
23892390
return nullptr;
23902391
}
@@ -2495,13 +2496,14 @@ SPIRVValue *LLVMToSPIRVBase::transIntrinsicInst(IntrinsicInst *II,
24952496
}
24962497
case Intrinsic::expect: {
24972498
// llvm.expect translation is currently supported only within
2498-
// SPV_KHR_expect_assume extension, replace it with a translated value of #0
2499-
// operand otherwise, since it's an optimization hint
2499+
// SPV_INTEL_optimization_hints extension, replace it with a translated
2500+
// value of #0 operand otherwise, since it's an optimization hint
25002501
SPIRVValue *Value = transValue(II->getArgOperand(0), BB);
2501-
if (BM->isAllowedToUseExtension(ExtensionID::SPV_KHR_expect_assume)) {
2502+
if (BM->isAllowedToUseExtension(
2503+
ExtensionID::SPV_INTEL_optimization_hints)) {
25022504
SPIRVType *Ty = transType(II->getType());
25032505
SPIRVValue *ExpectedValue = transValue(II->getArgOperand(1), BB);
2504-
return BM->addExpectKHRInst(Ty, Value, ExpectedValue, BB);
2506+
return BM->addExpectINTELInst(Ty, Value, ExpectedValue, BB);
25052507
}
25062508
return Value;
25072509
}

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVInstruction.h

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2864,30 +2864,30 @@ _SPIRV_OP(GenericPtrMemSemantics, true, 4, false)
28642864
_SPIRV_OP(GenericCastToPtrExplicit, true, 5, false, 1)
28652865
#undef _SPIRV_OP
28662866

2867-
class SPIRVAssumeTrueKHR : public SPIRVInstruction {
2867+
class SPIRVAssumeTrueINTEL : public SPIRVInstruction {
28682868
public:
2869-
static const Op OC = OpAssumeTrueKHR;
2869+
static const Op OC = internal::OpAssumeTrueINTEL;
28702870
static const SPIRVWord FixedWordCount = 2;
28712871

2872-
SPIRVAssumeTrueKHR(SPIRVId TheCondition, SPIRVBasicBlock *BB)
2872+
SPIRVAssumeTrueINTEL(SPIRVId TheCondition, SPIRVBasicBlock *BB)
28732873
: SPIRVInstruction(FixedWordCount, OC, BB), ConditionId(TheCondition) {
28742874
validate();
28752875
setHasNoId();
28762876
setHasNoType();
28772877
assert(BB && "Invalid BB");
28782878
}
28792879

2880-
SPIRVAssumeTrueKHR() : SPIRVInstruction(OC), ConditionId(SPIRVID_MAX) {
2880+
SPIRVAssumeTrueINTEL() : SPIRVInstruction(OC), ConditionId(SPIRVID_MAX) {
28812881
setHasNoId();
28822882
setHasNoType();
28832883
}
28842884

28852885
SPIRVCapVec getRequiredCapability() const override {
2886-
return getVec(CapabilityExpectAssumeKHR);
2886+
return getVec(internal::CapabilityOptimizationHintsINTEL);
28872887
}
28882888

28892889
llvm::Optional<ExtensionID> getRequiredExtension() const override {
2890-
return ExtensionID::SPV_KHR_expect_assume;
2890+
return ExtensionID::SPV_INTEL_optimization_hints;
28912891
}
28922892

28932893
SPIRVValue *getCondition() const { return getValue(ConditionId); }
@@ -2901,21 +2901,22 @@ class SPIRVAssumeTrueKHR : public SPIRVInstruction {
29012901
SPIRVId ConditionId;
29022902
};
29032903

2904-
class SPIRVExpectKHRInstBase : public SPIRVInstTemplateBase {
2904+
class SPIRVExpectINTELInstBase : public SPIRVInstTemplateBase {
29052905
protected:
29062906
SPIRVCapVec getRequiredCapability() const override {
2907-
return getVec(CapabilityExpectAssumeKHR);
2907+
return getVec(internal::CapabilityOptimizationHintsINTEL);
29082908
}
29092909

29102910
llvm::Optional<ExtensionID> getRequiredExtension() const override {
2911-
return ExtensionID::SPV_KHR_expect_assume;
2911+
return ExtensionID::SPV_INTEL_optimization_hints;
29122912
}
29132913
};
29142914

2915-
#define _SPIRV_OP(x, ...) \
2916-
typedef SPIRVInstTemplate<SPIRVExpectKHRInstBase, Op##x, __VA_ARGS__> \
2915+
#define _SPIRV_OP_INTERNAL(x, ...) \
2916+
typedef SPIRVInstTemplate<SPIRVExpectINTELInstBase, internal::Op##x, \
2917+
__VA_ARGS__> \
29172918
SPIRV##x;
2918-
_SPIRV_OP(ExpectKHR, true, 5)
2919+
_SPIRV_OP_INTERNAL(ExpectINTEL, true, 5)
29192920
#undef _SPIRV_OP_INTERNAL
29202921

29212922
class SPIRVSubgroupShuffleINTELInstBase : public SPIRVInstTemplateBase {

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVModule.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -439,6 +439,11 @@ class SPIRVModuleImpl : public SPIRVModule {
439439
SPIRVBasicBlock *) override;
440440
SPIRVInstruction *addSampledImageInst(SPIRVType *, SPIRVValue *, SPIRVValue *,
441441
SPIRVBasicBlock *) override;
442+
SPIRVInstruction *addAssumeTrueINTELInst(SPIRVValue *Condition,
443+
SPIRVBasicBlock *BB) override;
444+
SPIRVInstruction *addExpectINTELInst(SPIRVType *ResultTy, SPIRVValue *Value,
445+
SPIRVValue *ExpectedValue,
446+
SPIRVBasicBlock *BB) override;
442447
template <typename AliasingInstType>
443448
SPIRVEntry *getOrAddMemAliasingINTELInst(std::vector<SPIRVId> Args,
444449
llvm::MDNode *MD);
@@ -448,11 +453,6 @@ class SPIRVModuleImpl : public SPIRVModule {
448453
llvm::MDNode *MD) override;
449454
SPIRVEntry *getOrAddAliasScopeListDeclINTELInst(std::vector<SPIRVId> Args,
450455
llvm::MDNode *MD) override;
451-
SPIRVInstruction *addAssumeTrueKHRInst(SPIRVValue *Condition,
452-
SPIRVBasicBlock *BB) override;
453-
SPIRVInstruction *addExpectKHRInst(SPIRVType *ResultTy, SPIRVValue *Value,
454-
SPIRVValue *ExpectedValue,
455-
SPIRVBasicBlock *BB) override;
456456

457457
virtual SPIRVId getExtInstSetId(SPIRVExtInstSetKind Kind) const override;
458458

@@ -1591,17 +1591,17 @@ SPIRVInstruction *SPIRVModuleImpl::addSampledImageInst(SPIRVType *ResultTy,
15911591
BB);
15921592
}
15931593

1594-
SPIRVInstruction *SPIRVModuleImpl::addAssumeTrueKHRInst(SPIRVValue *Condition,
1595-
SPIRVBasicBlock *BB) {
1596-
return addInstruction(new SPIRVAssumeTrueKHR(Condition->getId(), BB), BB);
1594+
SPIRVInstruction *SPIRVModuleImpl::addAssumeTrueINTELInst(SPIRVValue *Condition,
1595+
SPIRVBasicBlock *BB) {
1596+
return addInstruction(new SPIRVAssumeTrueINTEL(Condition->getId(), BB), BB);
15971597
}
15981598

1599-
SPIRVInstruction *SPIRVModuleImpl::addExpectKHRInst(SPIRVType *ResultTy,
1600-
SPIRVValue *Value,
1601-
SPIRVValue *ExpectedValue,
1602-
SPIRVBasicBlock *BB) {
1599+
SPIRVInstruction *SPIRVModuleImpl::addExpectINTELInst(SPIRVType *ResultTy,
1600+
SPIRVValue *Value,
1601+
SPIRVValue *ExpectedValue,
1602+
SPIRVBasicBlock *BB) {
16031603
return addInstruction(SPIRVInstTemplateBase::create(
1604-
OpExpectKHR, ResultTy, getId(),
1604+
internal::OpExpectINTEL, ResultTy, getId(),
16051605
getVec(Value->getId(), ExpectedValue->getId()), BB,
16061606
this),
16071607
BB);

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVModule.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -448,18 +448,18 @@ class SPIRVModule {
448448
virtual SPIRVInstruction *addSampledImageInst(SPIRVType *, SPIRVValue *,
449449
SPIRVValue *,
450450
SPIRVBasicBlock *) = 0;
451+
virtual SPIRVInstruction *addAssumeTrueINTELInst(SPIRVValue *Condition,
452+
SPIRVBasicBlock *BB) = 0;
453+
virtual SPIRVInstruction *addExpectINTELInst(SPIRVType *ResultTy,
454+
SPIRVValue *Value,
455+
SPIRVValue *ExpectedValue,
456+
SPIRVBasicBlock *BB) = 0;
451457
virtual SPIRVEntry *getOrAddAliasDomainDeclINTELInst(
452458
std::vector<SPIRVId> Args, llvm::MDNode *MD) = 0;
453459
virtual SPIRVEntry *getOrAddAliasScopeDeclINTELInst(
454460
std::vector<SPIRVId> Args, llvm::MDNode *MD) = 0;
455461
virtual SPIRVEntry *getOrAddAliasScopeListDeclINTELInst(
456462
std::vector<SPIRVId> Args, llvm::MDNode *MD) = 0;
457-
virtual SPIRVInstruction *addAssumeTrueKHRInst(SPIRVValue *Condition,
458-
SPIRVBasicBlock *BB) = 0;
459-
virtual SPIRVInstruction *addExpectKHRInst(SPIRVType *ResultTy,
460-
SPIRVValue *Value,
461-
SPIRVValue *ExpectedValue,
462-
SPIRVBasicBlock *BB) = 0;
463463

464464
virtual SPIRVId getExtInstSetId(SPIRVExtInstSetKind Kind) const = 0;
465465

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVNameMapEnum.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -487,7 +487,7 @@ template <> inline void SPIRVMap<Capability, std::string>::init() {
487487
add(CapabilityAsmINTEL, "AsmINTEL");
488488
add(CapabilityVectorComputeINTEL, "VectorComputeINTEL");
489489
add(CapabilityVectorAnyINTEL, "VectorAnyINTEL");
490-
add(CapabilityExpectAssumeKHR, "ExpectAssumeKHR");
490+
add(internal::CapabilityOptimizationHintsINTEL, "OptimizationHintsINTEL");
491491
add(CapabilitySubgroupAvcMotionEstimationINTEL,
492492
"SubgroupAvcMotionEstimationINTEL");
493493
add(CapabilitySubgroupAvcMotionEstimationIntraINTEL,

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVOpCodeEnum.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -344,8 +344,6 @@ _SPIRV_OP(AsmINTEL, 5610)
344344
_SPIRV_OP(AsmCallINTEL, 5611)
345345
_SPIRV_OP(AtomicFMinEXT, 5614)
346346
_SPIRV_OP(AtomicFMaxEXT, 5615)
347-
_SPIRV_OP(AssumeTrueKHR, 5630)
348-
_SPIRV_OP(ExpectKHR, 5631)
349347
_SPIRV_OP(VmeImageINTEL, 5699)
350348
_SPIRV_OP(TypeVmeImageINTEL, 5700)
351349
_SPIRV_OP(TypeAvcImePayloadINTEL, 5701)

llvm-spirv/lib/SPIRV/libSPIRV/SPIRVOpCodeEnumInternal.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
#include "spirv_internal.hpp"
22

3+
_SPIRV_OP_INTERNAL(AssumeTrueINTEL, internal::OpAssumeTrueINTEL)
4+
_SPIRV_OP_INTERNAL(ExpectINTEL, internal::OpExpectINTEL)
35
_SPIRV_OP_INTERNAL(Forward, internal::OpForward)
46
_SPIRV_OP_INTERNAL(AliasDomainDeclINTEL, internal::OpAliasDomainDeclINTEL)
57
_SPIRV_OP_INTERNAL(AliasScopeDeclINTEL, internal::OpAliasScopeDeclINTEL)

llvm-spirv/lib/SPIRV/libSPIRV/spirv.hpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1028,7 +1028,6 @@ enum Capability {
10281028
CapabilityAtomicFloat16MinMaxEXT = 5616,
10291029
CapabilityVectorComputeINTEL = 5617,
10301030
CapabilityVectorAnyINTEL = 5619,
1031-
CapabilityExpectAssumeKHR = 5629,
10321031
CapabilitySubgroupAvcMotionEstimationINTEL = 5696,
10331032
CapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697,
10341033
CapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698,
@@ -1547,8 +1546,6 @@ enum Op {
15471546
OpAsmCallINTEL = 5611,
15481547
OpAtomicFMinEXT = 5614,
15491548
OpAtomicFMaxEXT = 5615,
1550-
OpAssumeTrueKHR = 5630,
1551-
OpExpectKHR = 5631,
15521549
OpDecorateString = 5632,
15531550
OpDecorateStringGOOGLE = 5632,
15541551
OpMemberDecorateString = 5633,

llvm-spirv/lib/SPIRV/libSPIRV/spirv_internal.hpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ enum InternalLinkageType {
3535
};
3636

3737
enum InternalOp {
38+
IOpAssumeTrueINTEL = 5630,
39+
IOpExpectINTEL = 5631,
3840
IOpAliasDomainDeclINTEL = 5911,
3941
IOpAliasScopeDeclINTEL = 5912,
4042
IOpAliasScopeListDeclINTEL = 5913,
@@ -48,6 +50,7 @@ enum InternalDecoration {
4850
};
4951

5052
enum InternalCapability {
53+
ICapOptimizationHintsINTEL = 5629,
5154
ICapMemoryAccessAliasingINTEL = 5910,
5255
ICapOptNoneINTEL = 6094
5356
};
@@ -63,6 +66,8 @@ constexpr LinkageType LinkageTypeInternal =
6366
static_cast<LinkageType>(ILTInternal);
6467

6568
constexpr Op OpForward = static_cast<Op>(IOpForward);
69+
constexpr Op OpAssumeTrueINTEL = static_cast<Op>(IOpAssumeTrueINTEL);
70+
constexpr Op OpExpectINTEL = static_cast<Op>(IOpExpectINTEL);
6671
constexpr Op OpAliasDomainDeclINTEL = static_cast<Op>(IOpAliasDomainDeclINTEL);
6772
constexpr Op OpAliasScopeDeclINTEL = static_cast<Op>(IOpAliasScopeDeclINTEL);
6873
constexpr Op OpAliasScopeListDeclINTEL =
@@ -73,6 +78,8 @@ constexpr Decoration DecorationAliasScopeINTEL =
7378
constexpr Decoration DecorationNoAliasINTEL =
7479
static_cast<Decoration>(IDecNoAliasINTEL);
7580

81+
constexpr Capability CapabilityOptimizationHintsINTEL =
82+
static_cast<Capability>(ICapOptimizationHintsINTEL);
7683
constexpr Capability CapabilityOptNoneINTEL =
7784
static_cast<Capability>(ICapOptNoneINTEL);
7885
constexpr Capability CapabilityMemoryAccessAliasingINTEL =

llvm-spirv/test/llvm-intrinsics/assume.ll

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
; RUN: llvm-as %s -o %t.bc
2-
; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_KHR_expect_assume -o %t.spv
2+
; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_optimization_hints -o %t.spv
33
; RUN: llvm-spirv %t.spv -to-text -o %t.spt
44
; RUN: FileCheck < %t.spt %s --check-prefix=CHECK-SPIRV
55
; RUN: llvm-spirv -r %t.spv -o %t.bc
@@ -12,20 +12,20 @@
1212
; RUN: llvm-spirv -r %t.spv -o %t.bc
1313
; RUN: llvm-dis < %t.bc | FileCheck %s --check-prefix=CHECK-LLVM-NO-EXT
1414

15-
; CHECK-SPIRV: Capability ExpectAssumeKHR
16-
; CHECK-SPIRV: Extension "SPV_KHR_expect_assume"
15+
; CHECK-SPIRV: Capability OptimizationHintsINTEL
16+
; CHECK-SPIRV: Extension "SPV_INTEL_optimization_hints"
1717
; CHECK-SPIRV: Name [[COMPARE:[0-9]+]] "cmp"
1818
; CHECK-SPIRV: INotEqual {{[0-9]+}} [[COMPARE]] {{[0-9]+}} {{[0-9]+}}
19-
; CHECK-SPIRV: AssumeTrueKHR [[COMPARE]]
19+
; CHECK-SPIRV: AssumeTrueINTEL [[COMPARE]]
2020

2121
; CHECK-LLVM: %cmp = icmp ne i32 %0, 0
2222
; CHECK-LLVM: call void @llvm.assume(i1 %cmp)
2323

24-
; CHECK-SPIRV-NO-EXT-NOT: Capability ExpectAssumeKHR
25-
; CHECK-SPIRV-NO-EXT-NOT: Extension "SPV_KHR_expect_assume"
24+
; CHECK-SPIRV-NO-EXT-NOT: Capability OptimizationHintsINTEL
25+
; CHECK-SPIRV-NO-EXT-NOT: Extension "SPV_INTEL_optimization_hints"
2626
; CHECK-SPIRV-NO-EXT: Name [[COMPARE:[0-9]+]] "cmp"
2727
; CHECK-SPIRV-NO-EXT: INotEqual {{[0-9]+}} [[COMPARE]] {{[0-9]+}} {{[0-9]+}}
28-
; CHECK-SPIRV-NO-EXT-NOT: AssumeTrueKHR [[COMPARE]]
28+
; CHECK-SPIRV-NO-EXT-NOT: AssumeTrueINTEL [[COMPARE]]
2929

3030
; CHECK-LLVM-NO-EXT: %cmp = icmp ne i32 %0, 0
3131
; CHECK-LLVM-NO-EXT-NOT: call void @llvm.assume(i1 %cmp)

llvm-spirv/test/llvm-intrinsics/expect.ll

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
; RUN: llvm-as %s -o %t.bc
2-
; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_KHR_expect_assume -o %t.spv
2+
; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_optimization_hints -o %t.spv
33
; RUN: llvm-spirv %t.spv -to-text -o %t.spt
44
; RUN: FileCheck < %t.spt %s --check-prefix=CHECK-SPIRV
55
; RUN: llvm-spirv -r %t.spv -o %t.bc
@@ -12,22 +12,22 @@
1212
; RUN: llvm-spirv -r %t.spv -o %t.bc
1313
; RUN: llvm-dis < %t.bc | FileCheck %s --check-prefix=CHECK-LLVM-NO-EXT
1414

15-
; CHECK-SPIRV: Capability ExpectAssumeKHR
16-
; CHECK-SPIRV: Extension "SPV_KHR_expect_assume"
15+
; CHECK-SPIRV: Capability OptimizationHintsINTEL
16+
; CHECK-SPIRV: Extension "SPV_INTEL_optimization_hints"
1717
; CHECK-SPIRV: Name [[FUNPARAM:[0-9]+]] "x.addr"
1818
; CHECK-SPIRV: Name [[VALUE1:[0-9]+]] "conv"
1919
; CHECK-SPIRV: Name [[VALUE2:[0-9]+]] "conv"
2020
; CHECK-SPIRV: TypeInt [[TYPEID:[0-9]+]] 64 0
2121
; CHECK-SPIRV: Constant [[TYPEID]] [[EXPVAL1:[0-9]+]] {{[0-9]+}} {{[0-9]+}}
2222

2323
; CHECK-SPIRV: Function
24-
; CHECK-SPIRV: ExpectKHR [[TYPEID]] [[RES1:[0-9]+]] [[VALUE1]] [[EXPVAL1]]
24+
; CHECK-SPIRV: ExpectINTEL [[TYPEID]] [[RES1:[0-9]+]] [[VALUE1]] [[EXPVAL1]]
2525
; CHECK-SPIRV: INotEqual {{[0-9]+}} {{[0-9]+}} [[RES1]] {{[0-9]+}}
2626

2727
; CHECK-SPIRV: Function
2828
; CHECK-SPIRV: FunctionCall {{[0-9]+}} [[FUNRES:[0-9]+]] {{[0-9]+}}
2929
; CHECK-SPIRV: SConvert [[TYPEID]] [[EXPVAL2:[0-9]+]] [[FUNRES]]
30-
; CHECK-SPIRV: ExpectKHR {{[0-9]+}} [[RES2:[0-9]+]] [[VALUE2]] [[EXPVAL2]]
30+
; CHECK-SPIRV: ExpectINTEL {{[0-9]+}} [[RES2:[0-9]+]] [[VALUE2]] [[EXPVAL2]]
3131
; CHECK-SPIRV: INotEqual {{[0-9]+}} {{[0-9]+}} [[RES2]] {{[0-9]+}}
3232

3333
; CHECK-LLVM: define spir_func i32 @_Z12expect_consti{{.*}}
@@ -44,16 +44,16 @@
4444
; CHECK-LLVM: %[[RES2:[a-z0-9]+]] = call i64 @llvm.expect.i64(i64 %[[CONV2A]], i64 %[[CONV2B]])
4545
; CHECK-LLVM: %{{.*}} = icmp ne i64 %[[RES2]], 0
4646

47-
; CHECK-SPIRV-NO-EXT-NOT: Capability ExpectAssumeKHR
48-
; CHECK-SPIRV-NO-EXT-NOT: Extension "SPV_KHR_expect_assume"
47+
; CHECK-SPIRV-NO-EXT-NOT: Capability OptimizationHintsINTEL
48+
; CHECK-SPIRV-NO-EXT-NOT: Extension "SPV_INTEL_optimization_hints"
4949
; CHECK-SPIRV-NO-EXT: Function
50-
; CHECK-SPIRV-NO-EXT-NOT: ExpectKHR {{[0-9]+}} {{[0-9]+}} {{[0-9]+}} {{[0-9]+}}
50+
; CHECK-SPIRV-NO-EXT-NOT: ExpectINTEL {{[0-9]+}} {{[0-9]+}} {{[0-9]+}} {{[0-9]+}}
5151
; CHECK-SPIRV-NO-EXT: SConvert {{[0-9]+}} [[RES1:[0-9]+]] {{[0-9]+}}
5252
; CHECK-SPIRV-NO-EXT: INotEqual {{[0-9]+}} {{[0-9]+}} [[RES1]] {{[0-9]+}}
5353

5454
; CHECK-SPIRV-NO-EXT: Function
5555
; CHECK-SPIRV-NO-EXT: SConvert {{[0-9]+}} [[RES2:[0-9]+]] {{[0-9]+}}
56-
; CHECK-SPIRV-NO-EXT-NOT: ExpectKHR {{[0-9]+}} {{[0-9]+}} {{[0-9]+}} {{[0-9]+}}
56+
; CHECK-SPIRV-NO-EXT-NOT: ExpectINTEL {{[0-9]+}} {{[0-9]+}} {{[0-9]+}} {{[0-9]+}}
5757
; CHECK-SPIRV-NO-EXT: INotEqual {{[0-9]+}} {{[0-9]+}} [[RES2]] {{[0-9]+}}
5858

5959
; CHECK-LLVM-NO-EXT: define spir_func i32 @_Z12expect_consti{{.*}}

0 commit comments

Comments
 (0)