Closed Bug 515313 Opened 12 years ago Closed 12 years ago

nanojit: finish killing reservations

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: n.nethercote, Assigned: n.nethercote)

References

Details

(Whiteboard: fixed-in-nanojit, fixed-in-tracemonkey, fixed-in-tamarin)

Attachments

(1 file)

Bug 514349 started killing reservations, mostly removing them from Assembler.cpp and the i386 backend.  Bug 515309, bug 515310, bug 515311, and bug 515312 are for each of the other backends.  Once they're all done, the final remnants can be removed from Assembler.{cpp,h} and LIR.{cpp,h}.
Depends on: 514349
Nb: we see patterns like this a lot in the back-ends:

    Register sr = ( lhs->isUnusedOrHasUnknownReg()
                  ? findRegFor(lhs, FpRegs)
                  : lhs->getReg() );

with some variation on the ?-branch.  It might be worth factoring these out into a function.
(In reply to comment #1)
> Nb: we see patterns like this a lot in the back-ends:
> 
>     Register sr = ( lhs->isUnusedOrHasUnknownReg()
>                   ? findRegFor(lhs, FpRegs)
>                   : lhs->getReg() );
> 
> with some variation on the ?-branch.  It might be worth factoring these out
> into a function.

Bug 516348 covers the most common of these cases.
Depends on: 516348
Blocks: 513616
Attached patch patchSplinter Review
Here's a patch.  Nothing surprising, just finishes off removing the Reservation type.
Attachment #413985 - Flags: review?(edwsmith)
BTW, I tested the patch on the TR try server, it passed all platforms.
Attachment #413985 - Flags: review?(edwsmith) → review+
hg.mozilla.org/projects/nanojit-central/rev/1b6cb808f304
Whiteboard: fixed-in-nanojit
http://hg.mozilla.org/tracemonkey/rev/f34d86c36e47
http://hg.mozilla.org/tamarin-redux/rev/4f97e229b335
Whiteboard: fixed-in-nanojit → fixed-in-nanojit, fixed-in-tracemonkey, fixed-in-tamarin
http://hg.mozilla.org/mozilla-central/rev/f34d86c36e47
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.