Closed
Bug 316879
Opened 19 years ago
Closed 19 years ago
Faster code for pure int operations
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: igor, Assigned: igor)
References
Details
Attachments
(1 file, 2 obsolete files)
(deleted),
patch
|
brendan
:
review+
|
Details | Diff | Splinter Review |
This is a separated bug not to forget about the patch from comment 121414#c63 which is not a part of the last patch for bug 121414.
For details, see comments 55 - 63 in the bug.
Assignee | ||
Comment 1•19 years ago
|
||
I hope this would not interrupt the work on bug 121414.
Comment 2•19 years ago
|
||
Thanks, I wasn't going to forget about those, but I was hoping to work them into a future patch. We can take your patch now and do it the other way, for sure, but I would like to land the patch for bug 121414 first. That makes you do the merge, which isn't really fair. But I thought I'd ask ;-). I can do the merge and land the other way 'round. Thoughts?
/be
Assignee | ||
Comment 3•19 years ago
|
||
(In reply to comment #2)
> but I would like to land the patch for bug 121414 first.
That is OK: that "review?" had ping as hidden agenda in any case ;)
Assignee | ||
Comment 4•19 years ago
|
||
Dependency on bug 121414 is to know when to update the patch.
Depends on: 121414
Assignee | ||
Comment 5•19 years ago
|
||
Here is a patch update after landing of attachment 203610 [details] [diff] [review] from bug 121414 plus fix with proper handling of 0 negation when the previous patch would leave 0 coming from int jsval as 0.
The patch shows the following improvements for test case from attachment 145601 [details] for optimized build of jsshell on Pentium II 360MHz laptop with Fedora Core 4/ GCC 4.0.1:
+-------------+-------------+-------------+---------+
| Test | Before | After | Speedup |
|-------------|-------------|-------------|---------|
| Test 1 | 2986 ms | 1814 ms | 65% |
|-------------|-------------|-------------|---------|
| Test 2 | 2633 ms | 1666 ms | 58% |
|-------------|-------------|-------------|---------|
| Test 3 | 2912 ms | 2359 ms | 23% |
+-------------+-------------+-------------+---------+
These are much higher speedups then ones that were before landing of threaded interpreted patch. In fact the combined effect of these patches is almost 2 times faster execution of test1. Perhaps I do not need to upgrade the laptop after all;)
Attachment #203421 -
Attachment is obsolete: true
Attachment #203709 -
Flags: review?(brendan)
Attachment #203421 -
Flags: review?(brendan)
Comment 6•19 years ago
|
||
Comment on attachment 203709 [details] [diff] [review]
Update patch and -0 fix
Nice!
/be
Attachment #203709 -
Flags: review?(brendan) → review+
Assignee | ||
Comment 7•19 years ago
|
||
I committed the fix but I keep the bug as assigned until 121414 would be marked as fixed.
Assignee | ||
Comment 8•19 years ago
|
||
I just reverted my commit: the patch contained bogus assertion in JSOP_NEG implementation: even if initially rval is not int jsval, the result still may fit to int jsval in cases like when rval is "1".
Proper patch in a moment.
Assignee | ||
Comment 9•19 years ago
|
||
Attachment #203709 -
Attachment is obsolete: true
Attachment #203735 -
Flags: review?(brendan)
Comment 10•19 years ago
|
||
Comment on attachment 203735 [details] [diff] [review]
Patch with proper optimization of JSOP_NEG
r=me
/be
Attachment #203735 -
Flags: review?(brendan) → review+
Assignee | ||
Comment 11•19 years ago
|
||
The last patch is in CVS
Comment 12•19 years ago
|
||
Fresh compile with MSVC2003 using the testcases from bug 121414.
+-------------+-------------+-------------+---------+
| Test | Before | After | Speedup |
|-------------|-------------|-------------|---------|
| Test 1 | 312 ms | 250 ms | 19.8% |
|-------------|-------------|-------------|---------|
| Test 2 | 281 ms | 234 ms | 16.7% |
|-------------|-------------|-------------|---------|
| Test 3 | 360 ms | 344 ms | 4.4% |
+-------------+-------------+-------------+---------+
Nice boost in tests 1 and 2 again :)
Updated•19 years ago
|
Flags: testcase-
Assignee | ||
Comment 13•19 years ago
|
||
Marking as fixed: I forgot to do that around 2005-11-21.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•