Commit c2cfcfcf authored by Leszek Swirski's avatar Leszek Swirski Committed by V8 LUCI CQ

[maglev] Add a reason for unsupported codegen

Bug: v8:7700
Change-Id: I4d8f6496e796de30894c5b8229610a49ddee8bb5
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3579142
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: 's avatarVictor Gomes <victorgomes@chromium.org>
Cr-Commit-Position: refs/heads/main@{#79880}
parent 363bc5c5
......@@ -34,9 +34,10 @@ const char* ToString(Opcode opcode) {
// TODO(v8:7700): Clean up after all code paths are supported.
static bool g_this_field_will_be_unused_once_all_code_paths_are_supported;
#define UNSUPPORTED() \
#define UNSUPPORTED(REASON) \
do { \
std::cerr << "Maglev: Can't compile, unsuppored codegen path.\n"; \
std::cerr << "Maglev: Can't compile, unsuppored codegen path (" REASON \
")\n"; \
code_gen_state->set_found_unsupported_code_paths(true); \
g_this_field_will_be_unused_once_all_code_paths_are_supported = true; \
} while (false)
......@@ -545,11 +546,11 @@ void LoadField::GenerateCode(MaglevCodeGenState* code_gen_state,
__ DecompressAnyTagged(ToRegister(result()), input_field_operand);
if (LoadHandler::IsDoubleBits::decode(handler)) {
// TODO(leszeks): Copy out the value, either as a double or a HeapNumber.
UNSUPPORTED();
UNSUPPORTED("LoadField double property");
}
} else {
// TODO(leszeks): Handle out-of-object properties.
UNSUPPORTED();
UNSUPPORTED("LoadField out-of-object property");
}
}
void LoadField::PrintParams(std::ostream& os,
......@@ -574,7 +575,7 @@ void StoreField::GenerateCode(MaglevCodeGenState* code_gen_state,
__ StoreTaggedField(operand, value);
} else {
// TODO(victorgomes): Out-of-object properties.
UNSUPPORTED();
UNSUPPORTED("StoreField out-of-object property");
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment