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.
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/6eb0bc382364415ec09c409b08ef4ef3
Per codec optimization flag benchmarks on Clip+: APE Tests FLAC Tests MP3 Tests
Patches: rockbox-multilibs-noexceptions.patch optimize-codecs.patch
Using the Arch Linux arm-none-eabi toolchain:
arm-none-eabi-gcc 5.3.0-1 w/ rockbox-multilibs-noexceptions.patch
& GCC5-20160419 snapshot