arm64: Fix regression introduced by 6245db9.

This commit is contained in:
Edmund Grimley Evans 2016-12-05 23:29:25 +00:00
parent 2372639e9d
commit e0fe69050d

View File

@ -1197,6 +1197,7 @@ static int reg_fret(int t)
return REG_FRET; return REG_FRET;
} }
#if !defined(TCC_TARGET_ARM64) && !defined(TCC_TARGET_X86_64)
/* expand 64bit on stack in two ints */ /* expand 64bit on stack in two ints */
static void lexpand(void) static void lexpand(void)
{ {
@ -1217,6 +1218,7 @@ static void lexpand(void)
} }
vtop[0].type.t = vtop[-1].type.t = VT_INT | u; vtop[0].type.t = vtop[-1].type.t = VT_INT | u;
} }
#endif
#ifdef TCC_TARGET_ARM #ifdef TCC_TARGET_ARM
/* expand long long on stack */ /* expand long long on stack */
@ -2370,6 +2372,7 @@ static void gen_cast(CType *type)
tcc_warning("nonportable conversion from pointer to char/short"); tcc_warning("nonportable conversion from pointer to char/short");
} }
force_charshort_cast(dbt); force_charshort_cast(dbt);
#if !defined(TCC_TARGET_ARM64) && !defined(TCC_TARGET_X86_64)
} else if ((dbt & VT_BTYPE) == VT_INT) { } else if ((dbt & VT_BTYPE) == VT_INT) {
/* scalar to int */ /* scalar to int */
if ((sbt & VT_BTYPE) == VT_LLONG) { if ((sbt & VT_BTYPE) == VT_LLONG) {
@ -2380,6 +2383,7 @@ static void gen_cast(CType *type)
/* if lvalue and single word type, nothing to do because /* if lvalue and single word type, nothing to do because
the lvalue already contains the real type size (see the lvalue already contains the real type size (see
VT_LVAL_xxx constants) */ VT_LVAL_xxx constants) */
#endif
} }
} }
} else if ((dbt & VT_BTYPE) == VT_PTR && !(vtop->r & VT_LVAL)) { } else if ((dbt & VT_BTYPE) == VT_PTR && !(vtop->r & VT_LVAL)) {