[PATCH] D128501: [CodeGen] Make uninitialized Lvalue bit-field stores poison compatible

Eli Friedman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 27 13:48:36 PDT 2022


efriedma added a comment.

> This only matters if the IRs are linked together with IPO. Otherwise, at object level it doesn't really matter.

Right.

> Do you think we can get away by just documenting the incompatibility of doing IPO with files compiled with different -ffine-grained-bitfield-accesses flags?

This seems like something that would be very easy to get wrong; I'd prefer not to trust that users know what their build systems are doing.

We could use a module flag to forbid linking together modules with different settings.  Alternatively, we could mess with the code we generate with -ffine-grained-bitfield-accesses: use some intrinsic to freeze the adjacent bitfields, so a bitfield store has the same semantics with or without -ffine-grained-bitfield-accesses.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128501/new/

https://reviews.llvm.org/D128501



More information about the cfe-commits mailing list