This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH, ARM] attribute target (thumb,arm) [0/6] respin (4th)
- From: Christian Bruel <christian dot bruel at st dot com>
- To: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Ramana Radhakrishnan <Ramana dot Radhakrishnan at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>, Nicholas Clifton <nickc at redhat dot com>
- Date: Wed, 6 May 2015 16:16:09 +0200
- Subject: [PATCH, ARM] attribute target (thumb,arm) [0/6] respin (4th)
- Authentication-results: sourceware.org; auth=none
> A general note, please reply to each of the patches with a rebased
> patch as a separate email. Further more all your patches appear to
> have dos line endings so they don't seem to apply cleanly. Please
> don't have spurious headers in your patch submission - it then makes
> it hard to , please create it in a way that it is easily applied by
> someone trying it out. It looks like p4 needs a respin as I got a
> reject trying to apply the documentation patch to my tree while trying
> to apply it.
>
lets go... rebased (4th time since 2014 !), no conflicts.
so here is the attribute revisited / rebased , so
- thumb1 is now supported
- -mflip-thump option added for testing.
- inlining is allowed between modes.
This set of patches was tested on arm-none-eabi as:
no regressions with:
arm-sim/
arm-sim/-march=armv7-a
arm-sim/-mthumb
arm-sim/-mthumb/-march=armv7-a
a few artifacts, all of them analyzed, with
arm-sim/-mflip-thumb/
arm-sim/-mflip-thumb//-march=armv7-a
arm-sim/-mflip-thumb//-mthumb
arm-sim/-mflip-thumb//-mthumb/-march=armv7-a
Artifacts are analyzed, they are mostly the fault of the testsuite being
unable to mix modes in the expected results (e.g thumb[1,2] or arm tests
predicates, mix setjmp/longjump between modes...)
The support is split as followed:
[1/6] Reorganized arm_option_override to dynamically redefine the flags
depending on the attribute mode.
[2/6] Reorganized macro settings to be set/unset for each #pragma targets
[3/6] Change ARM_DECLARE_FUNCTION_NAME into a function
[4/6] Implement hooks to support attribute target
[5/6] Implement #pragma target
[6/6] Add -mflip-thumb option for testing
thanks
Christian