stage2: remove opaque type workaround from Type.ptrAlignment

This commit is contained in:
Veikka Tuominen 2022-03-03 19:06:54 +02:00
parent 7691013d10
commit 69bd2c243e
2 changed files with 5 additions and 11 deletions

View File

@ -16852,7 +16852,7 @@ fn beginComptimePtrLoad(
};
return ComptimePtrLoadKit{
.root_val = parent.root_val,
.root_ty = parent.ty,
.root_ty = parent.root_ty,
.val = try parent.val.elemValue(sema.arena, elem_ptr.index),
.ty = elem_ty,
.byte_offset = byte_offset,
@ -16868,7 +16868,7 @@ fn beginComptimePtrLoad(
}
return ComptimePtrLoadKit{
.root_val = parent.root_val,
.root_ty = parent.ty,
.root_ty = parent.root_ty,
.val = parent.val,
.ty = parent.ty,
.byte_offset = parent.byte_offset,
@ -16896,7 +16896,7 @@ fn beginComptimePtrLoad(
};
return ComptimePtrLoadKit{
.root_val = parent.root_val,
.root_ty = parent.ty,
.root_ty = parent.root_ty,
.val = try parent.val.fieldValue(sema.arena, field_index),
.ty = parent.ty.structFieldType(field_index),
.byte_offset = byte_offset,

View File

@ -2170,11 +2170,7 @@ pub const Type = extern union {
.optional_single_mut_pointer,
=> {
const child_type = self.cast(Payload.ElemType).?.data;
if (child_type.zigTypeTag() == .Opaque) {
return 1;
} else {
return child_type.abiAlignment(target);
}
return child_type.abiAlignment(target);
},
.manyptr_u8,
@ -2188,8 +2184,6 @@ pub const Type = extern union {
const ptr_info = self.castTag(.pointer).?.data;
if (ptr_info.@"align" != 0) {
return ptr_info.@"align";
} else if (ptr_info.pointee_type.zigTypeTag() == .Opaque) {
return 1;
} else {
return ptr_info.pointee_type.abiAlignment(target);
}
@ -2246,6 +2240,7 @@ pub const Type = extern union {
.export_options,
.extern_options,
.@"opaque",
.anyopaque,
=> return 1,
.fn_noreturn_no_args, // represents machine code; not a pointer
@ -2419,7 +2414,6 @@ pub const Type = extern union {
.empty_struct,
.void,
.anyopaque,
.empty_struct_literal,
.type,
.comptime_int,