This is an archive of the discontinued LLVM Phabricator instance.

[GlobalMerge] Don't merge globals that may be preempted
ClosedPublic

Authored by john.brawn on May 31 2017, 9:25 AM.

Details

Summary

When a global may be preempted it needs to be accessed directly, instead of indirectly through a MergedGlobals symbol, for the preemption to work.

This fixes PR33136.

Diff Detail

Repository
rL LLVM

Event Timeline

john.brawn created this revision.May 31 2017, 9:25 AM
peter.smith edited edge metadata.Jun 1 2017, 1:54 AM

Change looks sensible to me. I'll rebuild and run the libc++ tests on ARM again and report back.

peter.smith accepted this revision.Jun 1 2017, 7:09 AM

A Release Build of clang with that change has passed libc++ and libc++abi tests. I think that this is good to go, although it will be worth waiting to see if there are any objections from a later timezone first.

This revision is now accepted and ready to land.Jun 1 2017, 7:09 AM
This revision was automatically updated to reflect the committed changes.