diff --git a/arm-gen.c b/arm-gen.c index 680a490..5dd6c5e 100644 --- a/arm-gen.c +++ b/arm-gen.c @@ -1418,7 +1418,7 @@ int gtst(int inv, int t) op|=encbranch(r,t,1); o(op); t=r; - } else { /* VT_JMP || VT_JMPI */ + } else if (v == VT_JMP || v == VT_JMPI) { if ((v & 1) == inv) { if(!vtop->c.i) vtop->c.i=t; diff --git a/c67-gen.c b/c67-gen.c index a26dfaa..5a6fd56 100644 --- a/c67-gen.c +++ b/c67-gen.c @@ -2102,7 +2102,7 @@ int gtst(int inv, int t) C67_NOP(5); t = ind1; //return where we need to patch - } else { /* VT_JMP || VT_JMPI */ + } else if (v == VT_JMP || v == VT_JMPI) { /* && or || optimization */ if ((v & 1) == inv) { /* insert vtop->c jump list in t */ diff --git a/i386-gen.c b/i386-gen.c index ece054b..eca4ddd 100644 --- a/i386-gen.c +++ b/i386-gen.c @@ -677,7 +677,7 @@ ST_FUNC int gtst(int inv, int t) /* fast case : can jump directly since flags are set */ g(0x0f); t = psym((vtop->c.i - 16) ^ inv, t); - } else { /* VT_JMP || VT_JMPI */ + } else if (v == VT_JMP || v == VT_JMPI) { /* && or || optimization */ if ((v & 1) == inv) { /* insert vtop->c jump list in t */ diff --git a/il-gen.c b/il-gen.c index 9e1ec64..cf3aff5 100644 --- a/il-gen.c +++ b/il-gen.c @@ -516,7 +516,7 @@ int gtst(int inv, int t) break; } t = out_opj(c, t); - } else { /* VT_JMP || VT_JMPI */ + } else if (v == VT_JMP || v == VT_JMPI) { /* && or || optimization */ if ((v & 1) == inv) { /* insert vtop->c jump list in t */ diff --git a/x86_64-gen.c b/x86_64-gen.c index c8fed85..67aaadc 100644 --- a/x86_64-gen.c +++ b/x86_64-gen.c @@ -1592,7 +1592,7 @@ int gtst(int inv, int t) } g(0x0f); t = psym((vtop->c.i - 16) ^ inv, t); - } else { /* VT_JMP || VT_JMPI */ + } else if (v == VT_JMP || v == VT_JMPI) { /* && or || optimization */ if ((v & 1) == inv) { /* insert vtop->c jump list in t */