This allows us to put dynamic initializers for weak data into the same
comdat group as the data being initialized. This is necessary for MSVC
ABI compatibility. It should also allow GlobalOpt to fire more often
weak data on other platforms if we can sort out the initialization of
the guard variable.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
include/llvm/Target/TargetLoweringObjectFile.h | ||
---|---|---|
142 ↗ | (On Diff #8825) | Why the cast to void to silence an unused variable warning for KeySym but not for KeySec nor Priority? You dont seem to do the same for the getStaticCtorSection. What is special about the KeySym parameter here? |
lib/CodeGen/AsmPrinter/AsmPrinter.cpp | ||
1301 ↗ | (On Diff #8825) | Can you use nullptr or NULL for the pointers in the initializer list please. |
lib/IR/Verifier.cpp | ||
413 ↗ | (On Diff #8825) | This is going to cause a warning on non-assert builds wont it? Perhaps use a DEBUG_ONLY wrapper around this? |
415 ↗ | (On Diff #8825) | Shouldnt this be aligned with ETy? |
include/llvm/Target/TargetLoweringObjectFile.h | ||
---|---|---|
142 ↗ | (On Diff #8825) | I think parameters with default values used to trigger a certain gcc warning. I thought I nuked all the default parameters to fix this warning, though. Apparently not. |
lib/CodeGen/AsmPrinter/AsmPrinter.cpp | ||
1301 ↗ | (On Diff #8825) | done |
lib/IR/Verifier.cpp | ||
413 ↗ | (On Diff #8825) | Assert1() is not compiled out in NDEBUG builds, it's utility for the verifier. It wraps a return statement. =/ |
415 ↗ | (On Diff #8825) | clang-format really doesn't want to put it there because then it would line up with the following argument after the comma. *shrug* |