Practical comparison of ARM compilers
1–10 of 17 posts
Re: Practical comparison of ARM compilers
#2(Building bare metal code with a lot of DSP and MATMUL)
Re: Practical comparison of ARM compilers
#3Re: Practical comparison of ARM compilers
#4Regarding code size: the common pitfall is -Os for GCC and -Oz for Clang based compilers to optimise for minimum code size.
Re: Practical comparison of ARM compilers
#5We're also very successfully using CMake as our build system, as opposed to Make itself. It lets you organise your build system & support different configurations & dependencies in a much easier way than e.g. Makefiles & Git submodules, which we've tried in the past. When combined with the Ninja generator we're also seeing ~20% faster compilation times.
Re: Practical comparison of ARM compilers
#6And then we were always using IAR in a way that disabled all and every optimization; if enabling them did not lead to a compiler imploding, the compiler would produce invalid machine code even for trivial examples. This defeated any possible code size benefits that IAR may have had over GCC/Clang.
To top if off, I had an impression that reports of that nature weren’t really considered critical.
Re: Practical comparison of ARM compilers
#7In my experience arm clang compiler often times produced code that is ~10-20 percent faster (hence less energy consuming) than gcc with the same optimisation levels (Building bare metal code with a lot of DSP and MATMUL)
Re: Practical comparison of ARM compilers
#8Re: Practical comparison of ARM compilers
#9For Armv8.M and MVE, I expect that Clang and Arm Compiler for Embedded, which is Clang/LLVM based, generates much better code than GCC or IAR. Regarding code size: the common pitfall is -Os for GCC and -Oz for Clang based compilers to optimise for minimum code size.