* [PATCH, LRA, AARCH64] Switching LRA on for AArch64
@ 2013-09-24 9:32 Yvan Roux
2013-09-25 19:18 ` Yvan Roux
2013-09-26 9:39 ` Richard Earnshaw
0 siblings, 2 replies; 3+ messages in thread
From: Yvan Roux @ 2013-09-24 9:32 UTC (permalink / raw)
To: gcc-patches, Vladimir Makarov, Marcus Shawcroft, Richard Earnshaw
Cc: Patch Tracking
[-- Attachment #1: Type: text/plain, Size: 517 bytes --]
Hi,
The following patch switch LRA on for AArch64. The patch introduces
an undocumented option -mlra to use LRA instead of reload, for a
testing purpose. Please notice that this patch is dependent on the
one submitted in the thread below:
http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00805.html
Thanks,
Yvan
2013-09-24 Yvan Roux <yvan.roux@linaro.org>
* config/aarch64/aarch64.opt (mlra): New option.
* config/aarch64/aarch64.c (aarch64_lra_p): New function.
(TARGET_LRA_P): Define.
[-- Attachment #2: aarch64-lra.diff --]
[-- Type: application/octet-stream, Size: 1804 bytes --]
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 6f4fe36..1558183 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -109,6 +109,7 @@ enum aarch64_code_model aarch64_cmodel;
#define TARGET_HAVE_TLS 1
#endif
+static bool aarch64_lra_p (void);
static bool aarch64_composite_type_p (const_tree, enum machine_mode);
static bool aarch64_vfp_is_call_or_return_candidate (enum machine_mode,
const_tree,
@@ -6092,6 +6093,13 @@ aapcs_vfp_sub_candidate (const_tree type, enum machine_mode *modep)
return -1;
}
+/* Return true if we use LRA instead of reload pass. */
+static bool
+aarch64_lra_p (void)
+{
+ return aarch64_lra_flag;
+}
+
/* Return TRUE if the type, as described by TYPE and MODE, is a composite
type as described in AAPCS64 \S 4.3. This includes aggregate, union and
array types. The C99 floating-point complex types are also considered
@@ -8268,6 +8276,9 @@ aarch64_vectorize_vec_perm_const_ok (enum machine_mode vmode,
#undef TARGET_LIBGCC_CMP_RETURN_MODE
#define TARGET_LIBGCC_CMP_RETURN_MODE aarch64_libgcc_cmp_return_mode
+#undef TARGET_LRA_P
+#define TARGET_LRA_P aarch64_lra_p
+
#undef TARGET_MANGLE_TYPE
#define TARGET_MANGLE_TYPE aarch64_mangle_type
diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
index 8ff6ca1..0c31312 100644
--- a/gcc/config/aarch64/aarch64.opt
+++ b/gcc/config/aarch64/aarch64.opt
@@ -103,6 +103,10 @@ mabi=
Target RejectNegative Joined Enum(aarch64_abi) Var(aarch64_abi) Init(AARCH64_ABI_DEFAULT)
-mabi=ABI Generate code that conforms to the specified ABI
+mlra
+Target Report Var(aarch64_lra_flag) Init(1) Save
+Use LRA instead of reload
+
Enum
Name(aarch64_abi) Type(int)
Known AArch64 ABIs (for use with the -mabi= option):
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH, LRA, AARCH64] Switching LRA on for AArch64
2013-09-24 9:32 [PATCH, LRA, AARCH64] Switching LRA on for AArch64 Yvan Roux
@ 2013-09-25 19:18 ` Yvan Roux
2013-09-26 9:39 ` Richard Earnshaw
1 sibling, 0 replies; 3+ messages in thread
From: Yvan Roux @ 2013-09-25 19:18 UTC (permalink / raw)
To: gcc-patches, Vladimir Makarov, Marcus Shawcroft, Richard Earnshaw
Cc: Patch Tracking
Hi,
the needed lra analyser patch was commited as r202914.
Thanks,
Yvan
On 24 September 2013 11:03, Yvan Roux <yvan.roux@linaro.org> wrote:
> Hi,
>
> The following patch switch LRA on for AArch64. The patch introduces
> an undocumented option -mlra to use LRA instead of reload, for a
> testing purpose. Please notice that this patch is dependent on the
> one submitted in the thread below:
>
> http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00805.html
>
> Thanks,
> Yvan
>
> 2013-09-24 Yvan Roux <yvan.roux@linaro.org>
>
> * config/aarch64/aarch64.opt (mlra): New option.
> * config/aarch64/aarch64.c (aarch64_lra_p): New function.
> (TARGET_LRA_P): Define.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH, LRA, AARCH64] Switching LRA on for AArch64
2013-09-24 9:32 [PATCH, LRA, AARCH64] Switching LRA on for AArch64 Yvan Roux
2013-09-25 19:18 ` Yvan Roux
@ 2013-09-26 9:39 ` Richard Earnshaw
1 sibling, 0 replies; 3+ messages in thread
From: Richard Earnshaw @ 2013-09-26 9:39 UTC (permalink / raw)
To: Yvan Roux; +Cc: gcc-patches, Vladimir Makarov, Marcus Shawcroft, Patch Tracking
On 24/09/13 10:03, Yvan Roux wrote:
> Hi,
>
> The following patch switch LRA on for AArch64. The patch introduces
> an undocumented option -mlra to use LRA instead of reload, for a
> testing purpose. Please notice that this patch is dependent on the
> one submitted in the thread below:
>
> http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00805.html
>
> Thanks,
> Yvan
>
> 2013-09-24 Yvan Roux <yvan.roux@linaro.org>
>
> * config/aarch64/aarch64.opt (mlra): New option.
> * config/aarch64/aarch64.c (aarch64_lra_p): New function.
> (TARGET_LRA_P): Define.=
>
>
+mlra
+Target Report Var(aarch64_lra_flag) Init(1) Save
+Use LRA instead of reload
Please mark this "(transitional)" in the doc string.
Otherwise OK.
R.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-09-26 8:44 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-24 9:32 [PATCH, LRA, AARCH64] Switching LRA on for AArch64 Yvan Roux
2013-09-25 19:18 ` Yvan Roux
2013-09-26 9:39 ` Richard Earnshaw
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).