On Thu, 2011-02-17 at 15:08 -0800, Linus Torvalds wrote:
On Thu, Feb 17, 2011 at 2:48 PM, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
Gaah, I didn't realize that we've never had to do anything like this
before, and that the exception table is all arch-specific code. So we
don't have any way to "output that damned pointer and stop whining
about it" model at all.
Actually, I don't think the problem is about ".word" vs ".xword". We
should be able to just use ".long" everywhere.
But the symbol _name_ may have different prefixes, and when we use
"asm()" at the top level, we can't use the expressions to fix it up.
So a
asm(".long %0":'i" (symbol))
doesn't work (ignore the lack of section naming, that's not
important), and neither can we just do something like
#define output_asm_pointer(section, symbol) \
asm(".long " #symbol)
portably, because some linker formats want to see prepended underscores etc.
Except that .long is 32-bit on ppc64 :-( You need .llong for 64-bit.
Cheers,
Ben.
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html