On Fri, Mar 9, 2012 at 5:51 AM, William Mills <wmi...@ti.com> wrote: > All, > > I need to supply a Linaro toolchain "aligned" (same source code) bare-metal > compiler to a group doing benchmarking on A15. > > First off my assumption is that we will write our own boot and semi hosting > code. (semi-hosting for TI emulators/simulators is different than ARM RDI > semi-hosting.) > > I was planning on looking at the two toolchains here[1] and here [2]: > [1] https://launchpad.net/linaro-toolchain-binaries > [2] https://launchpad.net/gcc-arm-embedded > > I was then going to build a hybrid that was newlib based but appropriate for > armv7-a (instead of cortext-m3) and maybe even -mtune'ed for A15. > > However looking at the gcc-arm-embedded release more[3] I see that it > supports ARMv7-R. It supports both thumb and non-thumb modes, both softfp > and hardfp ABIs. > > What would I really gain by building my own? For app code the user should > be able to add -mtune=cortex-a15 and still be compatible with the pre-built > R4/R5 libraries. The only performance difference should be in the library > code and that should be only pipeline tuning if I understand the difference > between armv7-a and armv7-r correctly. > > Am I missing something? Should I build my hybrid anyway? > > [1] https://launchpadlibrarian.net/88152755/readme.txt > > [BTW: has the below project been obsoleted by the gcc-arm-embedded one? > Perhaps gcc-arm-embedded should be referenced in the description of the > page below. > https://launchpad.net/linaro-toolchain-unsupported ]
Hi William. I recommend using the exact same tools we use for building the binary toolchains but reconfiguring for a baremetal build. That way you can get the Cortex-A15 improvements that we've been doing in a simple to make binary toolchain. I wrote some brief instructions on this yesterday at: https://wiki.linaro.org/WorkingGroups/ToolChain/BinaryBuild Also see the building from source section in the README: https://launchpadlibrarian.net/93804205/README.txt The extra steps are to tune for the Cortex-A15 by default and use a baremetal instead of prebuilt sysroot. gcc-arm-embedded is from our friends at ARM's Cortex-R&M group. We share the same requirements and build tools but have a different focus - they're a long term supported build of FSF 4.6 for the Cortex-R&M while we're the latest performance on Cortex-A. The linaro-toolchain-unsupported builds are the Linaro toolchain in a baremetal Cortex-M configuration. I've been doing these on my own time as I have a personal STM32 project I'm working on. Hope that helps, -- Michael _______________________________________________ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-toolchain