forked from Floorp-Projects/Floorp
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bug 1279312 - Handle call-preserved registers in register allocator. …
…r=bhackett - Add a virtual isCallPreserved() method to LNode which allows a call instruction to indicate that it preserves the values of some registers. Use this hook in BacktrackingAllocator when processing a call instruction. - Add a preservesTlsReg() property to MAsmJSCall and use this to implement the LAsmJSCall::isCallPreserved() method. - Mark intra-module WebAssembly calls as preserving the TLS pointer register. This change allows the backtracking register allocator to leave the TLS pointer register alone in small functions that don't need it for something else. There are probably more improvements to be done if we need to split the live range of the TLS pointer register. For example, BacktrackingAllocator::splitAcrossCalls() will still split that live range at all calls.
- Loading branch information
Jakob Stoklund Olesen
committed
Jul 25, 2016
1 parent
7e6ef39
commit b3eb4d4
Showing
6 changed files
with
45 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters