[LLVMdev] neon registers llvm using

shaolin shaolin.wu at qq.com
Tue Mar 11 22:50:55 PDT 2014


Hi, Tim:


    Thanks for the suggestion, I found the instruction to set q5 to zero.


Thanks & Best Regards,
Shaolin




------------------ Original ------------------
From:  "Tim Northover";<t.p.northover at gmail.com>;
Date:  Tue, Mar 11, 2014 01:55 AM
To:  "shaolin"<shaolin.wu at qq.com>; 
Cc:  "llvmdev"<llvmdev at cs.uiuc.edu>; 
Subject:  Re: [LLVMdev] neon registers llvm using



Hi Shaolin,

On 10 March 2014 13:43, shaolin <shaolin.wu at qq.com> wrote:
> For example, d10 and d11 are treated as default zero? I am using Xcode5 +
> llvm and I got a case that compiler will generate neon codes
>     " vst.8 {d10, d11}, [r1] "
> from C codes:
>     "int aMV[4];
>      ......
>      aMV[0] = aMV[1] = aMV[2] = aMV[3] = 0; "

When I compile similar code, I see:

    vmov.i32 q8, #0x0
    [...]
    vst1.32 { d16, d17 }, [r0]

Are you aware that the q0 == d1:d0 == s3:s2:s1:s0, q1 == d2:d1 ==
s7:s6:s5:s4, ...? So in my case, that vmov to q8 actually sets d16 and
d17.

If you're not seeing similar, could you post a reasonably small
self-contained example that shows your problem?

Cheers.

Tim.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140312/b6233c1b/attachment.html>


More information about the llvm-dev mailing list