| ... | ... | @@ -611,7 +611,7 @@ pub const Function = struct { |
| 611 | 611 | const a = try Assignment.start(f, writer, ctype); |
| 612 | 612 | try f.writeCValue(writer, dst, .Other); |
| 613 | 613 | try a.assign(f, writer); |
| 614 | | try f.writeCValue(writer, src, .Initializer); |
| 614 | try f.writeCValue(writer, src, .Other); |
| 615 | 615 | try a.end(f, writer); |
| 616 | 616 | } |
| 617 | 617 | |
| ... | ... | @@ -2826,7 +2826,7 @@ pub fn genLazyFn(o: *Object, lazy_ctype_pool: *const CType.Pool, lazy_fn: LazyFn |
| 2826 | 2826 | }); |
| 2827 | 2827 | try o.dg.renderTypeAndName(w, name_ty, .{ .identifier = "name" }, Const, .none, .complete); |
| 2828 | 2828 | try w.writeAll(" = "); |
| 2829 | | try o.dg.renderValue(w, Value.fromInterned(name_val), .Initializer); |
| 2829 | try o.dg.renderValue(w, Value.fromInterned(name_val), .StaticInitializer); |
| 2830 | 2830 | try w.writeAll(";\n return ("); |
| 2831 | 2831 | try o.dg.renderType(w, name_slice_ty); |
| 2832 | 2832 | try w.print("){{{}, {}}};\n", .{ |
| ... | ... | @@ -4045,7 +4045,7 @@ fn airStore(f: *Function, inst: Air.Inst.Index, safety: bool) !CValue { |
| 4045 | 4045 | const new_local = try f.allocLocal(inst, src_ty); |
| 4046 | 4046 | try f.writeCValue(writer, new_local, .Other); |
| 4047 | 4047 | try writer.writeAll(" = "); |
| 4048 | | try f.writeCValue(writer, src_val, .Initializer); |
| 4048 | try f.writeCValue(writer, src_val, .Other); |
| 4049 | 4049 | try writer.writeAll(";\n"); |
| 4050 | 4050 | |
| 4051 | 4051 | break :blk new_local; |
| ... | ... | @@ -4516,7 +4516,7 @@ fn airSlice(f: *Function, inst: Air.Inst.Index) !CValue { |
| 4516 | 4516 | const a = try Assignment.start(f, writer, .usize); |
| 4517 | 4517 | try f.writeCValueMember(writer, local, .{ .identifier = "len" }); |
| 4518 | 4518 | try a.assign(f, writer); |
| 4519 | | try f.writeCValue(writer, len, .Initializer); |
| 4519 | try f.writeCValue(writer, len, .Other); |
| 4520 | 4520 | try a.end(f, writer); |
| 4521 | 4521 | } |
| 4522 | 4522 | return local; |
| ... | ... | @@ -4934,7 +4934,7 @@ fn airSwitchDispatch(f: *Function, inst: Air.Inst.Index) !void { |
| 4934 | 4934 | const cond_local = f.loop_switch_conds.get(br.block_inst).?; |
| 4935 | 4935 | try f.writeCValue(writer, .{ .local = cond_local }, .Other); |
| 4936 | 4936 | try writer.writeAll(" = "); |
| 4937 | | try f.writeCValue(writer, cond, .Initializer); |
| 4937 | try f.writeCValue(writer, cond, .Other); |
| 4938 | 4938 | try writer.writeAll(";\n"); |
| 4939 | 4939 | try writer.print("goto zig_switch_{d}_loop;", .{@intFromEnum(br.block_inst)}); |
| 4940 | 4940 | } |
| ... | ... | @@ -4979,14 +4979,8 @@ fn bitcast(f: *Function, dest_ty: Type, operand: CValue, operand_ty: Type) !CVal |
| 4979 | 4979 | const operand_lval = if (operand == .constant) blk: { |
| 4980 | 4980 | const operand_local = try f.allocLocal(null, operand_ty); |
| 4981 | 4981 | try f.writeCValue(writer, operand_local, .Other); |
| 4982 | | if (operand_ty.isAbiInt(zcu)) { |
| 4983 | | try writer.writeAll(" = "); |
| 4984 | | } else { |
| 4985 | | try writer.writeAll(" = ("); |
| 4986 | | try f.renderType(writer, operand_ty); |
| 4987 | | try writer.writeByte(')'); |
| 4988 | | } |
| 4989 | | try f.writeCValue(writer, operand, .Initializer); |
| 4982 | try writer.writeAll(" = "); |
| 4983 | try f.writeCValue(writer, operand, .Other); |
| 4990 | 4984 | try writer.writeAll(";\n"); |
| 4991 | 4985 | break :blk operand_local; |
| 4992 | 4986 | } else operand; |
| ... | ... | @@ -5698,7 +5692,7 @@ fn airOptionalPayloadPtrSet(f: *Function, inst: Air.Inst.Index) !CValue { |
| 5698 | 5692 | const a = try Assignment.start(f, writer, opt_ctype); |
| 5699 | 5693 | try f.writeCValueDeref(writer, operand); |
| 5700 | 5694 | try a.assign(f, writer); |
| 5701 | | try f.object.dg.renderValue(writer, Value.false, .Initializer); |
| 5695 | try f.object.dg.renderValue(writer, Value.false, .Other); |
| 5702 | 5696 | try a.end(f, writer); |
| 5703 | 5697 | return .none; |
| 5704 | 5698 | }, |
| ... | ... | @@ -5718,7 +5712,7 @@ fn airOptionalPayloadPtrSet(f: *Function, inst: Air.Inst.Index) !CValue { |
| 5718 | 5712 | const a = try Assignment.start(f, writer, opt_ctype); |
| 5719 | 5713 | try f.writeCValueDerefMember(writer, operand, .{ .identifier = "is_null" }); |
| 5720 | 5714 | try a.assign(f, writer); |
| 5721 | | try f.object.dg.renderValue(writer, Value.false, .Initializer); |
| 5715 | try f.object.dg.renderValue(writer, Value.false, .Other); |
| 5722 | 5716 | try a.end(f, writer); |
| 5723 | 5717 | } |
| 5724 | 5718 | if (f.liveness.isUnused(inst)) return .none; |
| ... | ... | @@ -5844,7 +5838,7 @@ fn airFieldParentPtr(f: *Function, inst: Air.Inst.Index) !CValue { |
| 5844 | 5838 | try writer.writeByte(')'); |
| 5845 | 5839 | |
| 5846 | 5840 | switch (fieldLocation(container_ptr_ty, field_ptr_ty, extra.field_index, pt)) { |
| 5847 | | .begin => try f.writeCValue(writer, field_ptr_val, .Initializer), |
| 5841 | .begin => try f.writeCValue(writer, field_ptr_val, .Other), |
| 5848 | 5842 | .field => |field| { |
| 5849 | 5843 | const u8_ptr_ty = try pt.adjustPtrTypeChild(field_ptr_ty, .u8); |
| 5850 | 5844 | |
| ... | ... | @@ -5898,7 +5892,7 @@ fn fieldPtr( |
| 5898 | 5892 | try writer.writeByte(')'); |
| 5899 | 5893 | |
| 5900 | 5894 | switch (fieldLocation(container_ptr_ty, field_ptr_ty, field_index, pt)) { |
| 5901 | | .begin => try f.writeCValue(writer, container_ptr_val, .Initializer), |
| 5895 | .begin => try f.writeCValue(writer, container_ptr_val, .Other), |
| 5902 | 5896 | .field => |field| { |
| 5903 | 5897 | try writer.writeByte('&'); |
| 5904 | 5898 | try f.writeCValueDerefMember(writer, container_ptr_val, field); |
| ... | ... | @@ -6021,7 +6015,7 @@ fn airStructFieldVal(f: *Function, inst: Air.Inst.Index) !CValue { |
| 6021 | 6015 | const operand_local = try f.allocLocal(inst, struct_ty); |
| 6022 | 6016 | try f.writeCValue(writer, operand_local, .Other); |
| 6023 | 6017 | try writer.writeAll(" = "); |
| 6024 | | try f.writeCValue(writer, struct_byval, .Initializer); |
| 6018 | try f.writeCValue(writer, struct_byval, .Other); |
| 6025 | 6019 | try writer.writeAll(";\n"); |
| 6026 | 6020 | break :blk operand_local; |
| 6027 | 6021 | } else struct_byval; |
| ... | ... | @@ -6119,7 +6113,7 @@ fn airUnwrapErrUnionPay(f: *Function, inst: Air.Inst.Index, is_ptr: bool) !CValu |
| 6119 | 6113 | try writer.writeAll(" = ("); |
| 6120 | 6114 | try f.renderType(writer, inst_ty); |
| 6121 | 6115 | try writer.writeByte(')'); |
| 6122 | | try f.writeCValue(writer, operand, .Initializer); |
| 6116 | try f.writeCValue(writer, operand, .Other); |
| 6123 | 6117 | try writer.writeAll(";\n"); |
| 6124 | 6118 | return local; |
| 6125 | 6119 | } |
| ... | ... | @@ -6164,7 +6158,7 @@ fn airWrapOptional(f: *Function, inst: Air.Inst.Index) !CValue { |
| 6164 | 6158 | const a = try Assignment.start(f, writer, operand_ctype); |
| 6165 | 6159 | try f.writeCValueMember(writer, local, .{ .identifier = "payload" }); |
| 6166 | 6160 | try a.assign(f, writer); |
| 6167 | | try f.writeCValue(writer, operand, .Initializer); |
| 6161 | try f.writeCValue(writer, operand, .Other); |
| 6168 | 6162 | try a.end(f, writer); |
| 6169 | 6163 | } |
| 6170 | 6164 | return local; |
| ... | ... | @@ -6365,7 +6359,7 @@ fn airArrayToSlice(f: *Function, inst: Air.Inst.Index) !CValue { |
| 6365 | 6359 | try f.writeCValueMember(writer, local, .{ .identifier = "ptr" }); |
| 6366 | 6360 | try a.assign(f, writer); |
| 6367 | 6361 | if (operand == .undef) { |
| 6368 | | try f.writeCValue(writer, .{ .undef = inst_ty.slicePtrFieldType(zcu) }, .Initializer); |
| 6362 | try f.writeCValue(writer, .{ .undef = inst_ty.slicePtrFieldType(zcu) }, .Other); |
| 6369 | 6363 | } else { |
| 6370 | 6364 | const ptr_ctype = try f.ctypeFromType(ptr_ty, .complete); |
| 6371 | 6365 | const ptr_child_ctype = ptr_ctype.info(ctype_pool).pointer.elem_ctype; |
| ... | ... | @@ -6382,7 +6376,7 @@ fn airArrayToSlice(f: *Function, inst: Air.Inst.Index) !CValue { |
| 6382 | 6376 | try writer.writeByte('&'); |
| 6383 | 6377 | try f.writeCValueDeref(writer, operand); |
| 6384 | 6378 | try writer.print("[{}]", .{try f.fmtIntLiteral(try pt.intValue(.usize, 0))}); |
| 6385 | | } else try f.writeCValue(writer, operand, .Initializer); |
| 6379 | } else try f.writeCValue(writer, operand, .Other); |
| 6386 | 6380 | } |
| 6387 | 6381 | try a.end(f, writer); |
| 6388 | 6382 | } |
| ... | ... | @@ -6912,7 +6906,7 @@ fn airMemset(f: *Function, inst: Air.Inst.Index, safety: bool) !CValue { |
| 6912 | 6906 | try writer.writeAll("for ("); |
| 6913 | 6907 | try f.writeCValue(writer, index, .Other); |
| 6914 | 6908 | try writer.writeAll(" = "); |
| 6915 | | try f.object.dg.renderValue(writer, try pt.intValue(.usize, 0), .Initializer); |
| 6909 | try f.object.dg.renderValue(writer, try pt.intValue(.usize, 0), .Other); |
| 6916 | 6910 | try writer.writeAll("; "); |
| 6917 | 6911 | try f.writeCValue(writer, index, .Other); |
| 6918 | 6912 | try writer.writeAll(" != "); |
| ... | ... | @@ -7282,7 +7276,7 @@ fn airReduce(f: *Function, inst: Air.Inst.Index) !CValue { |
| 7282 | 7276 | .float => try pt.floatValue(scalar_ty, std.math.nan(f128)), |
| 7283 | 7277 | else => unreachable, |
| 7284 | 7278 | }, |
| 7285 | | }, .Initializer); |
| 7279 | }, .Other); |
| 7286 | 7280 | try writer.writeAll(";\n"); |
| 7287 | 7281 | |
| 7288 | 7282 | const v = try Vectorize.start(f, inst, writer, operand_ty); |