Summary:
This topic is mainly meant as an info dump for developers. Interested users can test these builds with daily use,
benchmark codecs on their devices and report the results.
I have no plans on attempting to debug any issues related to the new toolchain or benchmarking further. Again, this topic is mostly meant as an info dump.
I've been using a custom GCC5 build on my Clip+ without issues for normal use. The only major regression so far is decoding APE files compressed with c3000 and lower compression.
The codec optimization patch simply changes all -O1 to -O2 for ARM. I did not benchmark other flags nor did I benchmark codecs that Rockbox doesn't provide sample files for.
libffmpegFLAC and libmad were tested at -O1, -Os, -O2 and -O3. libffmpegFLAC was changed from -O2 to -O3 along with libmad from -O1 to -O2 due to small gains.
I know little to nothing about GCC so I'm not sure if the multilibs changes need to be updated nor do I know if it's still necessary to be as aggressive with -fno-exceptions.
Builds:
https://www.mediafire.com/folder/tdio0hpa4qixv/ARMGCC5 All builds are based on
18fecd9 and include test plugins.
If your ARM device is not listed, you can post a request and I'll upload a build.
Decoder benchmarks (there's multiple files in the gists):
Clip+ (AMSv2) GCC4.4 vs GCC5:
https://gist.github.com/anonymous/5785e4ebd338aca26a8d1da0e0d7a094 Clip+ (AMSv2) GCC4.4 vs GCC5 vs GCC5 w/ optimized codecs:
https://gist.github.com/anonymous/6eb0bc382364415ec09c409b08ef4ef3Per codec optimization flag benchmarks on Clip+:
APE Tests FLAC Tests MP3 TestsPatches:
rockbox-multilibs-noexceptions.patch optimize-codecs.patchToolchain information:
Using the Arch Linux arm-none-eabi toolchain:
arm-none-eabi-newlib 2.4.0-1
arm-none-eabi-binutils 2.26-1
arm-none-eabi-gcc 5.3.0-1 w/
rockbox-multilibs-noexceptions.patch & GCC5-20160419 snapshot