diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2022-09-02 20:49:37 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2022-09-07 22:42:56 +0200 |
| commit | 1d57b347e9aeddc2de33b1b77b331d36e4900425 (patch) | |
| tree | c4ffa0e8511a99767813e3174b9690f52d468e15 /src | |
| parent | b9c31a8703fdd8297673aa65a1bdefd56cd13b77 (diff) | |
| download | zig-1d57b347e9aeddc2de33b1b77b331d36e4900425.tar.gz zig-1d57b347e9aeddc2de33b1b77b331d36e4900425.zip | |
x86_64: clean up logging
Diffstat (limited to 'src')
| -rw-r--r-- | src/arch/x86_64/CodeGen.zig | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/arch/x86_64/CodeGen.zig b/src/arch/x86_64/CodeGen.zig index 1164df4b19..bb6191af06 100644 --- a/src/arch/x86_64/CodeGen.zig +++ b/src/arch/x86_64/CodeGen.zig @@ -222,6 +222,14 @@ const Branch = struct { try writer.writeAll("}"); } + fn format(branch: Branch, comptime unused_format_string: []const u8, options: std.fmt.FormatOptions, writer: anytype) !void { + _ = branch; + _ = unused_format_string; + _ = options; + _ = writer; + @compileError("do not format Branch directly; use ty.fmtDebug()"); + } + fn fmtDebug(self: @This()) std.fmt.Formatter(fmt) { return .{ .data = .{ .insts = self.inst_table.keys(), @@ -823,7 +831,7 @@ fn genBody(self: *Self, body: []const Air.Inst.Index) InnerError!void { fn processDeath(self: *Self, inst: Air.Inst.Index) void { const air_tags = self.air.instructions.items(.tag); if (air_tags[inst] == .constant) return; // Constants are immortal. - log.debug(" (processing death of %{d})", .{inst}); + log.debug("%{d} => {}", .{ inst, MCValue.dead }); // When editing this function, note that the logic must synchronize with `reuseOperand`. const prev_value = self.getResolvedInstValue(inst); const branch = &self.branch_stack.items[self.branch_stack.items.len - 1]; @@ -851,10 +859,8 @@ fn finishAirBookkeeping(self: *Self) void { } fn finishAir(self: *Self, inst: Air.Inst.Index, result: MCValue, operands: [Liveness.bpi - 1]Air.Inst.Ref) void { - log.debug("finishAir: %{d}, {}, {any}", .{ inst, result, operands }); var tomb_bits = self.liveness.getTombBits(inst); for (operands) |op| { - log.debug(" (processing {})", .{op}); const dies = @truncate(u1, tomb_bits) != 0; tomb_bits >>= 1; if (!dies) continue; @@ -865,7 +871,7 @@ fn finishAir(self: *Self, inst: Air.Inst.Index, result: MCValue, operands: [Live } const is_used = @truncate(u1, tomb_bits) == 0; if (is_used) { - log.debug(" (saving %{d} => {})", .{ inst, result }); + log.debug("%{d} => {}", .{ inst, result }); const branch = &self.branch_stack.items[self.branch_stack.items.len - 1]; branch.inst_table.putAssumeCapacityNoClobber(inst, result); @@ -4678,8 +4684,6 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { const reloc = try self.genCondBrMir(cond_ty, cond); - log.debug("airCondBr: %{d}", .{inst}); - // If the condition dies here in this condbr instruction, process // that death now instead of later as this has an effect on // whether it needs to be spilled in the branches @@ -4736,6 +4740,7 @@ fn airCondBr(self: *Self, inst: Air.Inst.Index) !void { // that we can use all the code emitting abstractions. This is why at the bottom we // assert that parent_branch.free_registers equals the saved_then_branch.free_registers // rather than assigning it. + log.debug("airCondBr: %{d}", .{inst}); log.debug("Upper branches:", .{}); for (self.branch_stack.items) |bs| { log.debug("{}", .{bs.fmtDebug()}); @@ -5119,8 +5124,6 @@ fn airSwitch(self: *Self, inst: Air.Inst.Index) !void { ); defer self.gpa.free(liveness.deaths); - log.debug("airSwitch: %{d}", .{inst}); - // If the condition dies here in this switch instruction, process // that death now instead of later as this has an effect on // whether it needs to be spilled in the branches @@ -5207,6 +5210,7 @@ fn airSwitch(self: *Self, inst: Air.Inst.Index) !void { // Consolidate returned MCValues between prongs and else branch like we do // in airCondBr. + log.debug("airSwitch: %{d}", .{inst}); log.debug("Upper branches:", .{}); for (self.branch_stack.items) |bs| { log.debug("{}", .{bs.fmtDebug()}); |
