3 Commits

Author SHA1 Message Date
Timm Baeder
ab366170db
[clang][bytecode] Add lifetime information for primitive array elements (#173333)
Double the allocated size of the `InitMap` and use the second half for
lifetime information.
2026-01-21 09:41:35 +01:00
Timm Bäder
ad76100310 [clang][bytecode] Add missing cstdint include
This broke the clang-riscv-gauntlet builder:
https://lab.llvm.org/buildbot/#/builders/210/builds/6697
2025-12-18 10:24:40 +01:00
Timm Baeder
2093d2eea1
[clang][bytecode] Refactor InitMapPtr (#172665)
As mentioned a few times in the past, the previous handling using a
`optional<pair<bool, std::shared_ptr<>>>` was confusing and nobody ever
remembered what the optional being unset meant or what the bool stood
for.

Add an `InitMapPtr` struct that wraps a `uintptr_t` that either holds a
pointer to a valid `InitMap` instance _or_ one of two special values.
The struct has meaningful accessors for the various special cases that
were confusing before.
2025-12-18 10:16:55 +01:00