Closed Bug 1681136 Opened 4 years ago Closed 4 years ago

Investigate BranchEmitter branch generation

Categories

(Core :: JavaScript Engine, task)

task

Tracking

()

RESOLVED FIXED
85 Branch
Tracking Status
firefox85 --- fixed

People

(Reporter: mgaudet, Assigned: arai)

Details

Attachments

(4 files)

In D98756 Iain noted that we generate

Not
IfEq 

vs just generating IfNe. This is a property of BranchEmitterBase according to Arai, potentially driven by a JIT weakness once upon a time.

We should see if we can improve the story here and avoid that Not if possible.

IonControlFlow (removed in bug 1595476) didn't support IfNe (outside of loops).

Thanks for the pointer! Definitely can be cleaned up then.

Assignee: nobody → arai.unmht
Status: NEW → ASSIGNED
Pushed by arai_a@mac.com: https://hg.mozilla.org/integration/autoland/rev/8cf11c8f92ba Part 1: Rename BranchEmitterBase::Kind to BranchEmitterBase::LexicalKind. r=yulia https://hg.mozilla.org/integration/autoland/rev/79f63086887e Part 2: Support IfNe in IfEmitter/InternalIfEmitter. r=yulia https://hg.mozilla.org/integration/autoland/rev/e6dafa53dd61 Part 3: Use IfNe in syntactic if-then-else and conditional expression. r=yulia https://hg.mozilla.org/integration/autoland/rev/c9a48f273f2f Part 4: Use IfNe in internal if-then. r=yulia
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: