зеркало из https://github.com/mozilla/gecko-dev.git
99c4a5208a
In instances where an MDefinition* can map to more than one LIR node, a simple pointer test is insufficient to avoid breaking the regalloc invariant that if one LIR node argument to a multi-operand operation is reused for the result, then other distinct LIR node arguments cannot be used atStart. (This invariant is implicit: when it is broken, an assert will sometimes fire when the regalloc attempts to verify that its allocation is coherent.) This patch abstracts the equality test into a predicate, uses the predicate everywhere relevant, and makes the predicate take into account the one situation where it is known that the MIR node maps to two LIR nodes: when it is an emitAtUses constant. The patch also documents the more complicated condition. Differential Revision: https://phabricator.services.mozilla.com/D116464 |
||
---|---|---|
.. | ||
ductwork/debugger | ||
examples | ||
public | ||
src | ||
xpconnect | ||
app.mozbuild | ||
ffi.configure | ||
moz.build | ||
moz.configure | ||
sub.configure |