<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Enabling neon on imx8m plus in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1970206#M229465</link>
    <description>&lt;P&gt;Hello, we are using the imx8m plus to do ultrasound signal processing. At first we tried openCL, but results are too slow for our application so now we are trying it with neon. The problem is that the cross-compile gcc generated with yocto don't recognize -mfloat-abi neither -mfpu flags, and when we execute commands to detect neon on linux it doesn't show up (&lt;A href="https://developer.arm.com/documentation/den0018/a/Compiling-NEON-Instructions/Detecting-presence-of-a-NEON-unit/Run-time-NEON-unit-detection?lang=en" target="_blank" rel="noopener"&gt;https://developer.arm.com/documentation/den0018/a/Compiling-NEON-Instructions/Detecting-presence-of-a-NEON-unit/Run-time-NEON-unit-detection?lang=en&lt;/A&gt;).&lt;/P&gt;&lt;P&gt;I wrote some code using neon &lt;SPAN&gt;intrinsics and I can compile using the make file below, but I see in assembly code that it isn't using neon instructions like vadd, vmul etc.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;What should I do to enable neon? &lt;SPAN class=""&gt;Should I do something on yocto?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Makefile:&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt; = frame_processing&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Diretório do sysroot e do Yocto SDK&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt; = /opt/poky/4.0.6/sysroots/cortexa53-crypto-poky-linux&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;TARGET_PATH_LIB&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;/usr/lib&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;TARGET_PATH_INCLUDE&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;/usr/include&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Diretório da toolchain Yocto&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;TOOLCHAIN_DIR&lt;/SPAN&gt;&lt;SPAN&gt; = /opt/poky/4.0.6/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Fontes C e Headers&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;C_SOURCE&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;wildcard&lt;/SPAN&gt; &lt;SPAN&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;.c)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;H_SOURCE&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;wildcard&lt;/SPAN&gt; &lt;SPAN&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;.h)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;OBJ&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;C_SOURCE:.c=.o&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Compilador correto do Yocto SDK&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;TOOLCHAIN_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;/aarch64-poky-linux-gcc&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Flags de compilação e linkagem&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt; = --sysroot=&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -Wall -Wextra -std=c11 -O3 -Ofast -I&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;TARGET_PATH_INCLUDE&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -g -mcpu=cortex-a53 -march=armv8-a+simd -std=gnu11 -ftree-vectorize -fopt-info-vec-missed&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CPU_LFLAGS&lt;/SPAN&gt;&lt;SPAN&gt; = --sysroot=&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -L&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;TARGET_PATH_LIB&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -lm&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Regra principal&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;all&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Regra para gerar o binário final&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;OBJ&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_LFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -o &lt;/SPAN&gt;&lt;SPAN&gt;$@&lt;/SPAN&gt; &lt;SPAN&gt;$^&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Compilação dos arquivos .o&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.o&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -c -o &lt;/SPAN&gt;&lt;SPAN&gt;$@&lt;/SPAN&gt; &lt;SPAN&gt;$&amp;lt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;# Regra para gerar código assembly (.s) a partir de .c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.s&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -S -o &lt;/SPAN&gt;&lt;SPAN&gt;$@&lt;/SPAN&gt; &lt;SPAN&gt;$&amp;lt;&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_LFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;# Gera os arquivos .s (assembly) para todos os arquivos .c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;assembly&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;C_SOURCE:.c=.s&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Limpeza dos arquivos compilados&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;clean&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;rm -f &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;OBJ&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; *.s&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Wed, 09 Oct 2024 17:21:35 GMT</pubDate>
    <dc:creator>matheus-nogueira</dc:creator>
    <dc:date>2024-10-09T17:21:35Z</dc:date>
    <item>
      <title>Enabling neon on imx8m plus</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1970206#M229465</link>
      <description>&lt;P&gt;Hello, we are using the imx8m plus to do ultrasound signal processing. At first we tried openCL, but results are too slow for our application so now we are trying it with neon. The problem is that the cross-compile gcc generated with yocto don't recognize -mfloat-abi neither -mfpu flags, and when we execute commands to detect neon on linux it doesn't show up (&lt;A href="https://developer.arm.com/documentation/den0018/a/Compiling-NEON-Instructions/Detecting-presence-of-a-NEON-unit/Run-time-NEON-unit-detection?lang=en" target="_blank" rel="noopener"&gt;https://developer.arm.com/documentation/den0018/a/Compiling-NEON-Instructions/Detecting-presence-of-a-NEON-unit/Run-time-NEON-unit-detection?lang=en&lt;/A&gt;).&lt;/P&gt;&lt;P&gt;I wrote some code using neon &lt;SPAN&gt;intrinsics and I can compile using the make file below, but I see in assembly code that it isn't using neon instructions like vadd, vmul etc.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;What should I do to enable neon? &lt;SPAN class=""&gt;Should I do something on yocto?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Makefile:&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt; = frame_processing&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Diretório do sysroot e do Yocto SDK&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt; = /opt/poky/4.0.6/sysroots/cortexa53-crypto-poky-linux&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;TARGET_PATH_LIB&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;/usr/lib&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;TARGET_PATH_INCLUDE&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;/usr/include&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Diretório da toolchain Yocto&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;TOOLCHAIN_DIR&lt;/SPAN&gt;&lt;SPAN&gt; = /opt/poky/4.0.6/sysroots/x86_64-pokysdk-linux/usr/bin/aarch64-poky-linux&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Fontes C e Headers&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;C_SOURCE&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;wildcard&lt;/SPAN&gt; &lt;SPAN&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;.c)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;H_SOURCE&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;wildcard&lt;/SPAN&gt; &lt;SPAN&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;.h)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;OBJ&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;C_SOURCE:.c=.o&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Compilador correto do Yocto SDK&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;TOOLCHAIN_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;/aarch64-poky-linux-gcc&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Flags de compilação e linkagem&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt; = --sysroot=&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -Wall -Wextra -std=c11 -O3 -Ofast -I&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;TARGET_PATH_INCLUDE&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -g -mcpu=cortex-a53 -march=armv8-a+simd -std=gnu11 -ftree-vectorize -fopt-info-vec-missed&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CPU_LFLAGS&lt;/SPAN&gt;&lt;SPAN&gt; = --sysroot=&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;ROOTFS_DIR&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -L&lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;TARGET_PATH_LIB&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -lm&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Regra principal&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;all&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Regra para gerar o binário final&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;OBJ&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_LFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -o &lt;/SPAN&gt;&lt;SPAN&gt;$@&lt;/SPAN&gt; &lt;SPAN&gt;$^&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Compilação dos arquivos .o&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.o&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -c -o &lt;/SPAN&gt;&lt;SPAN&gt;$@&lt;/SPAN&gt; &lt;SPAN&gt;$&amp;lt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;# Regra para gerar código assembly (.s) a partir de .c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.s&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;%&lt;/SPAN&gt;&lt;SPAN&gt;.c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CC&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_CFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; -S -o &lt;/SPAN&gt;&lt;SPAN&gt;$@&lt;/SPAN&gt; &lt;SPAN&gt;$&amp;lt;&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;CPU_LFLAGS&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;# Gera os arquivos .s (assembly) para todos os arquivos .c&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;assembly&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;C_SOURCE:.c=.s&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# Limpeza dos arquivos compilados&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;clean&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;rm -f &lt;/SPAN&gt;&lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;OBJ&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt; &lt;SPAN&gt;$(&lt;/SPAN&gt;&lt;SPAN&gt;PROJ_NAME&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt; *.s&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 09 Oct 2024 17:21:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1970206#M229465</guid>
      <dc:creator>matheus-nogueira</dc:creator>
      <dc:date>2024-10-09T17:21:35Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling neon on imx8m plus</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1971416#M229511</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;You have to upgrade your gcc or toolchain, current yocto BSP has neon and fpu support on cortex A53, also make sure neon its enable in kernel configuration file.&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;</description>
      <pubDate>Thu, 10 Oct 2024 13:43:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1971416#M229511</guid>
      <dc:creator>Bio_TICFSL</dc:creator>
      <dc:date>2024-10-10T13:43:00Z</dc:date>
    </item>
    <item>
      <title>Re: Enabling neon on imx8m plus</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1973342#M229640</link>
      <description>&lt;P&gt;Thanks for responding. We tried modifying our yocto configuration file, generated a new cross-compile toolchain and compiled a simple .c file using makefile. But as we understand it, we have not yet compiled vector instructions nor have we seen neon listed when using cat /proc/cpuinfo. Could you tell me what and how we should modify our files? I attached the files as .txt.&lt;/P&gt;</description>
      <pubDate>Mon, 14 Oct 2024 12:26:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Enabling-neon-on-imx8m-plus/m-p/1973342#M229640</guid>
      <dc:creator>matheus-nogueira</dc:creator>
      <dc:date>2024-10-14T12:26:14Z</dc:date>
    </item>
  </channel>
</rss>

