aboutsummaryrefslogtreecommitdiff
path: root/src/codegen.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2023-05-18 22:02:55 -0700
committerAndrew Kelley <andrew@ziglang.org>2023-06-10 20:47:53 -0700
commit7bf91fc79ac9e4eae575baf3a2ca9549bc3bf6c2 (patch)
treef07c76f10c294cdfa7cc302097278ac4ff720c65 /src/codegen.zig
parent607737d841bc2279cbe5fee68a0a546b9a5a802e (diff)
downloadzig-7bf91fc79ac9e4eae575baf3a2ca9549bc3bf6c2.tar.gz
zig-7bf91fc79ac9e4eae575baf3a2ca9549bc3bf6c2.zip
compiler: eliminate legacy Type.Tag.pointer
Now pointer types are stored only in InternPool.
Diffstat (limited to 'src/codegen.zig')
-rw-r--r--src/codegen.zig9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/codegen.zig b/src/codegen.zig
index 9eb294feac..8e145a3b32 100644
--- a/src/codegen.zig
+++ b/src/codegen.zig
@@ -347,8 +347,7 @@ pub fn generateSymbol(
const slice = typed_value.val.castTag(.slice).?.data;
// generate ptr
- var buf: Type.SlicePtrFieldTypeBuffer = undefined;
- const slice_ptr_field_type = typed_value.ty.slicePtrFieldType(&buf, mod);
+ const slice_ptr_field_type = typed_value.ty.slicePtrFieldType(mod);
switch (try generateSymbol(bin_file, src_loc, .{
.ty = slice_ptr_field_type,
.val = slice.ptr,
@@ -850,10 +849,9 @@ fn lowerParentPtr(
reloc_info.offset(@intCast(u32, switch (field_ptr.container_ty.zigTypeTag(mod)) {
.Pointer => offset: {
assert(field_ptr.container_ty.isSlice(mod));
- var buf: Type.SlicePtrFieldTypeBuffer = undefined;
break :offset switch (field_ptr.field_index) {
0 => 0,
- 1 => field_ptr.container_ty.slicePtrFieldType(&buf, mod).abiSize(mod),
+ 1 => field_ptr.container_ty.slicePtrFieldType(mod).abiSize(mod),
else => unreachable,
};
},
@@ -952,8 +950,7 @@ fn lowerDeclRef(
const mod = bin_file.options.module.?;
if (typed_value.ty.isSlice(mod)) {
// generate ptr
- var buf: Type.SlicePtrFieldTypeBuffer = undefined;
- const slice_ptr_field_type = typed_value.ty.slicePtrFieldType(&buf, mod);
+ const slice_ptr_field_type = typed_value.ty.slicePtrFieldType(mod);
switch (try generateSymbol(bin_file, src_loc, .{
.ty = slice_ptr_field_type,
.val = typed_value.val,