From: Bernhard Urban Date: Mon, 17 May 2010 11:49:52 +0000 (+0200) Subject: codea: not-optimierung passte nicht ganz X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=uebersetzerbau-ss10.git;a=commitdiff_plain;h=59b426c0bdff0d792f55cbc404df008aa08837cf codea: not-optimierung passte nicht ganz remember: (return x) != (return !!x) in C --- diff --git a/codea/code.bfe b/codea/code.bfe index a3e1c19..708bbe7 100644 --- a/codea/code.bfe +++ b/codea/code.bfe @@ -120,7 +120,7 @@ expr: O_FIELD(expr) # 1 # printf("\t//field(expr)\n"); KIDREG2PARM(0); printf("\ expr: O_FIELD(imm) # 1 # printf("\t//field(imm)\n"); printf("\tmovq %d, %%%s\n", KID_VAL(0) + (bnode->soffset * 8), BN_REG); -nexpr: O_EQ(expr,O_NULL) # 0 # +nexpr: O_EQ(expr,O_NULL) # 0 # gen_eqless(bnode, "ne", 1, 0); imm: O_ADD(imm,imm) # 0 # BN_VAL = KID_VAL(0) + KID_VAL(1);