Closed Bug 663381 Opened 9 years ago Closed 9 years ago

TI: call result read barriers

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set

Tracking

()

RESOLVED FIXED

People

(Reporter: bhackett, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

The read barriers added by bug 656920 should be extended to native calls and, possibly, scripted calls with polymorphic result (haven't seen these around, though).  This would mean dynamically monitoring the result of such calls, except when the compiler generates specialized paths for particular natives (either inline or with a special stub).  This adds a puny cost for such calls which is easily fixed by adding one of the above paths, removes a ton of complexity (most of which is born outside of inference code itself), removes a persistent source of simple but bad bugs (wrong type handlers, missing MarkTypeCallerUnexpected), and removes (I think) all changes to the API made by inference.
Attached patch patchSplinter Review
Patch landed on JM.  Almost all of this is reverting TI changes to how things look in the TM branch, undoing many of the API changes from the patch in bug 657412.  The inference and methodjit changes don't really need review (can do this when these components eventually get properly reviewed as a whole).

http://hg.mozilla.org/projects/jaegermonkey/rev/a2dbb9efcf9e
Attachment #538657 - Flags: review?(dmandelin)
Attachment #538657 - Flags: review?(dmandelin) → review+
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.