aboutsummaryrefslogtreecommitdiff
path: root/backend/lib/CodeGen/InstructionDescriptor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'backend/lib/CodeGen/InstructionDescriptor.cpp')
-rw-r--r--backend/lib/CodeGen/InstructionDescriptor.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/backend/lib/CodeGen/InstructionDescriptor.cpp b/backend/lib/CodeGen/InstructionDescriptor.cpp
index 48d4f10..fa00537 100644
--- a/backend/lib/CodeGen/InstructionDescriptor.cpp
+++ b/backend/lib/CodeGen/InstructionDescriptor.cpp
@@ -395,8 +395,12 @@ Expected<void> InstructionSet::validateExplicitOperands(const InstructionDescrip
}
const OperandDescriptor &OperandDesc = descriptorForOperand(Descriptor, *Shape, Index);
const auto Validation = validateOperand(OperandDesc, Operand, RegInfo);
- if (!Validation)
- return std::unexpected(Validation.error());
+ if (!Validation) {
+ return makeUnexpected(
+ Validation.error().code(),
+ "operand " + std::to_string(Index) + " of '" + Descriptor.Name + "': " +
+ std::string(Validation.error().message()));
+ }
if (Operand.isRegister()) {
if (isDefRole(OperandDesc.RegisterRole)) {
if (SawUse) {