diff options
| author | Veikka Tuominen <git@vexu.eu> | 2022-03-15 16:42:26 +0200 |
|---|---|---|
| committer | Veikka Tuominen <git@vexu.eu> | 2022-03-16 09:34:26 +0200 |
| commit | 03438118369605df178f4bfdb5b1a8ad6a349be7 (patch) | |
| tree | 27ea1fa1f07ebc7f704f7d00331e08896a0354d9 /src/codegen/c.zig | |
| parent | 0f112b9f6d390ad4c95b7bf214a8243ad9e3b9a7 (diff) | |
| download | zig-03438118369605df178f4bfdb5b1a8ad6a349be7.tar.gz zig-03438118369605df178f4bfdb5b1a8ad6a349be7.zip | |
Sema: emit dbg_func around inline calls
Diffstat (limited to 'src/codegen/c.zig')
| -rw-r--r-- | src/codegen/c.zig | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig index 05ceb30379..c726f659a1 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -1687,6 +1687,7 @@ fn genBody(f: *Function, body: []const Air.Inst.Index) error{ AnalysisFail, OutO .block => try airBlock(f, inst), .bitcast => try airBitcast(f, inst), .dbg_stmt => try airDbgStmt(f, inst), + .dbg_func => try airDbgFunc(f, inst), .intcast => try airIntCast(f, inst), .trunc => try airTrunc(f, inst), .bool_to_int => try airBoolToInt(f, inst), @@ -2660,6 +2661,14 @@ fn airDbgStmt(f: *Function, inst: Air.Inst.Index) !CValue { return CValue.none; } +fn airDbgFunc(f: *Function, inst: Air.Inst.Index) !CValue { + const ty_pl = f.air.instructions.items(.data)[inst].ty_pl; + const writer = f.object.writer(); + const function = f.air.values[ty_pl.payload].castTag(.function).?.data; + try writer.print("/* dbg func:{s} */\n", .{function.owner_decl.name}); + return CValue.none; +} + fn airDbgVar(f: *Function, inst: Air.Inst.Index) !CValue { const pl_op = f.air.instructions.items(.data)[inst].pl_op; const name = f.air.nullTerminatedString(pl_op.payload); |
