Closed Bug 1023078 Opened 10 years ago Closed 9 years ago

PJS: Type inference weakness (?) causes bailout from parallel section

Categories

(Core :: JavaScript Engine, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: lth, Unassigned)

References

Details

Attachments

(1 file)

Attached file ray-pjs-tile.js
Consider the attached ray tracer (not very small, sorry).  If the two calls to the function "obscure" are left commented-out as in the sample then this program will repeatedly bail out from the parallel section with an "unsupported operation" failure.  If the two calls are in place, the program enters the PJS engine and stays there reliably.

I haven't tracked down the root cause but it seems plausible that type information computed for the objects that are returned is not stable, or that it is computed in such a way that run-time variations cause a bailout.  Notably, the "intersect" method will return objects whose "obj" field can be null or one of several known types.  By calling "obscure" on the value stored in obj, the type is laundered to Object.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: