Build options used for building newlib and so in DAVE (tracing memcpy performance)

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User14619
Level 1
Level 1
Hi, we are tracing some performance issues in project for XMC4800 developed in DAVE (4.3.2). We would like to trace the problem down to the libc sources level. The "newlib" project sources, to be exact, part of GNU Tools for ARM Embedded Processors 4.9 - Q4 2014 package.

The sources are available, but that's not all - there are also build options used to build library binaries distributed with DAVE which significantly defines the behavior. For example, if __OPTIMIZE_SIZE__ was defined during build or not. Is this documented somewhere?

To be concrete, we are tracing poor memcpy() performance, which seems to to copy byte-by-byte even in 32bit aligned case. Trivial implementation with for cycle and int-by-int copy is ~ 4 times faster.
0 Likes
1 Reply
jferreira
Employee
Employee
10 sign-ins 5 sign-ins First like received
Hi,

We use the vanilla compiler that can be downloaded at https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads
As you already point out you can download the sources and compile it yourself. The documentation is in the source package and also the build scripts.

Regards,
Jesus
0 Likes