[PATCH] Add support for parsing ARM symbol variants on ELF targets

Tim Northover t.p.northover at gmail.com
Mon Dec 2 13:56:13 PST 2013


> I just tried a small example with gcc-4.6, and it produces a R_ARM_GOT32 for
> bar(got), and a R_ARM_ABS32 for bar at got

Ah, of course! How stupid of me! My ire is now redirected to whichever
muppet thought making '@' a comment-specifier would be a good wheeze.

Right, the intent of the change makes complete sense now, thanks for
taking the time to explain it.

(Re: R_ARM_PLT32)

> I'm not opposed to changing that behavior, but I think it is a separate fix
> from my patch.

Agreed. It's not fair to expect you to fix that here if it's existing behaviour.

Now, onto some hopefully more informed comments...

There's a FIXME in include/llvm/MC/MCExpr.h saying we'd like to move
towards eliminating the VK_ARM_* types (where possible, obviously
TARGET1 and so on are ARM-specific and would remain).

This patch seems like it's most of the way there: the
UseParenForSymbolVariant is just the extra bit of information that's
needed to eliminate the distinction. Did you investigate what would be
needed to perform that merge at the same time?

Cheers.

Tim.



More information about the llvm-commits mailing list