gecko-dev/js
Nicolas B. Pierron 3b46c1ff10 Bug 1877357 - Insert coercion instruction in the precedessor. r=iain
Previously, when resolving Phi's type, we would insert the coercion instruction
at the end of the block in which the instruction is.

This causes 3 problems:

 - With RemoveDeadResumePointOperands, which looks at the live time of
   instructions based on where they are consumed, which is fooled by not following
   the coerced type.

 - By increasing the register pressure by keeping multiple value alive while
   only one is needed.

 - By potentially adding fallible instruction before it could be guarded by
   precoditions, thus potentially be the source of repeated bailouts.

This patch changes `TypeAnalyzer::adjustPhiInputs` to insert instructions at the
end of the matching block preceeding the Phi instruction. Doing so should avoid
all 3 issues previously seen.

Differential Revision: https://phabricator.services.mozilla.com/D200281
2024-02-22 10:28:14 +00:00
..
examples
loader Bug 1880708 - Handle CC unlink when destroying ScriptLoader/ModuleLoader. r=jonco 2024-02-19 15:09:00 +00:00
public Bug 1872793: Part 2 - Drop support for late weekday in Date.parse r=arai 2024-02-22 07:58:16 +00:00
src Bug 1877357 - Insert coercion instruction in the precedessor. r=iain 2024-02-22 10:28:14 +00:00
xpconnect Bug 1872793: Part 2 - Drop support for late weekday in Date.parse r=arai 2024-02-22 07:58:16 +00:00
app.mozbuild Bug 1677775 - reformat .mozbuild files with Black r=linter-reviewers,geckoview-reviewers,firefox-build-system-reviewers,ahal,glandium,owlish,sylvestre 2023-12-08 04:26:45 +00:00
ffi.configure Bug 1786490 - reformat the tree using black 23.3.0 r=sylvestre,webdriver-reviewers,taskgraph-reviewers,whimboo,jmaher,ahal,perftest-reviewers,geckoview-reviewers,afinder,m_kato 2023-09-06 16:14:30 +00:00
moz.build
moz.configure Bug 1860887 - Enable JSON.parse with source when configured r=jandem 2024-02-05 23:40:26 +00:00
sub.configure