]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Enable LRA on several ports
authorJeff Law <jlaw@ventanamicro>
Mon, 1 May 2023 13:14:50 +0000 (07:14 -0600)
committerJeff Law <jlaw@ventanamicro>
Mon, 1 May 2023 13:20:43 +0000 (07:20 -0600)
Spurred by Segher's RFC, I went ahead and tested several ports with LRA
enabled.  Not surprisingly, many failed, but a few built their full set
of libraries successful and of those a few even ran their testsuites
with no regressions.  In fact, enabling LRA fixes a small number of
failures on the iq2000 port.

This patch converts the ports which built their libraries and have test
results that are as good as or better than without LRA.    There may
be minor code quality regressions or there may be minor code quality
improvements -- I'm leaving that for the port maintainers to own going
forward.

gcc/

* config/cris/cris.cc (TARGET_LRA_P): Remove.
* config/epiphany/epiphany.cc (TARGET_LRA_P): Remove.
* config/iq2000/iq2000.cc (TARGET_LRA_P): Remove.
* config/m32r/m32r.cc (TARGET_LRA_P): Remove.
* config/microblaze/microblaze.cc (TARGET_LRA_P): Remove.
* config/mmix/mmix.cc (TARGET_LRA_P): Remove.

gcc/config/cris/cris.cc
gcc/config/epiphany/epiphany.cc
gcc/config/iq2000/iq2000.cc
gcc/config/m32r/m32r.cc
gcc/config/microblaze/microblaze.cc
gcc/config/mmix/mmix.cc

index 05dead9c0778c17a7a4d59ecf1c097fa1830403b..7ce1b754e76ec2aad4a9e5d359392a83ace77b10 100644 (file)
@@ -215,9 +215,6 @@ int cris_cpu_version = CRIS_DEFAULT_CPU_VERSION;
 #undef TARGET_INIT_LIBFUNCS
 #define TARGET_INIT_LIBFUNCS cris_init_libfuncs
 
-#undef TARGET_LRA_P
-#define TARGET_LRA_P hook_bool_void_false
-
 #undef TARGET_LEGITIMATE_ADDRESS_P
 #define TARGET_LEGITIMATE_ADDRESS_P cris_legitimate_address_p
 
index fdd4df71456b1db4136f11f6906e8acbc76643e8..20c20e18ea0ff1ddfe178ed8bcffbfa3fba77c69 100644 (file)
@@ -106,8 +106,6 @@ static rtx_insn *frame_insn (rtx);
 #define TARGET_SCHED_ISSUE_RATE epiphany_issue_rate
 #define TARGET_SCHED_ADJUST_COST epiphany_adjust_cost
 
-#define TARGET_LRA_P hook_bool_void_false
-
 #define TARGET_LEGITIMATE_ADDRESS_P epiphany_legitimate_address_p
 
 #define TARGET_SECONDARY_RELOAD epiphany_secondary_reload
index de44d361080b0bff1c64c8320d884be5562141c5..067154a0a0d93db11271a726cf7018e850879927 100644 (file)
@@ -241,9 +241,6 @@ static HOST_WIDE_INT iq2000_starting_frame_offset (void);
 #undef TARGET_EXPAND_BUILTIN_VA_START
 #define        TARGET_EXPAND_BUILTIN_VA_START  iq2000_va_start
 
-#undef TARGET_LRA_P
-#define TARGET_LRA_P hook_bool_void_false
-
 #undef TARGET_LEGITIMATE_ADDRESS_P
 #define TARGET_LEGITIMATE_ADDRESS_P    iq2000_legitimate_address_p
 
index 5a788e295154de0e5929e8292bb5b43ca27106c0..155a248459bcc4cccd6eb4fc730df07c678fbf03 100644 (file)
@@ -127,9 +127,6 @@ static const struct attribute_spec m32r_attribute_table[] =
 #undef  TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P
 #define TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P m32r_attribute_identifier
 
-#undef TARGET_LRA_P
-#define TARGET_LRA_P hook_bool_void_false
-
 #undef TARGET_LEGITIMATE_ADDRESS_P
 #define TARGET_LEGITIMATE_ADDRESS_P m32r_legitimate_address_p
 #undef TARGET_LEGITIMIZE_ADDRESS
index 6df2c712cab18df60567aafa3e3e7e857fddf136..ebe78304f8989ed1c50c59005041390e2b48d0f0 100644 (file)
@@ -4017,9 +4017,6 @@ microblaze_starting_frame_offset (void)
 #undef TARGET_LEGITIMATE_ADDRESS_P
 #define TARGET_LEGITIMATE_ADDRESS_P    microblaze_legitimate_address_p 
 
-#undef TARGET_LRA_P
-#define TARGET_LRA_P hook_bool_void_false
-
 #undef TARGET_FRAME_POINTER_REQUIRED
 #define TARGET_FRAME_POINTER_REQUIRED  microblaze_frame_pointer_required
 
index 4e4fb8bdac27bb67a1bd5095f066796c23373058..eda2959adb9643583d154238c1df1c5a1bf1bfd7 100644 (file)
@@ -273,9 +273,6 @@ static HOST_WIDE_INT mmix_starting_frame_offset (void);
 #undef TARGET_PREFERRED_OUTPUT_RELOAD_CLASS
 #define TARGET_PREFERRED_OUTPUT_RELOAD_CLASS mmix_preferred_output_reload_class
 
-#undef TARGET_LRA_P
-#define TARGET_LRA_P hook_bool_void_false
-
 #undef TARGET_LEGITIMATE_ADDRESS_P
 #define TARGET_LEGITIMATE_ADDRESS_P    mmix_legitimate_address_p
 #undef TARGET_LEGITIMATE_CONSTANT_P