[llvm-dev] XMMs unused

Dangeti Tharun kumar via llvm-dev llvm-dev at lists.llvm.org
Thu Oct 25 01:46:30 PDT 2018


Hi,

It can be reproduced with the following command:

clang -S -I spec17/benchspec/CPU/538.imagick_r/src/ -O3 -mavx
spec17/benchspec/CPU/538.imagick_r/src/magick/feature.c
-DMAGICKCORE_HDRI_ENABLE

I don't see any register above *xmm9* been used in any function.


On Thu, Oct 25, 2018 at 10:44 AM Craig Topper <craig.topper at gmail.com>
wrote:

> Can you provide an example?
>
> ~Craig
>
>
> On Wed, Oct 24, 2018 at 9:52 PM Dangeti Tharun kumar via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hi,
>>
>> I see that, in Greedy register allocation not all the XMM registers are
>> used(even there is a need) if there is a function call crossing the live
>> range.
>> There are spills which can be avoided just by using them.
>>
>> The reason I see is the CCC declares XMMs are not callee saved. This
>> means they are caller saved, correct me if I am wrong.
>> Is the greedy RA intentionally not using XMMs in order to avoid saving
>> and restoring regs at call site?
>>
>>
>> --
>> Regards,
>> DTharun
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>

-- 
Regards,
DTharun
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20181025/a5e5ac1c/attachment.html>


More information about the llvm-dev mailing list