[PATCH] D155881: [AMDGPU] Remove std::optional from VOPD::ComponentProps. NFC.
Stanislav Mekhanoshin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 20 13:15:20 PDT 2023
rampitec created this revision.
rampitec added reviewers: Joe_Nash, foad.
Herald added subscribers: StephenFan, kerbowa, hiraditya, tpr, dstuttard, yaxunl, jvesely, kzhuravl, arsenm.
Herald added a project: All.
rampitec requested review of this revision.
Herald added a subscriber: wdng.
Herald added a project: LLVM.
This class has to be fast and efficient with a trivial copy
constructor.
https://reviews.llvm.org/D155881
Files:
llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Index: llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
===================================================================
--- llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
+++ llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
@@ -573,7 +573,7 @@
class ComponentProps {
private:
unsigned SrcOperandsNum = 0;
- std::optional<unsigned> MandatoryLiteralIdx;
+ unsigned MandatoryLiteralIdx = ~0u;
bool HasSrc2Acc = false;
public:
@@ -589,13 +589,13 @@
}
// Return true iif this component has a mandatory literal.
- bool hasMandatoryLiteral() const { return MandatoryLiteralIdx.has_value(); }
+ bool hasMandatoryLiteral() const { return MandatoryLiteralIdx != ~0u; }
// If this component has a mandatory literal, return component operand
// index of this literal (i.e. either Component::SRC1 or Component::SRC2).
unsigned getMandatoryLiteralCompOperandIndex() const {
assert(hasMandatoryLiteral());
- return *MandatoryLiteralIdx;
+ return MandatoryLiteralIdx;
}
// Return true iif this component has operand
@@ -611,8 +611,7 @@
private:
bool hasMandatoryLiteralAt(unsigned CompSrcIdx) const {
assert(CompSrcIdx < Component::MAX_SRC_NUM);
- return hasMandatoryLiteral() &&
- *MandatoryLiteralIdx == Component::DST_NUM + CompSrcIdx;
+ return MandatoryLiteralIdx == Component::DST_NUM + CompSrcIdx;
}
};
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D155881.542648.patch
Type: text/x-patch
Size: 1374 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230720/72705ac2/attachment.bin>
More information about the llvm-commits
mailing list