diff options
| author | mlugg <mlugg@mlugg.co.uk> | 2023-04-09 01:32:53 +0100 |
|---|---|---|
| committer | mlugg <mlugg@mlugg.co.uk> | 2023-04-20 20:28:04 +0100 |
| commit | 8258530c39c347ca83fdbe7575460712960a83f3 (patch) | |
| tree | bb7ddf85cdb42341f09b6d1812e32938165645b2 /src/codegen/c.zig | |
| parent | fac120bc3ad58a10ab80952e42becd0084aec059 (diff) | |
| download | zig-8258530c39c347ca83fdbe7575460712960a83f3.tar.gz zig-8258530c39c347ca83fdbe7575460712960a83f3.zip | |
Liveness: control flow analysis
This is a partial rewrite of Liveness, so has some other notable changes:
- A proper multi-pass system to prevent code duplication
- Better logging
- Minor bugfixes
Diffstat (limited to 'src/codegen/c.zig')
| -rw-r--r-- | src/codegen/c.zig | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig index f659827f09..9a89574b38 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -4637,17 +4637,12 @@ fn airLoop(f: *Function, inst: Air.Inst.Index) !CValue { const ty_pl = f.air.instructions.items(.data)[inst].ty_pl; const loop = f.air.extraData(Air.Block, ty_pl.payload); const body = f.air.extra[loop.end..][0..loop.data.body_len]; - const liveness_loop = f.liveness.getLoop(inst); const writer = f.object.writer(); try writer.writeAll("for (;;) "); try genBody(f, body); try writer.writeByte('\n'); - for (liveness_loop.deaths) |operand| { - try die(f, inst, Air.indexToRef(operand)); - } - return .none; } |
