Closed Bug 758268 Opened 9 years ago Closed 9 years ago

IonMonkey: Rename forbidOsr and use it when calling functions directly

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: jandem, Assigned: jandem)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

I noticed this a few days ago on some crypto benchmark. The following script will bailout every time we call f:

function f(x) {
    return x >>> 0;
}
for (var i=0; i<200; i++) {
    f(Math.pow(2, 31));
}

Eventually, we should fix this by adding a double/OOL path or something for >>>. However, in the meantime we should give up after bailing out a few times (and there are no type changes). We do this already when we enter via OSR, but we should also do this for non-OSR code.
Attached patch PatchSplinter Review
Renames forbidOsr to bailoutExpected (better name welcome), and use it also for non-OSR code.
Attachment #627934 - Flags: review?(dvander)
Attachment #627934 - Flags: review?(dvander) → review+
https://hg.mozilla.org/projects/ionmonkey/rev/d28bcb515936
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.