> On Jan 18, 2016, at 11:27 PM, Rongqing Li <[email protected]> wrote: > > 1. on qemuarm: > > | arm-poky-linux-gnueabi-gcc -march=armv5e -marm > --sysroot=/buildarea1/lirq/Yocto/poky/arm/tmp/sysroots/qemuarm > -DHAVE_CONFIG_H -I. -I../../valgrind-3.11.0/memcheck -I.. > -I../../valgrind-3.11.0 -I../../valgrind-3.11.0/include > -I../../valgrind-3.11.0/VEX/pub -I../VEX/pub -DVGA_arm=1 -DVGO_linux=1 > -DVGP_arm_linux=1 -DVGPV_arm_linux_vanilla=1 -O2 -g -std=gnu99 -Wall > -Wmissing-prototypes -Wshadow -Wpointer-arith -Wstrict-prototypes > -Wmissing-declarations -Wcast-qual -Wwrite-strings -Wempty-body -Wformat > -Wformat-security -Wignored-qualifiers -Wmissing-parameter-type > -Wold-style-declaration -fno-stack-protector -fno-strict-aliasing > -fno-builtin -marm -mcpu=cortex-a8 -O -g -fno-omit-frame-pointer > -fno-strict-aliasing -fpic -fno-builtin -fno-ipa-icf -O2 -O2 -pipe -g > -feliminate-unused-debug-types -c -o > vgpreload_memcheck_arm_linux_so-mc_replace_strmem.o `test -f > 'mc_replace_strmem.c' || echo > '../../valgrind-3.11.0/memcheck/'`mc_replace_strmem.c > | for f in ; do \ > | if [ ! -e $f.dSYM -o $f -nt $f.dSYM ] ; then \ > | echo "dsymutil $f"; \ > | dsymutil $f; \ > | fi; \ > | done > | ../../valgrind-3.11.0/memcheck/mc_malloc_wrappers.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | > | ^ > | mkdir -p ../.in_place; \ > | for f in ; do \ > | rm -f ../.in_place/$f.dSYM; \ > | ln -f -s ../memcheck/$f.dSYM ../.in_place; \ > | done > | ../../valgrind-3.11.0/memcheck/mc_leakcheck.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | > | ^ > | ../../valgrind-3.11.0/memcheck/mc_replace_strmem.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | > | ^ > | ../../valgrind-3.11.0/memcheck/mc_errors.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | > | ^ > | ../../valgrind-3.11.0/memcheck/mc_translate.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | > | ^ > | ../../valgrind-3.11.0/memcheck/mc_machine.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | > | ^ > | ../../valgrind-3.11.0/memcheck/mc_main.c:1:0: warning: switch > -mcpu=cortex-a8 conflicts with -march=armv5e switch > | /* -*- mode: C; c-basic-offset: 3; -*- */ > | ^ > | {standard input}: Assembler messages: > | {standard input}:25: Error: selected processor does not support ARM mode > `movw r3,#:lower16:primary_map' > | {standard input}:28: Error: selected processor does not support ARM mode > `movt r3,#:upper16:primary_map' > | {standard input}:30: Error: selected processor does not support ARM mode > `uxth r1,r0' > | {standard input}:31: Error: selected processor does not support ARM mode > `movw r3,#0xAAAA' > | {standard input}:40: Error: selected processor does not support ARM mode > `movw r3,#0x5555' > | {standard input}:61: Error: selected processor does not support ARM mode > `movw r3,#:lower16:primary_map' > | {standard input}:64: Error: selected processor does not support ARM mode > `movt r3,#:upper16:primary_map' > | {standard input}:66: Error: selected processor does not support ARM mode > `uxth r1,r0' > | {standard input}:94: Error: selected processor does not support ARM mode > `movw r3,#:lower16:primary_map' > | {standard input}:95: Error: selected processor does not support ARM mode > `uxth r1,r0' > | {standard input}:96: Error: selected processor does not support ARM mode > `movt r3,#:upper16:primary_map' > | {standard input}:135: Error: selected processor does not support ARM mode > `movw r3,#:lower16:primary_map' > | {standard input}:136: Error: selected processor does not support ARM mode > `uxth r1,r0' > | {standard input}:137: Error: selected processor does not support ARM mode > `movt r3,#:upper16:primary_map' > > > > 2: on qemuarma9 > > > | arm-wrs-linux-gnueabi-gcc -march=armv7-a -mfloat-abi=softfp -marm > -mthumb-interwork > --sysroot=/work/wr/buildarea/arm/bitbake_build/tmp/sysroots/qemuarma9 > -DHAVE_CONFIG_H -I. > -I/work/wr/buildarea/arm/bitbake_build/tmp/work/armv7a-vfp-wrs-linux-gnueabi/valgrind/3.11.0-r0/valgrind-3.11.0/memcheck/tests > -I../.. > -I/work/wr/buildarea/arm/bitbake_build/tmp/work/armv7a-vfp-wrs-linux-gnueabi/valgrind/3.11.0-r0/valgrind-3.11.0 > > -I/work/wr/buildarea/arm/bitbake_build/tmp/work/armv7a-vfp-wrs-linux-gnueabi/valgrind/3.11.0-r0/valgrind-3.11.0/include > > -I/work/wr/buildarea/arm/bitbake_build/tmp/work/armv7a-vfp-wrs-linux-gnueabi/valgrind/3.11.0-r0/valgrind-3.11.0/coregrind > -I../../include > -I/work/wr/buildarea/arm/bitbake_build/tmp/work/armv7a-vfp-wrs-linux-gnueabi/valgrind/3.11.0-r0/valgrind-3.11.0/VEX/pub > -I../../VEX/pub -DVGA_arm=1 -DVGO_linux=1 -DVGP_arm_linux=1 > -DVGPV_arm_linux_vanilla=1 -Winline -Wall -Wshadow -Wno-long-long -g > -fno-stack-protector -O2 -pipe -g -fno-omit-frame-pointer > -fvisibility=default -O0 -c -o sh-mem-random.o > /work/wr/buildarea/arm/bitbake_build/tmp/work/armv7a-vfp-wrs-linux-gnueabi/valgrind/3.11.0-r0/valgrind-3.11.0/memcheck/tests/sh-mem-random.c > | {standard input}: Assembler messages: > | {standard input}:1107: Error: selected processor does not support ARM mode > `vld1.64 {d7},[r3]' > | {standard input}:1107: Error: selected processor does not support ARM mode > `vst1.64 {d7},[r2]' > | Makefile:2467: recipe for target 'sh-mem-random.o’ failed
So you disable neon but do not choose a particular implementation which allows
so. e.g. you should have -mtune=cortex-a9 which allows neon to be optional
but thats probably just the semantic thing. Below code should check for
__ARM_NEON__ internal define being set as well before resorting to use neon
instructions.
>
>
> and the codes are below:
>
> 194 #elif defined(__linux__) && defined(__arm__) && !defined(__aarch64__)
> 195 /* On arm32, many compilers generate a 64-bit float move
> 196 using two 32 bit integer registers, which completely
> 197 defeats this test. Hence force a 64-bit NEON load and
> 198 store. I guess this will break the build on non-NEON
> 199 capable targets. */
> 200 __asm__ __volatile__ (
> 201 "vld1.64 {d7},[%0] ; vst1.64 {d7},[%1] "
> 202 : : "r"(arr+src), "r"(arr+dst) : "d7","memory"
> 203 );
> 204 #else
>
>
> -Roy
> --
> _______________________________________________
> Openembedded-core mailing list
> [email protected]
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
signature.asc
Description: Message signed with OpenPGP using GPGMail
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
