From: Wolfgang Bumiller Date: Sun, 23 Dec 2012 20:20:16 +0000 (+0100) Subject: Start instruction numbering at 1 and make parameters live at 0 X-Git-Tag: before-library~518 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=435dee935b56d41083d6b6fcf44cb722f14e731a;p=xonotic%2Fgmqcc.git Start instruction numbering at 1 and make parameters live at 0 --- diff --git a/ir.c b/ir.c index 0631ef7..8a84f1f 100644 --- a/ir.c +++ b/ir.c @@ -2175,7 +2175,7 @@ static void ir_block_enumerate(ir_block *self, size_t *_eid) void ir_function_enumerate(ir_function *self) { size_t i; - size_t instruction_id = 0; + size_t instruction_id = 1; for (i = 0; i < vec_size(self->blocks); ++i) { self->blocks[i]->eid = i; @@ -2190,6 +2190,10 @@ bool ir_function_calculate_liferanges(ir_function *self) size_t i; bool changed; + /* parameters live at 0 */ + for (i = 0; i < vec_size(self->params); ++i) + ir_value_life_merge(self->locals[i], 0); + do { self->run_id++; changed = false;