[PATCH] D31830: Emit invariant.group.barrier when using union field

John McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 17 08:38:00 PDT 2017


rjmccall added inline comments.


================
Comment at: lib/CodeGen/CGExpr.cpp:3517
+        CGM.getCodeGenOpts().StrictVTablePointers &&
+        CGM.getCodeGenOpts().OptimizationLevel > 0)
+      addr = Address(Builder.CreateInvariantGroupBarrier(addr.getPointer()),
----------------
Checking for v-table pointers recursively isn't really that difficult, but if you really don't want to do that, please at least check for non-POD-ness or something so that this isn't kicking in for literally every struct type.


https://reviews.llvm.org/D31830





More information about the cfe-commits mailing list