Closed Bug 586866 Opened 15 years ago Closed 15 years ago

`in` in loop condition quirks with JIT

Categories

(Core :: JavaScript Engine, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- betaN+

People

(Reporter: murky.satyr, Assigned: luke)

References

Details

(Whiteboard: fixed-in-tracemonkey)

Attachments

(2 files)

Attached file test case
With JIT enabled, the attachment fails intermittently on Fx0.4b4pre and consistently on Fx3.6.8.
blocking2.0: --- → ?
blocking2.0: ? → betaN+
OS: Windows Vista → Windows 2000
I am able to reproduce the failure on 4.0b6 on practically every other reload, but, after 100 reloads, I cannot reproduce on TM tip.
On TM tip, I would expect we don't trace this particular testcase. Even if you disable JM, because we bumped HOTLOOP....
Good point. If I add more calls to func() and turn off the mjit/profiling, then it reproduces.
Assignee: general → lw
Attached patch fix and testSplinter Review
The problem is that JSOP_IN is calling fuseIf but not calling checkTraceEnd. This causes the recorder to keep recording off the end of the loop, which produces a loop which runs once and returns. Thanks for the reduced test case satyr!
Attachment #489074 - Flags: review?(dvander)
Attachment #489074 - Flags: review?(dvander) → review+
Whiteboard: fixed-in-tracemonkey
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: