llvm: update address space definitions to LLVM 17

This commit is contained in:
Jacob Young 2023-08-12 19:34:01 -04:00 committed by Andrew Kelley
parent 749b88c7f3
commit cad594372e
2 changed files with 17 additions and 14 deletions

View File

@ -10509,16 +10509,17 @@ fn llvmAddrSpaceInfo(target: std.Target) []const AddrSpaceInfo {
.{ .zig = .constant, .llvm = Builder.AddrSpace.amdgpu.constant, .force_in_data_layout = true },
.{ .zig = .local, .llvm = Builder.AddrSpace.amdgpu.private, .size = 32, .abi = 32 },
.{ .zig = null, .llvm = Builder.AddrSpace.amdgpu.constant_32bit, .size = 32, .abi = 32 },
.{ .zig = null, .llvm = Builder.AddrSpace.amdgpu.buffer_fat_pointer, .non_integral = true },
.{ .zig = null, .llvm = Builder.AddrSpace.amdgpu.buffer_fat_pointer, .non_integral = true, .size = 160, .abi = 256, .idx = 32 },
.{ .zig = null, .llvm = Builder.AddrSpace.amdgpu.buffer_resource, .non_integral = true, .size = 128, .abi = 128 },
},
.avr => &.{
.{ .zig = .generic, .llvm = .default, .abi = 8 },
.{ .zig = .flash, .llvm = Builder.AddrSpace.avr.flash, .abi = 8 },
.{ .zig = .flash1, .llvm = Builder.AddrSpace.avr.flash1, .abi = 8 },
.{ .zig = .flash2, .llvm = Builder.AddrSpace.avr.flash2, .abi = 8 },
.{ .zig = .flash3, .llvm = Builder.AddrSpace.avr.flash3, .abi = 8 },
.{ .zig = .flash4, .llvm = Builder.AddrSpace.avr.flash4, .abi = 8 },
.{ .zig = .flash5, .llvm = Builder.AddrSpace.avr.flash5, .abi = 8 },
.{ .zig = .flash, .llvm = Builder.AddrSpace.avr.program, .abi = 8 },
.{ .zig = .flash1, .llvm = Builder.AddrSpace.avr.program1, .abi = 8 },
.{ .zig = .flash2, .llvm = Builder.AddrSpace.avr.program2, .abi = 8 },
.{ .zig = .flash3, .llvm = Builder.AddrSpace.avr.program3, .abi = 8 },
.{ .zig = .flash4, .llvm = Builder.AddrSpace.avr.program4, .abi = 8 },
.{ .zig = .flash5, .llvm = Builder.AddrSpace.avr.program5, .abi = 8 },
},
.wasm32, .wasm64 => &.{
.{ .zig = .generic, .llvm = .default, .force_in_data_layout = true },

View File

@ -1873,12 +1873,13 @@ pub const AddrSpace = enum(u24) {
// See llvm/lib/Target/AVR/AVR.h
pub const avr = struct {
pub const flash: AddrSpace = @enumFromInt(1);
pub const flash1: AddrSpace = @enumFromInt(2);
pub const flash2: AddrSpace = @enumFromInt(3);
pub const flash3: AddrSpace = @enumFromInt(4);
pub const flash4: AddrSpace = @enumFromInt(5);
pub const flash5: AddrSpace = @enumFromInt(6);
pub const data: AddrSpace = @enumFromInt(0);
pub const program: AddrSpace = @enumFromInt(1);
pub const program1: AddrSpace = @enumFromInt(2);
pub const program2: AddrSpace = @enumFromInt(3);
pub const program3: AddrSpace = @enumFromInt(4);
pub const program4: AddrSpace = @enumFromInt(5);
pub const program5: AddrSpace = @enumFromInt(6);
};
// See llvm/lib/Target/NVPTX/NVPTX.h
@ -1901,6 +1902,7 @@ pub const AddrSpace = enum(u24) {
pub const private: AddrSpace = @enumFromInt(5);
pub const constant_32bit: AddrSpace = @enumFromInt(6);
pub const buffer_fat_pointer: AddrSpace = @enumFromInt(7);
pub const buffer_resource: AddrSpace = @enumFromInt(8);
pub const param_d: AddrSpace = @enumFromInt(6);
pub const param_i: AddrSpace = @enumFromInt(7);
pub const constant_buffer_0: AddrSpace = @enumFromInt(8);
@ -1921,7 +1923,7 @@ pub const AddrSpace = enum(u24) {
pub const constant_buffer_15: AddrSpace = @enumFromInt(23);
};
// See llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
// See llvm/include/llvm/CodeGen/WasmAddressSpaces.h
pub const wasm = struct {
pub const variable: AddrSpace = @enumFromInt(1);
pub const externref: AddrSpace = @enumFromInt(10);