aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/llvm.zig
diff options
context:
space:
mode:
authorRobin Voetter <robin@voetter.nl>2021-09-03 04:36:56 +0200
committerRobin Voetter <robin@voetter.nl>2021-09-20 02:29:04 +0200
commite4ac063297fc9210ae3a97fa370ea8c6c216ec43 (patch)
tree0ec2bb32f5760fdfb8f2fcdb1d1b87fa74b02471 /src/codegen/llvm.zig
parent13b917148e97560760eb13cd0e4a0b7365739f64 (diff)
downloadzig-e4ac063297fc9210ae3a97fa370ea8c6c216ec43.tar.gz
zig-e4ac063297fc9210ae3a97fa370ea8c6c216ec43.zip
Address Spaces: Restructure llvmAddressSpace a bit
Diffstat (limited to 'src/codegen/llvm.zig')
-rw-r--r--src/codegen/llvm.zig19
1 files changed, 8 insertions, 11 deletions
diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig
index 8b7282160e..ce79d43fac 100644
--- a/src/codegen/llvm.zig
+++ b/src/codegen/llvm.zig
@@ -583,18 +583,15 @@ pub const DeclGen = struct {
fn llvmAddressSpace(self: DeclGen, address_space: std.builtin.AddressSpace) c_uint {
const target = self.module.getTarget();
- return switch (address_space) {
- .generic => llvm.address_space.default,
- .gs => switch (target.cpu.arch) {
- .i386, .x86_64 => llvm.address_space.x86.gs,
- else => unreachable,
- },
- .fs => switch (target.cpu.arch) {
- .i386, .x86_64 => llvm.address_space.x86.fs,
- else => unreachable,
+ return switch (target.cpu.arch) {
+ .i386, .x86_64 => switch (address_space) {
+ .generic => llvm.address_space.default,
+ .gs => llvm.address_space.x86.gs,
+ .fs => llvm.address_space.x86.fs,
+ .ss => llvm.address_space.x86.ss,
},
- .ss => switch (target.cpu.arch) {
- .i386, .x86_64 => llvm.address_space.x86.ss,
+ else => switch (address_space) {
+ .generic => llvm.address_space.default,
else => unreachable,
},
};