mie: ir: op: only create a name map if the op is isolated-from-above

This commit is contained in:
2026-01-23 22:41:03 +00:00
parent 58bd336eb8
commit 6d1e308ff1

View File

@@ -80,12 +80,24 @@ struct mie_register *mie_op_add_result(struct mie_op *op, const struct mie_type
return result; return result;
} }
static bool is_isolated(const struct mie_op *op)
{
const struct mie_trait *isolated = mie_trait_table_get_unique(
&op->op_info->op_traits, "builtin", "isolated-from-above");
return isolated != NULL;
}
struct mie_region *mie_op_add_region(struct mie_op *op) struct mie_region *mie_op_add_region(struct mie_op *op)
{ {
bool isolated = is_isolated(op);
struct mie_region *region = mie_vector_emplace_back(op->op_regions, NULL); struct mie_region *region = mie_vector_emplace_back(op->op_regions, NULL);
region->r_names = mie_name_map_create(NULL);
region->r_parent = op; region->r_parent = op;
if (isolated) {
region->r_names = mie_name_map_create(NULL);
}
return region; return region;
} }