Closed Bug 470144 Opened 16 years ago Closed 11 years ago

JM+TI: |delete| perf regression with TI enabled

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
minor

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: jruderman, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: perf, testcase)

These are both 5-15% slower with -j:

for(i=0;i<500000;++i) { delete d; }

for(i=0;i<500000;++i) { delete {}.d; }

TRACEMONKEY=verbose just says "Abort recording (line 1, pc 11): JSOP_DELNAME", so I guess this is just unimplemented.
Current JS shell numbers for testcase 1:
Interp: 178.964 ms
-j:     178.097 ms
-m:     131.561 ms
-m -n:  135.578 ms

Current JS shell numbers for testcase 2:
Interp: 166.417 ms
-j:     163.550 ms
-m:     87.306 ms
-m -n:  107.031 ms

JM is doing better than TM did on these testcases, but TI seems to regress things.
Blocks: 467263
Summary: TM: |delete| not traced → JM+TI: |delete| perf regression with TI enabled
The second one (DELPROP) is the most interesting and is a bit faster than V8 (36 vs 42 ms) if I move the {} out of the loop ({} inside the loop needs GGC):

var o = {};
for(i=0;i<500000;++i) { delete o.d; }
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.