On Tue, 2023-11-28 at 15:56 +0800, Li Wei wrote:
> In the r14-5547 commit, C[LT]Z_DEFINED_VALUE_AT_ZERO were defined at
> the same time, but in fact, CLZ_DEFINED_VALUE_AT_ZERO has already been
> defined, so remove the duplicate definition.
> 
> gcc/ChangeLog:
> 
>       * config/loongarch/loongarch.h (CTZ_DEFINED_VALUE_AT_ZERO): Add
>         description.
>       (CLZ_DEFINED_VALUE_AT_ZERO): Remove duplicate definition.

LGTM.

Interestingly the compiler does not give any warning when a macro is
redefined but with exactly same definition.

> ---
>  gcc/config/loongarch/loongarch.h | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/gcc/config/loongarch/loongarch.h 
> b/gcc/config/loongarch/loongarch.h
> index 115222e70fd..fa8a3f5582f 100644
> --- a/gcc/config/loongarch/loongarch.h
> +++ b/gcc/config/loongarch/loongarch.h
> @@ -288,10 +288,12 @@ along with GCC; see the file COPYING3.  If not see
>  /* Define if loading short immediate values into registers sign extends.  */
>  #define SHORT_IMMEDIATES_SIGN_EXTEND 1
>  
> -/* The clz.{w/d} instructions have the natural values at 0.  */
> +/* The clz.{w/d}, ctz.{w/d} instructions have the natural values at 0.  */
>  
>  #define CLZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) \
>    ((VALUE) = GET_MODE_UNIT_BITSIZE (MODE), 2)
> +#define CTZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) \
> +  ((VALUE) = GET_MODE_UNIT_BITSIZE (MODE), 2)
>  
>  /* Standard register usage.  */
>  
> @@ -1239,8 +1241,3 @@ struct GTY (()) machine_function
>  
>  #define TARGET_EXPLICIT_RELOCS \
>    (la_opt_explicit_relocs == EXPLICIT_RELOCS_ALWAYS)
> -
> -#define CLZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) \
> -  ((VALUE) = GET_MODE_UNIT_BITSIZE (MODE), 2)
> -#define CTZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) \
> -  ((VALUE) = GET_MODE_UNIT_BITSIZE (MODE), 2)

-- 
Xi Ruoyao <xry...@xry111.site>
School of Aerospace Science and Technology, Xidian University

Reply via email to