From: ceriel Date: Thu, 8 Jan 1987 14:27:07 +0000 (+0000) Subject: Added exclusive or operator X-Git-Tag: release-5-5~5033 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=324525856026b2c74b90229d2ed6538697ea3d1c;p=ack.git Added exclusive or operator --- diff --git a/mach/proto/ncg/compute.c b/mach/proto/ncg/compute.c index 90b7d13fd..a47c0655b 100644 --- a/mach/proto/ncg/compute.c +++ b/mach/proto/ncg/compute.c @@ -80,6 +80,7 @@ char opdesc[] = { LLDEF, /* EX_INREG */ LLDEF, /* EX_REGVAR */ LLDEF|RLDEF, /* EX_OR */ + LLDEF|RLDEF, /* EX_XOR */ LLDEF|RLDEF, /* EX_AND */ }; @@ -296,6 +297,10 @@ result_t compute(node) register node_p node; { assert(leaf1.e_typ == EV_INT && leaf2.e_typ == EV_INT); result.e_v.e_con = leaf1.e_v.e_con | leaf2.e_v.e_con; return(result); + case EX_XOR: + assert(leaf1.e_typ == EV_INT && leaf2.e_typ == EV_INT); + result.e_v.e_con = leaf1.e_v.e_con ^ leaf2.e_v.e_con; + return(result); case EX_AND: assert(leaf1.e_typ == EV_INT && leaf2.e_typ == EV_INT); result.e_v.e_con = leaf1.e_v.e_con & leaf2.e_v.e_con;