Commit 18c6b30c authored by Kevin Modzelewski's avatar Kevin Modzelewski

Convert type_analysis to vregs

parent 19e073e7
......@@ -298,7 +298,8 @@ public:
&& name->lookup_type != ScopeInfo::VarScopeType::NAME) {
assert(name->vreg != -1);
state[name->vreg] = DefinednessAnalysis::Undefined;
}
} else
assert(name->vreg == -1);
} else {
// The CFG pass should reduce all deletes to the "basic" deletes on names/attributes/subscripts.
// If not, probably the best way to do this would be to just do a full AST traversal
......
This diff is collapsed.
......@@ -1093,6 +1093,10 @@ extern "C" void abort() {
// In case displaying the traceback recursively calls abort:
static bool recursive = false;
if (recursive) {
fprintf(stderr, "Recursively called abort! Make sure to check the stack trace\n");
}
if (!recursive && !IN_SHUTDOWN) {
recursive = true;
Stats::dump();
......
......@@ -124,7 +124,7 @@ public:
int getVReg(InternedString name) const {
assert(hasVRegsAssigned());
assert(sym_vreg_map.count(name));
ASSERT(sym_vreg_map.count(name), "%s", name.c_str());
auto it = sym_vreg_map.find(name);
assert(it != sym_vreg_map.end());
assert(it->second != -1);
......
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