Closed Bug 491685 Opened 17 years ago Closed 15 years ago

TraceMonkey: Abstract register allocations where possible (in the ARM JIT backend).

Categories

(Core :: JavaScript Engine, enhancement)

ARM
All
enhancement
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: jbramley, Assigned: jbramley)

Details

Attachments

(1 file)

Rather than specifying an explicit list of registers, we should use the (already present) masks for this purpose. Note that I'm not sure whether this particular case should use AllowableFlagRegs or GpRegs, but Tamarin used the former so I have done the same here. (Functionally they are identical.) This patch is the last of the patches I've been porting from Tamarin. It fixed a bug in Tamarin at the time, but only has semantic benefits for Trace Monkey.
Attachment #376011 - Flags: review?(vladimir)
Summary: TraceMonkey: Abstract register allocations where possible. → TraceMonkey: Abstract register allocations where possible (in the ARM JIT backend).
Comment on attachment 376011 [details] [diff] [review] Abstract a register list. Hrm, I would actually think this should be GpRegs here..
Attachment #376011 - Flags: review?(vladimir) → review+
I'm not sure. One of my other patches (also ported from Tamarin) sets GpRegs to 0xFFFF so it can be used in assertions. In the ARM architecture, even the PC is a GP register. I don't think we want to be adding that to the free list. Of course, it's possible that the other patch shouldn't have done that in the first place.
The other patch is already committed in the trunk. AllowableFlagRegs is set appropriately (for this patch) but GpRegs is 0xFFFF.
These bugs are all part of a search I made for js bugs that are getting lost in transit: http://tinyurl.com/jsDeadEndBugs They all have a review+'ed, non-obsoleted patch and are not marked fixed-in-tracemonkey or checkin-needed but have not seen any activity in 300 days. Some of these got lost simply because the assignee/patch provider never requested a checkin, or just because they were forgotten about.
(In reply to comment #4) > These bugs are all part of a search I made for js bugs that are getting lost in > transit: Wow, this one's old. I'm just going to kill this one, unless anyone objects.
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: