[PATCH] D154951: [clang][Interp] __builtin_bit_cast, Take 2

Timm Bäder via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 4 03:23:04 PDT 2023


tbaeder added inline comments.


================
Comment at: clang/lib/AST/Interp/InterpBitcast.cpp:71
+/// All offsets are in bytes.
+struct ByteTracker {
+  std::vector<bool> Initialized;
----------------
aaron.ballman wrote:
> Don't we need to track this at the *bit* level instead of the *byte* level? e.g., padding bits in structures, anonymous bit-fields, `bool`, `_BitInt`, etc?
I actually started doing it in bits, but later realized that I can't use that since I have little support for bitfields and the current interpreter doesn't support bitcasts between bitfields. (That's why it's still `IndeterminateBits` down in `BitcastBuffer`).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D154951



More information about the cfe-commits mailing list