diff options
author | David Rivera <davidriverg@gmail.com> | 2025-10-03 21:40:54 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-10-03 21:40:54 -0400 |
commit | 3896212ceab8fe963335e8a31b898b6099292c88 (patch) | |
tree | 0c8e291c029bdbe4125efd0e83613bdc10945345 /llvm/lib/Object/BuildID.cpp | |
parent | 1a3f84864f9d69e0c98500349a638f6ee360322e (diff) | |
download | llvm-3896212ceab8fe963335e8a31b898b6099292c88.zip llvm-3896212ceab8fe963335e8a31b898b6099292c88.tar.gz llvm-3896212ceab8fe963335e8a31b898b6099292c88.tar.bz2 |
[CIR] Implement Target-specific address space handling support for `PointerType` (#161028)
This PR adds support for address spaces in CIR pointer types by:
1. Introducing a `TargetAddressSpaceAttr` to represent target-specific
numeric address spaces (A Lang-specific attribute is to be implemented
in a different PR)
2. Extending the `PointerType` to include an optional address space
parameter
3. Adding helper methods in `CIRBaseBuilder` to create pointers with
address spaces
4. Implementing custom parsers and printers for address space attributes
5. Updating the LLVM lowering to properly handle address spaces when
converting CIR to LLVM IR
The implementation allows for creating pointers with specific address
spaces, which is necessary for supporting language features like Clang's
`__attribute__((address_space(N)))`. Address spaces are preserved
through the CIR representation and correctly lowered to LLVM IR.
Diffstat (limited to 'llvm/lib/Object/BuildID.cpp')
0 files changed, 0 insertions, 0 deletions