[llvm-commits] [llvm-gcc][arm][patch] Lower function signatures a bit more
Sandeep Patel
deeppatel1987 at gmail.com
Thu Sep 9 23:02:55 PDT 2010
On Fri, Sep 10, 2010 at 3:23 AM, Rafael Espindola <espindola at google.com> wrote:
>> FSF GCC (DragonEgg) has an__attribute__((pcs("aapcs-vfp"))) that could
>> give you a hard float function without TARGET_HARD_FLOAT_ABI being
>> set. I haven't yet added this attribute to llvm-gcc or clang yet until
>> there's a clear need.
>
> I don't see that being used in any part of llvm-arm.cpp, for example,
>
> bool llvm_arm_should_pass_or_return_aggregate_in_regs(tree TreeType,
> CallingConv::ID &CC) {
> // Homogeneous aggregates are an AAPCS-VFP feature.
> if ((CC != CallingConv::ARM_AAPCS_VFP) ||
> !(TARGET_AAPCS_BASED && TARGET_VFP && TARGET_HARD_FLOAT_ABI))
> return false;
>
> So checking TARGET_HARD_FLOAT_ABI is probably consistent with what
> the rest of the file does right now.
Correct, as I said, I haven't ported this feature over, but you should
be aware of it.
> I don't see gcc/testsuite/gcc.target/arm/aapcs in llvm-gcc, only in
> vanilla gcc...
Correct. But if you want to test hard float, that's the only publicly
available test suite. I asked ARM and they have nothing to offer here
to help.
deep
More information about the llvm-commits
mailing list