Hi,
This is the simplest patch to fix PR61154 that came after the wide-int
merge. I've got a patch stack that tries to audit the use of GEN_INT vs
gen_int_mode and the use of CONST_DOUBLE with VOIDmode in the backend
but it's still not safe to go and TBH I'd like to deal with that
separately given the current state of brokenness in the tree.
Tested with a bootstrap again today on top of 211072 and earlier
regression tests showed no regressions.
Will apply once regression tests finish.
regards
Ramana
<DATE> Ramana Radhakrishnan <ramana.radhakrish...@arm.com>
* config/arm/arm.h (TARGET_SUPPORTS_WIDE_INT): Define.
* config/arm/arm.md (movdi splitter): Replace const_double_operand
with immediate_operand.
Index: gcc/config/arm/arm.h
===================================================================
--- gcc/config/arm/arm.h (revision 211084)
+++ gcc/config/arm/arm.h (working copy)
@@ -2395,5 +2395,5 @@ extern const char *host_detect_local_cpu
#endif
#define DRIVER_SELF_SPECS MCPU_MTUNE_NATIVE_SPECS
-
+#define TARGET_SUPPORTS_WIDE_INT 1
#endif /* ! GCC_ARM_H */
Index: gcc/config/arm/arm.md
===================================================================
--- gcc/config/arm/arm.md (revision 211084)
+++ gcc/config/arm/arm.md (working copy)
@@ -5990,7 +5990,7 @@ (define_insn "*arm_movdi"
(define_split
[(set (match_operand:ANY64 0 "arm_general_register_operand" "")
- (match_operand:ANY64 1 "const_double_operand" ""))]
+ (match_operand:ANY64 1 "immediate_operand" ""))]
"TARGET_32BIT
&& reload_completed
&& (arm_const_double_inline_cost (operands[1])