Open
Bug 1031406
Opened 11 years ago
Updated 1 year ago
GVN: Find a better way to allow nodes to opt out of GVN
Categories
(Core :: JavaScript Engine: JIT, enhancement, P5)
Core
JavaScript Engine: JIT
Tracking
()
NEW
People
(Reporter: sunfish, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [lang=c++])
Currently, MNodes' congruentTo methods unconditionally return false when a node wishes to opt out of GVN.
One reason nodes might wish to opt out of GVN is when they have side effects; if nodes are opting out for this reason, they should be converted to override getAliasSet() so that isEffectful() is true and other AliasAnalysis mechanisms kick in. If there are no appropriate flag kinds in AliasSet, new kinds can be added.
It would be nice to understand any other reasons why nodes are choosing to opt out of GVN and potentially find cleaner mechanisms for them to use, so that we can eliminate the convention of having congruentTo return false.
![]() |
Reporter | |
Updated•7 years ago
|
Mentor: sunfish
Updated•3 years ago
|
Severity: normal → S3
Comment 1•1 year ago
|
||
I think this is still a valid concern, if we can avoid hashing these nodes.
However, we do have some effectful instructions which are making use of GVN, to be mutated into a different set of instructions with the same side-effects … so relying on getAliasSet
is probably not wise anymore.
You need to log in
before you can comment on or make changes to this bug.
Description
•