Closed
Bug 516348
Opened 16 years ago
Closed 16 years ago
nanojit: add findSpecificRegForUnallocated()
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: n.nethercote, Assigned: n.nethercote)
References
Details
(Whiteboard: fixed-in-nanojit, fixed-in-tracemonkey)
Attachments
(1 file)
|
10.07 KB,
patch
|
edwsmith
:
review+
|
Details | Diff | Splinter Review |
This patch:
- Adds findSpecificRegForUnallocated(), which is like findSpecificRegFor() but
requires that the instruction under consideration not have a register
allocated to it, a case which occurs surprisingly often.
- Applies it throughout the i386 back-end.
- Adds RegAlloc::removeFree().
I originally did this change just for comprehensibility's sake -- ie.
findSpecificRegForUnallocated() is *much* simpler than findSpecificRegFor()
-- but it also looks like it improves SunSpider times by about 2ms. I'm not
sure I trust that, but it's certainly fewer instructions executed so can't
hurt.
Attachment #400450 -
Flags: review?(edwsmith)
Updated•16 years ago
|
Attachment #400450 -
Flags: review?(edwsmith) → review+
| Assignee | ||
Comment 1•16 years ago
|
||
Whiteboard: fixed-in-nanojit
Comment 2•16 years ago
|
||
Whiteboard: fixed-in-nanojit → fixed-in-nanojit, fixed-in-tracemonkey
Comment 3•16 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Comment 5•16 years ago
|
||
Hi guys. My x86 machine is consistently hitting this added nanoassert:
NanoAssert(ins->isUnusedOrHasUnknownReg()); (Assembler.cpp:432)
OTOH, my amd64 machine works normally. I'm wondering if this could be a compiler bug, because I'm seeing this problem in my own builds (gcc-4.3.4) but not in the nightlies from mozilla.org (gcc-4.1.1, I believe).
Any thoughts? I can post the backtrace if it would be useful.
Thanks.
| Assignee | ||
Comment 6•16 years ago
|
||
Walter, 34692:515d7e584de6 is a follow-up changeset that fixes the assertion problem.
Comment 7•16 years ago
|
||
Thanks for the quick reply. I just pulled again from mozilla-central and I don't see that commit anywhere. (I searched 'hg log' for 515d7 and got nada, and
"tip" is now at 34912:168606de059d)
Am I looking in the wrong branch of the hg repository? Or the wrong repository?
Thanks.
| Assignee | ||
Comment 8•16 years ago
|
||
It's in the tracemonkey repo, it hasn't made it to the mozilla-central repo yet. The relevant bug is bug 527874.
You need to log in
before you can comment on or make changes to this bug.
Description
•