aboutsummaryrefslogtreecommitdiff
path: root/il-gen.c
diff options
context:
space:
mode:
authorseyko <seyko2@gmail.com>2015-03-03 15:51:09 +0300
committerseyko <seyko2@gmail.com>2015-03-03 15:51:09 +0300
commit2437ccdc768b1a4fde3255b2090e180b74ab198f (patch)
treef66c0114a12a3974f13abc001b5ac0f87e9750b0 /il-gen.c
parentc45a8695ebbcbad812993d530e69bfa2de33f131 (diff)
downloadtinycc-2437ccdc768b1a4fde3255b2090e180b74ab198f.tar.gz
tinycc-2437ccdc768b1a4fde3255b2090e180b74ab198f.tar.bz2
A partial reverse for commit eda2c756edc4dca004ba217d5bf361235dd9de1f
Author: Thomas Preud'homme <robotux@celest.fr> Date: Tue Dec 31 23:51:20 2013 +0800 Move logic for if (int value) to tccgen.c Move the logic to do a test of an integer value (ex if (0)) out of arch-specific code to tccgen.c to avoid code duplication. This also fixes test of long long value which was only testing the bottom half of such values on 32 bits architectures. I don't understand why if () in gtst(i) was removed. This patch allows to compile a linux kernel v.2.4.26 W/o this patch a tcc simply crashes.
Diffstat (limited to 'il-gen.c')
-rw-r--r--il-gen.c2
1 files changed, 1 insertions, 1 deletions
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 */