[cfe-commits] EABI triples patch (2/2)
Renato.Golin at arm.com
Fri Jan 21 13:02:00 PST 2011
This is a very simple patch, can anyone have quick a look at it?
I just committed the LLVM part of the patch and tested with today's
trunk, all working fine.
On 19/01/11 15:21, Renato Golin wrote:
> Sorry, I sent this patch to the llvm-commit list... See the first part
> of the patch in llvm-commit list.
> The attached patch adds support for EABI triples in Clang (from today's
> r123755) regarding bug #8957
> Clang was not parsing target triples involving EABI and was generating
> wrong IR (wrong PCS) and passing the wrong information down llc via
> the target-triple printed in IR. I've fixed this by adding the parsing
> of EABI into LLVM's Triple class and using it to choose the correct
> PCS in Clang's Tools.
> There's still some edges to cover, such as the decisions of which PCS
> to use based on Darwin's defaults (v6/v7). We should add support for
> architecture definitions (TargetData?) to Clang, to be able to
> correctly pass the options to llc AND re-generate the correct target
> triple in the final IR.
> This patch (2/2):
> This are Clang's modifications to use the EABI triple recognition and
> set the according float-abi and procedure call standards.
> The patch doesn't change Darwin's default on "soft" for architectures
> older than v6 (a bit odd), but it doesn't add this rule to EABI
> triples, since the old APCS was deprecated in the current EABI.
> However, functions with ellipsis and other special features (?) can
> still use the "C" calling convention available in LLVM.
> The Environment check was added on the OS's default label, which
> although not perfect, it's the best place now to avoid regressions.
-- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
More information about the cfe-commits