[llvm-commits] [patch] Remove arm_aapcscc from some tests

Bob Wilson bob.wilson at apple.com
Tue Jun 15 13:55:08 PDT 2010


On Jun 15, 2010, at 11:17 AM, Rafael Espindola wrote:

> Discussing PR7357 over IRC, Nick suggested that the best fix would be
> to change simplify-libcalls to not modify calls with non-default
> calling conventions. This looks reasonable, but to do that we have to
> change the default ARM calling convention to the default (.i.e "") :-)
> 
> The attached patch is a first step in that direction. It just updates
> the tests to use "" instead of arm_aapcscc. I will do the same with
> arm_apcscc and then change llvm-gcc and clang to use "" for the
> default.

Replying to a discussion on IRC....

Anton says that non-linux targets, e.g., bare-metal targets, should also use the AAPCS ABI.  That conflicts with both llvm-gcc and the llvm backend.  llvm-gcc defines ARM_DEFAULT_ABI to ARM_ABI_APCS.  That is overridden in linux-eabi.h and bpabi.h but neither of those are used for bare-metal targets.  The llvm backend defaults TargetABI to ARM_ABI_APCS, and that is overridden in ARMSubtarget.cpp only when the target triple contains the string "eabi".  So, unless I'm totally missing something, bare-metal targets are currently defaulting to APCS.





More information about the llvm-commits mailing list