This is an archive of the discontinued LLVM Phabricator instance.

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

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

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).