From: Geng Qi Date: Fri, 30 Apr 2021 13:02:15 +0000 (+0800) Subject: C-SKY: Delete TARGET_CAN_CHANGE_MODE_CLASS, use defualt definition. X-Git-Tag: basepoints/gcc-13~7248 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5f338210456bf4f142a2da6eb0a01ae8ffecaa88;p=thirdparty%2Fgcc.git C-SKY: Delete TARGET_CAN_CHANGE_MODE_CLASS, use defualt definition. gcc/ChangeLog: * config/csky/csky.c (csky_can_change_mode_class): Delete. For csky, HF/SF mode use the low bits of VREGS. --- diff --git a/gcc/config/csky/csky.c b/gcc/config/csky/csky.c index c0e42a260263..e55821fe2ee3 100644 --- a/gcc/config/csky/csky.c +++ b/gcc/config/csky/csky.c @@ -608,9 +608,6 @@ csky_default_logical_op_non_short_circuit (void) #undef TARGET_MODES_TIEABLE_P #define TARGET_MODES_TIEABLE_P csky_modes_tieable_p -#undef TARGET_CAN_CHANGE_MODE_CLASS -#define TARGET_CAN_CHANGE_MODE_CLASS csky_can_change_mode_class - #undef TARGET_CONDITIONAL_REGISTER_USAGE #define TARGET_CONDITIONAL_REGISTER_USAGE csky_conditional_register_usage @@ -2370,19 +2367,6 @@ csky_modes_tieable_p (machine_mode mode1, machine_mode mode2) && (mode1 == DFmode || mode2 == DFmode)); } -/* Implement TARGET_CAN_CHANGE_MODE_CLASS. - V_REG registers can't do subreg as all values are reformatted to - internal precision. */ - -static bool -csky_can_change_mode_class (machine_mode from, - machine_mode to, - reg_class_t rclass) -{ - return (GET_MODE_SIZE (from) == GET_MODE_SIZE (to) - || !reg_classes_intersect_p (V_REGS, rclass)); -} - /* Implement TARGET_CLASS_LIKELY_SPILLED_P. We need to define this for MINI_REGS when we only use r0 - r7. Otherwise we can end up using r0-r4 for function arguments, and don't