Page MenuHomePhabricator

Make error handling functions thread-safe.
ClosedPublic

Authored by zturner on Jun 13 2014, 1:15 PM.

Details

Summary

Make the error-handling functions thread-safe.

Prior to this change, error handling functions must be installed
and removed only inside of an llvm_[start/stop]_multithreading
pair. This change allows error handling functions to be installed
any time, and from any thread.

Diff Detail

Repository
rL LLVM

Event Timeline

zturner updated this revision to Diff 10403.Jun 13 2014, 1:15 PM
zturner retitled this revision from to Make error handling functions thread-safe..
zturner updated this object.
zturner edited the test plan for this revision. (Show Details)
zturner added a reviewer: chandlerc.
zturner set the repository for this revision to rL LLVM.
zturner added a subscriber: Unknown Object (MLST).
emaste added a subscriber: emaste.Jun 13 2014, 2:17 PM
chandlerc accepted this revision.Jun 13 2014, 2:21 PM
chandlerc edited edge metadata.

Looks good with a slightly relaxed comment.

lib/Support/ErrorHandling.cpp
74–77 ↗(On Diff #10403)

This comment is a bit too specific IMO. It is never a good idea to call a user provided callback while holding a mutex.

This revision is now accepted and ready to land.Jun 13 2014, 2:21 PM
zturner closed this revision.Jun 13 2014, 2:28 PM
zturner updated this revision to Diff 10406.

Closed by commit rL210937 (authored by @zturner).