|
My previous change set IsARM=true for PNaCl in ItaniumCXXABI.cpp.
This gives us ARM-style representation of method pointers, which we
want, and ARM-style usage of guard variables, which we don't
necessarily want.
Switch the latter back so that the guard variable is tested via "load
i8 and compare with zero" rather than a "load i32 and test the bottom
bit". This should make the Clang-generated code match with how
libstdc++ is using the guard variable.
This makes the code match the patch I sent upstream (which hasn't been
committed yet).
BUG=https://code.google.com/p/nativeclient/issues/detail?id=3450
TEST=test/CodeGenCXX/static-init-pnacl.cpp
Review URL: https://codereview.chromium.org/17616003
|