kumarak wrote: @andykaylor Thanks for the review. I've updated the PR to introduce a CIR-native `PtrSpecAttr`, plus a few more changes since your pass: - CIR data-layout emission now uses `#cir.ptr_spec`, a CIR-native attribute modeled after `ptr::SpecAttr`. - Datalayout spec emission is refactored into a shared `cir::setMLIRDataLayout`, so `CIRGen` and `cir-translate` go through the same path. - `DataMemberType` is now sized from the pointer index width (ptrdiff_t under Itanium) instead of a hardcoded value. This was missing from the earlier commit.
Regarding mixing pointer sizes in a single module, the entry is keyed by pointer type, so per-address-space specs fit the design. The current implementation is gated with a default address space, and this can be updated in the follow-up PRs. https://github.com/llvm/llvm-project/pull/204185 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
