[OE-core] [BUG REPORT] failed to build valgrind on qemuarm

Robert Yang liezhi.yang at windriver.com
Tue Jan 19 08:05:58 UTC 2016


Add Andre in the loop.

// Robert
On 01/19/2016 03:50 PM, Rongqing Li wrote:
>
>
> On 2016年01月19日 15:47, Robert Yang wrote:
>>
>> On 01/19/2016 03:27 PM, Rongqing Li wrote:
>>> 1. on qemuarm:
>>
>> There is a patch for this:
>> [OE-core] [PATCH] valgrind: make it explicit that valgrind supports
>> armv7a and above
>>
>> // Robert
>
> which armv7 BSP is tested?
>
> thanks
>
> -Roy
>
>
>>
>>>
>>> | 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
>>>
>>>
>>> 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
>>
>



More information about the Openembedded-core mailing list