Tag inference for join points
In !11315 I've noticed that in Stg join point ids that return unboxed values (e.g. Int#
) are tagged with TagProper
. E.g.
case leWord# [x1_s6su y1_s6sw] of lwild_s6sx {
__DEFAULT -> 0#
1# -> $j_s6si<TagProper> -- <-- HERE
}
TagProper
is documented as Heap pointer to properly-tagged value
so either the tagging or the documentation is wrong. I've been expecting tagged
to mean evaluated
so could we tag join points with TagDunno
instead?
EDIT by AK: I agree it might be slighly less confusing to give join points TagDunno. But I don't think it will change the code we generate.