DescriptionSubzero: Fix a regalloc bug involving too-aggressive AllowRegisterOverlap.
See the BUG description for more details. In short, the register allocator
was inappropriately honoring AllowRegisterOverlap even when the variable's
live range overlaps with an Unhandled variable precolored to the preferred
register.
Also changes legalize() logic to recognize when a variable is guaranteed
to ultimately have a physical register due to infinite weight, and not
create a new temporary in those cases.
Finally, dumps RegisterPreference and AllowRegisterOverlap info for
Variables for improved diagnostics.
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3897
R=jvoung@chromium.org
Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=ca662e9
Patch Set 1 #
Total comments: 3
Patch Set 2 : Add PrecoloredUnhandled to the output #
Messages
Total messages: 5 (0 generated)
|