Fixes previous fixes

This commit is contained in:
Archidemon
2014-01-10 11:58:16 +06:00
parent ea7b17f641
commit fdf9fba578

View File

@ -3909,9 +3909,9 @@ ST_FUNC void unary(void)
if (vtop->r & VT_SYM) { if (vtop->r & VT_SYM) {
vtop->sym = s; vtop->sym = s;
#ifdef TCC_TARGET_X86_64 #ifdef TCC_TARGET_X86_64
s1->vtop->c.ull = 0; vtop->c.ull = 0;
#else #else
s1->vtop->c.ul = 0; vtop->c.ul = 0;
#endif #endif
} }
break; break;
@ -5127,10 +5127,10 @@ static void init_putv(CType *type, Section *sec, unsigned long c,
*(long long *)ptr |= (vtop->c.ll & bit_mask) << bit_pos; *(long long *)ptr |= (vtop->c.ll & bit_mask) << bit_pos;
break; break;
case VT_PTR: case VT_PTR:
if (s1->vtop->r & VT_SYM) { if (vtop->r & VT_SYM) {
greloc(s1, sec, s1->vtop->sym, c, R_DATA_PTR); greloc(sec, vtop->sym, c, R_DATA_PTR);
} }
*(addr_t *)ptr |= (s1->vtop->c.ull & bit_mask) << bit_pos; *(addr_t *)ptr |= (vtop->c.ull & bit_mask) << bit_pos;
break; break;
default: default:
if (vtop->r & VT_SYM) { if (vtop->r & VT_SYM) {