Closed Bug 1458173 Opened 6 years ago Closed 6 years ago

Fix some other TSan issues

Categories

(Core :: JavaScript Engine: JIT, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla61
Tracking Status
firefox61 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

Details

Attachments

(1 file)

Attached patch PatchSplinter Review
This fixes most of the remaining issues I see when running jit-tests locally.

* We shouldn't check the addendumKind off-thread because it can race on the flags word, but fortunately we don't have to.

* MConstant::valueToBoolean calls EmulatesUndefined but that can race if the object has a lazy group and the main thread "delazifies". I don't think this particular optimization is very important (MTest/MNot can fold the object-input case anyway), so this patch removes the EmulatesUndefined call.

There's still a problem with the pre-barrier verifier, that one probably needs to cancel off-thread Ion compilations.
Attachment #8972257 - Flags: review?(jcoppeard)
Comment on attachment 8972257 [details] [diff] [review]
Patch

Review of attachment 8972257 [details] [diff] [review]:
-----------------------------------------------------------------

Great, thanks for fixing this.
Attachment #8972257 - Flags: review?(jcoppeard) → review+
Pushed by jandemooij@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/daa8466df43e
Fix some issues reported by TSan. r=jonco
https://hg.mozilla.org/mozilla-central/rev/daa8466df43e
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
You need to log in before you can comment on or make changes to this bug.