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

Reply via email to