[ACTIVITY] Week 02
== Progress == o LLVM * TCWG-1324 (failures of Clang::atomic_ops.c and frem.ll on armv8l host): - Fix committed in mainline as r322098 * Bugzilla 33011 (MVN instruction "Upredictable" bit patterns incorrect): - Fix submitted upstream * Buildbots babysitting. * LLVM scripts reviews o Misc * Various meetings and discussions. ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: About "__sync_fetch_and_add_4"//Re: [update]: Does linaro toolchain support c++11 ??
On 14 January 2018 at 02:50, zhangwentao (M) wrote: > Hi Christophe, > > Thanks for your reply. > > Actually I use ' -march=armv8-a ', and 'arm-eabi-arm' complier, after > adding this flag, the test case compile passed. (THANKS again) > > But, now I am using some third party libs, and added ' -march=armv8-a ' flag > whiling compiling and linking, But the compiler say this error: Are you using pre-built third party libs, or do you compile them yourself? > > undefined reference to `__sync_fetch_and_add_4' > I think the compiler > should supply all the atomic family functions with -march=xxx flags. > > Does the compiler supply this functions? > I think it should, but if you use pre-compiled libs, maybe they were not compiled with all the flags you need. Christophe > > Best Regard. > > > -邮件原件- > 发件人: Christophe Lyon [mailto:christophe.l...@linaro.org] > 发送时间: 2018年1月10日 18:38 > 收件人: zhangwentao (M) > 抄送: linaro-toolchain@lists.linaro.org; Lizefan; leijitang; Huangqiang (H) > 主题: Re: [update]: Does linaro toolchain support c++11 ?? > > On 10 January 2018 at 03:40, zhangwentao (M) > wrote: >> Hi, all >> >> I have updated my test case: >> >> Compile passed but failed while linking. >> >> wentao@ubuntu:~/test/lamda$ cat a.cc >> #include >> using namespace std; >> >> int main() >> { >> auto f = [=]() { >> cout <<"Hello world"<> }; >> f(); >> return 0; >> } >> >> >> wentao@ubuntu:~/test/lamda$ arm-eabi-g++ --std=gnu++11 a.cc -o arm32 >> /home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin/../lib/gcc/arm-eabi/6.3.1/../../../../arm-eabi/lib/libstdc++.a(locale.o): >> In function `get_locale_cache_mutex': >> /home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2017.05/libstdc++-v3/src/c++98/locale.cc:36: >> undefined reference to `__sync_synchronize' >> /home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin/../lib/gcc/arm-eabi/6.3.1/../../../../arm-eabi/lib/libstdc++.a(future.o): >> In function `__future_category_instance': >> /home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2017.05/libstdc++-v3/src/c++11/future.cc:64: >> undefined reference to `__sync_synchronize' >> /home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin/../lib/gcc/arm-eabi/6.3.1/../../../../arm-eabi/lib/libstdc++.a(locale_init.o): >> In function `(anonymous namespace)::get_locale_mutex()': >> /home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2017.05/libstdc++-v3/src/c++98/locale_init.cc:66: >> undefined reference to `__sync_synchronize' >> collect2: error: ld returned 1 exit status wentao@ubuntu:~/test/lamda$ >> > > Hi, > > This error happens because the arm-eabi compiler defaults to an old version > of the architecture (v4 or v5t). Adding -mcpu=cortex-a9 for instance should > avoid the problem because the compiler will be able to generate > synchronization primitives inline. > > Christophe > >> 发件人: zhangwentao (M) >> 发送时间: 2018年1月10日 10:22 >> 收件人: 'linaro-toolchain@lists.linaro.org' >> 抄送: Huangqiang (H); Lizefan; leijitang >> 主题: Does linaro toolchain support c++11 ?? >> >> Hi all, >> >> I wonder if my compiler supports C++11? If not, where could I found the >> compiler supports c++11 (both 32bit and 64bit arm). >> >> THANKS a lot~~~ >> >> My compiler information is as below: >> >> wentao@ubuntu:~/test/lamda$ arm-eabi-g++ -v Using built-in specs. >> COLLECT_GCC=arm-eabi-g++ >> COLLECT_LTO_WRAPPER=/home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05- >> x86_64_arm-eabi/bin/../libexec/gcc/arm-eabi/6.3.1/lto-wrapper >> Target: arm-eabi >> Configured with: >> '/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/ >> label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2 >> 017.05/configure' SHELL=/bin/bash >> --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_a >> rch/amd64/label/tcwg-x86_64-build/target/arm-eabi/_build/builds/destdi >> r/x86_64-unknown-linux-gnu >> --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_ >> arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/_build/builds/destd >> ir/x86_64-unknown-linux-gnu >> --with-gmp=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_a >> rch/amd64/label/tcwg-x86_64-build/target/arm-eabi/_build/builds/destdi >> r/x86_64-unknown-linux-gnu --with-gnu-as --with-gnu-ld >> --disable-libmudflap --enable-lto --enable-shared >> --without-included-gettext --enable-nls --disable-sjlj-exceptions >> --enable-gnu-unique-object --enable-linker-build-id >> --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu >> --enable-libstdcxx-debug --enable-long-long --with-cloog=no >> --with-ppl=no --with-isl=no --enable-multilib >> --with-multilib-list=aprofile
[ACTIVITY] 08 - - 12 Jan 2018
# Progress # * GDB 8.1 release. 8.1 RC was created. 8.1 will be released soon, I think. * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [3/5] Get a working patch, but need to upstream my refactoring first. Other two people from upstream are also changing the same file, need to cooperate. * Upstream patches review, [2/5] ** Review changes to dwarf2read.c, ** Review one ARMv8 OpenOCD patch, # Plan # * PR 22531, * Resume my pending patches on removing MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Weekly report for week 1 & 2
Hi everyone, Note 1: Working on Linaro 50% time. Note 2: had afternoons off for the first 2 weeks of January == Progress == * Week 1 (2/1 -> 5/1) working for Arm * Fix poor screen resolution issue * Onboarding process: + read all docs, setup accounts (gmail, octopus, ...) * PR35157 / TCWG-1308 (Crash in ARM backend for VST1d64TPseudoWB_fixed instruction): + reproduce in llc under gdb, start investigating == Plan == * PR35157 / TCWG-1308 (Crash in ARM backend for VST1d64TPseudoWB_fixed instruction) ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
res: About "__sync_fetch_and_add_4"//Re: [update]: Does linaro toolchain support c++11 ??
Hi Christophe I compile my APP with Android NDK (c++ 11) and linking libs from NDK packet. I don't know what's does it mean by "pre-built" third party build. And more: I found that our compiler provide __sync_val_compare_and_swap . should I use " __sync_val_compare_and_swap" to implement `__sync_fetch_and_add_4` Or __sync_fetch_and_add ? Best regard. -邮件原件- 发件人: Christophe Lyon [mailto:christophe.l...@linaro.org] 发送时间: 2018年1月15日 17:28 收件人: zhangwentao (M) 抄送: linaro-toolchain@lists.linaro.org; Lizefan; leijitang; Huangqiang (H) 主题: Re: About "__sync_fetch_and_add_4"//Re: [update]: Does linaro toolchain support c++11 ?? On 14 January 2018 at 02:50, zhangwentao (M) wrote: > Hi Christophe, > > Thanks for your reply. > > Actually I use ' -march=armv8-a ', and 'arm-eabi-arm' complier, > after adding this flag, the test case compile passed. (THANKS again) > > But, now I am using some third party libs, and added ' -march=armv8-a ' flag > whiling compiling and linking, But the compiler say this error: Are you using pre-built third party libs, or do you compile them yourself? > > undefined reference to `__sync_fetch_and_add_4' > I think the compiler > should supply all the atomic family functions with -march=xxx flags. > > Does the compiler supply this functions? > I think it should, but if you use pre-compiled libs, maybe they were not compiled with all the flags you need. Christophe > > Best Regard. > > > -邮件原件- > 发件人: Christophe Lyon [mailto:christophe.l...@linaro.org] > 发送时间: 2018年1月10日 18:38 > 收件人: zhangwentao (M) > 抄送: linaro-toolchain@lists.linaro.org; Lizefan; leijitang; Huangqiang > (H) > 主题: Re: [update]: Does linaro toolchain support c++11 ?? > > On 10 January 2018 at 03:40, zhangwentao (M) > wrote: >> Hi, all >> >> I have updated my test case: >> >> Compile passed but failed while linking. >> >> wentao@ubuntu:~/test/lamda$ cat a.cc >> #include >> using namespace std; >> >> int main() >> { >> auto f = [=]() { >> cout <<"Hello world"<> }; >> f(); >> return 0; >> } >> >> >> wentao@ubuntu:~/test/lamda$ arm-eabi-g++ --std=gnu++11 a.cc -o arm32 >> /home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin/../lib/gcc/arm-eabi/6.3.1/../../../../arm-eabi/lib/libstdc++.a(locale.o): >> In function `get_locale_cache_mutex': >> /home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2017.05/libstdc++-v3/src/c++98/locale.cc:36: >> undefined reference to `__sync_synchronize' >> /home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin/../lib/gcc/arm-eabi/6.3.1/../../../../arm-eabi/lib/libstdc++.a(future.o): >> In function `__future_category_instance': >> /home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2017.05/libstdc++-v3/src/c++11/future.cc:64: >> undefined reference to `__sync_synchronize' >> /home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05-x86_64_arm-eabi/bin/../lib/gcc/arm-eabi/6.3.1/../../../../arm-eabi/lib/libstdc++.a(locale_init.o): >> In function `(anonymous namespace)::get_locale_mutex()': >> /home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64/label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3-2017.05/libstdc++-v3/src/c++98/locale_init.cc:66: >> undefined reference to `__sync_synchronize' >> collect2: error: ld returned 1 exit status >> wentao@ubuntu:~/test/lamda$ >> > > Hi, > > This error happens because the arm-eabi compiler defaults to an old version > of the architecture (v4 or v5t). Adding -mcpu=cortex-a9 for instance should > avoid the problem because the compiler will be able to generate > synchronization primitives inline. > > Christophe > >> 发件人: zhangwentao (M) >> 发送时间: 2018年1月10日 10:22 >> 收件人: 'linaro-toolchain@lists.linaro.org' >> 抄送: Huangqiang (H); Lizefan; leijitang >> 主题: Does linaro toolchain support c++11 ?? >> >> Hi all, >> >> I wonder if my compiler supports C++11? If not, where could I found the >> compiler supports c++11 (both 32bit and 64bit arm). >> >> THANKS a lot~~~ >> >> My compiler information is as below: >> >> wentao@ubuntu:~/test/lamda$ arm-eabi-g++ -v Using built-in specs. >> COLLECT_GCC=arm-eabi-g++ >> COLLECT_LTO_WRAPPER=/home/wentao/TeeOS/tools/gcc-linaro-6.3.1-2017.05 >> - x86_64_arm-eabi/bin/../libexec/gcc/arm-eabi/6.3.1/lto-wrapper >> Target: arm-eabi >> Configured with: >> '/home/tcwg-buildslave/workspace/tcwg-make-release/builder_arch/amd64 >> / >> label/tcwg-x86_64-build/target/arm-eabi/snapshots/gcc.git~linaro-6.3- >> 2 >> 017.05/configure' SHELL=/bin/bash >> --with-mpc=/home/tcwg-buildslave/workspace/tcwg-make-release/builder_ >> a >> rch/amd64/label/tcwg-x86_64-build/target/arm-eabi/_build/builds/destd >> i >> r/x86_64-unknown-linux-gnu >> --with-mpfr=/home/tcwg-buildslave/workspace/tcwg-make-release/builder >> _ >> arch/a