[PATCH] D33328: [CodeGen] Pessimize aliasing for union members (and may-alias) objects

Krzysztof Parzyszek via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue May 23 14:33:02 PDT 2017

kparzysz added inline comments.

Comment at: lib/CodeGen/CGExpr.cpp:1436
+    if (BaseInfo.getMayAlias())
+      TBAAInfo = CGM.getTBAAInfo(getContext().CharTy);
     llvm::MDNode *TBAAPath = CGM.getTBAAStructTagInfo(TBAABaseType, TBAAInfo,
rjmccall wrote:
> Hmm.  Should we be constructing a struct-path TBAA at all if the base may alias, as opposed to just using 'char'?
I did that and got a verifier error: "Old-style TBAA is no longer allowed, use struct-path TBAA instead. fatal error: error in backend: Broken function found, compilation aborted!"



More information about the cfe-commits mailing list