From 5dadff3de553b0dae46cca233c751ed8b6853da4 Mon Sep 17 00:00:00 2001 From: Shinichiro Hamaji Date: Sun, 19 Jul 2009 06:42:23 +0900 Subject: x86-64: Fix stab debug information. We need 32bit relocations for code and 64bit for debug info. Introduce a new macro R_DATA_PTR to distinguish the two usages. --- tccgen.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tccgen.c') diff --git a/tccgen.c b/tccgen.c index 99ec723..bb7c4e9 100644 --- a/tccgen.c +++ b/tccgen.c @@ -4346,7 +4346,7 @@ static void init_putv(CType *type, Section *sec, unsigned long c, break; default: if (vtop->r & VT_SYM) { - greloc(sec, vtop->sym, c, R_DATA_32); + greloc(sec, vtop->sym, c, R_DATA_PTR); } *(int *)ptr |= (vtop->c.i & bit_mask) << bit_pos; break; @@ -4796,7 +4796,7 @@ static void decl_initializer_alloc(CType *type, AttributeDef *ad, int r, if (tcc_state->do_bounds_check) { unsigned long *bounds_ptr; - greloc(bounds_section, sym, bounds_section->data_offset, R_DATA_32); + greloc(bounds_section, sym, bounds_section->data_offset, R_DATA_PTR); /* then add global bound info */ bounds_ptr = section_ptr_add(bounds_section, 2 * sizeof(long)); bounds_ptr[0] = 0; /* relocated */ -- cgit v1.3.1