This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Arm Neon Intrinsic Issue

Hi All,

I am trying to use intrinsics for NEON in my a8 core of DM8148.

I searched net and found that I need to include "arm_neon.h" in my C file.

But this file is not present in Windows CCS installation folder.

I am using ccs v5.2

Regards,

Anup Singh Lamba

  • Are you using the TI ARM compiler?  Or some other ARM compiler?  The TI ARM compiler does not include arm_neon.h.  This wiki article might be useful.

    Thanks and regards,

    -George

  • Hi George,

    First of all thanks for your reply.

    Yes I am using TI arm compiler. The page you have specified solves some part of solution.

    But as you said there is no arm_neon.h in TI ARM compiler  So my question is if I want to use the NEON intrinsics in my .c file.

    How can i do that ?

    Regards,

    Anup Singh Lamba

  • There are no NEON intrinsics.  The compiler automatically vectorizes your code, then issues NEON instructions to perform the resulting operations.

    This forum thread is related, and might be helpful.

    Thanks and regards,

    -George

  • Hi George,

    I understand that the compiler will generate the vectorised code for me once the flags for NEON are enabled.

    But I want to write some instructions in my .C file manually instead of taking help from the compiler.Is it possible in windows CCS v5.2.

    My understanding is that if as arm_neon.h file is present in LINUX environment for CCS.So they must have the ability to use these instructions in their .C file too once they include that .h file in their code.

    If my understanding is correct then in windows CCS v5.2 too there should be similar kind of support or do we need to suffice with what compiler does for us.

     

    Thanks and Regards,

    Anup Singh Lamba 

  • Anup Lamba said:
    But I want to write some instructions in my .C file manually instead of taking help from the compiler.Is it possible in windows CCS v5.2.

    Not with the TI ARM compiler.

    Anup Lamba said:
    My understanding is that if as arm_neon.h file is present in LINUX environment

    There is a arm_neon.h file that is supplied with the Linaro gcc ARM compiler.  This compiler is included with CCS 5.4.  Is this what you are talking about?

    Thanks and regards,

    -George

  • Hi George,

    Yes I am talking about the GCC ARM compiler :)

    So you mean to say that in CCS v 5.4 GCC compiler support is provided in both windows as well as Linux environment by default and does it also mean I can write some instructions in my .c file specific to neon ?

    If yes ,then is there any possibility I can integrate this compiler in my CCS v5.2 and use it ?

    Thanks and Regards,

    Anup Singh Lamba

  • Anup Lamba said:
    Yes I am talking about the GCC ARM compiler :)

    Well, that changes everything.  A few days ago you said you were using the TI ARM compiler.  These two compilers have very different solutions WRT how NEON instructions are supported.

    Anup Lamba said:
    So you mean to say that in CCS v 5.4 GCC compiler support is provided in both windows as well as Linux environment by default

    I presume you are referring the host system OS, and not the OS running on the ARM device.  In that case, the answer is yes.

    Anup Lamba said:
    does it also mean I can write some instructions in my .c file specific to neon ?

    Only if you use the Linaro gcc ARM compiler.

    Anup Lamba said:
    is there any possibility I can integrate this compiler in my CCS v5.2 and use it ?

    I'm pretty sure CCS 5.4 is required.

    Thanks and regards,

    -George

  • Hi George,

     Thanks for clearing the doubts.

    Thanks and Regards,

    Anup Singh Lamba