| ... | ... | @@ -3161,7 +3161,7 @@ fn storeSimdImmd(func: *CodeGen, value: [16]u8) !WValue { |
| 3161 | 3161 | fn emitUndefined(func: *CodeGen, ty: Type) InnerError!WValue { |
| 3162 | 3162 | switch (ty.zigTypeTag()) { |
| 3163 | 3163 | .Bool, .ErrorSet => return WValue{ .imm32 = 0xaaaaaaaa }, |
| 3164 | | .Int => switch (ty.intInfo(func.target).bits) { |
| 3164 | .Int, .Enum => switch (ty.intInfo(func.target).bits) { |
| 3165 | 3165 | 0...32 => return WValue{ .imm32 = 0xaaaaaaaa }, |
| 3166 | 3166 | 33...64 => return WValue{ .imm64 = 0xaaaaaaaaaaaaaaaa }, |
| 3167 | 3167 | else => unreachable, |
| ... | ... | @@ -3958,7 +3958,12 @@ fn airUnwrapErrUnionPayload(func: *CodeGen, inst: Air.Inst.Index, op_is_ptr: boo |
| 3958 | 3958 | const payload_ty = err_ty.errorUnionPayload(); |
| 3959 | 3959 | |
| 3960 | 3960 | const result = result: { |
| 3961 | | if (!payload_ty.hasRuntimeBitsIgnoreComptime()) break :result WValue{ .none = {} }; |
| 3961 | if (!payload_ty.hasRuntimeBitsIgnoreComptime()) { |
| 3962 | if (op_is_ptr) { |
| 3963 | break :result WValue{ .imm32 = 0 }; |
| 3964 | } |
| 3965 | break :result WValue{ .none = {} }; |
| 3966 | } |
| 3962 | 3967 | |
| 3963 | 3968 | const pl_offset = @intCast(u32, errUnionPayloadOffset(payload_ty, func.target)); |
| 3964 | 3969 | if (op_is_ptr or isByRef(payload_ty, func.target)) { |