[cfe-commits] [PATCH] fix failling regression tests due to calling convention markers on recent ARM ubuntu platforms
david.tweed at arm.com
Fri Oct 19 01:26:59 PDT 2012
The whole configuration<->ABI stuff is very, very confusing (at least to a "bear of little brain" like me :-) ), which is partly why it's taken so long to figure out this patch.
| Attach is my system parameters, and here is my current configuration,
|env CC="ccache /usr/bin/gcc" CXX="ccache /usr/bin/g++" ../llvm/configure -C --disable-bindings \
|--build=armv7l-unknown-linux-gnueabi --host=armv7l-unknown-linux-gnueabi --target=armv7l-unknown-linux-gnueabi \
|--with-cpu=cortex-a9 --with-fpu=neon --with-abi=aapcs --with-float=hard --enable-assertions \
On a recent ubuntu the system gcc is configured as armv7l-unknown-linux-gnueabihf (note the "hf" at the end). I believe that if you use that then you no longer need the "--with-c-include-dirs=/usr/include/:/usr/include/arm-linux-gnueabihf" or "--with-abi=aapcs" bits BUT that configuration then exposes the calling convention issue that this patch should solve. It would be interesting to check that if you apply the patch to this configuration your results don't change (as they shouldn't if I've checked correctly to only modify the gnueabihf case): please try it and let us know what the difference is between with and without the patch. However, my opinion is that the "best" configuration for a pandaboard running a current ubuntu is
./configure -C --build= armv7l-unknown-linux-gnueabihf --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --with-cpu=cortex-a9 --with-float=hard --with-abi=aapcs-vfp --with-fpu=neon --enable-targets=arm
(add optimized and assertions as desired). It would also be interesting to verify also that this configuration I'm using works ok for others.
Many thanks for all your hard work doing testing for LLVM/Clang,
More information about the cfe-commits