On Thu, Jul 20, 2023 at 7:37 AM Alexey Lapshin
<alexey.laps...@espressif.com> wrote:
>
> gcc/
>         * config/xtensa/xtensa.h (XCHAL_HAVE_BE, XCHAL_HAVE_DENSITY,
>           XCHAL_HAVE_CONST16, XCHAL_HAVE_ABS, XCHAL_HAVE_ADDX,
>           XCHAL_HAVE_L32R, XSHAL_USE_ABSOLUTE_LITERALS,
>           XSHAL_HAVE_TEXT_SECTION_LITERALS, XCHAL_HAVE_MAC16,
>           XCHAL_HAVE_MUL16, XCHAL_HAVE_MUL32, XCHAL_HAVE_MUL32_HIGH,
>           XCHAL_HAVE_DIV32, XCHAL_HAVE_NSA, XCHAL_HAVE_MINMAX,
>           XCHAL_HAVE_SEXT, XCHAL_HAVE_LOOPS, XCHAL_HAVE_THREADPTR,
>           XCHAL_HAVE_RELEASE_SYNC, XCHAL_HAVE_S32C1I,
>           XCHAL_HAVE_BOOLEANS, XCHAL_HAVE_FP, XCHAL_HAVE_FP_DIV,
>           XCHAL_HAVE_FP_RECIP, XCHAL_HAVE_FP_SQRT,
>           XCHAL_HAVE_FP_RSQRT, XCHAL_HAVE_FP_POSTINC, XCHAL_HAVE_DFP,
>           XCHAL_HAVE_DFP_DIV, XCHAL_HAVE_DFP_RECIP,
>           XCHAL_HAVE_DFP_SQRT, XCHAL_HAVE_DFP_RSQRT,
>           XCHAL_HAVE_WINDOWED, XCHAL_NUM_AREGS,
>           XCHAL_HAVE_WIDE_BRANCHES, XCHAL_HAVE_PREDICTED_BRANCHES,
>           XCHAL_ICACHE_SIZE, XCHAL_DCACHE_SIZE,
>           XCHAL_ICACHE_LINESIZE, XCHAL_DCACHE_LINESIZE,
>           XCHAL_ICACHE_LINEWIDTH, XCHAL_DCACHE_LINEWIDTH,
>           XCHAL_DCACHE_IS_WRITEBACK, XCHAL_HAVE_MMU,
>           XCHAL_MMU_MIN_PTE_PAGE_SIZE, XCHAL_HAVE_DEBUG,
>           XCHAL_NUM_IBREAK, XCHAL_NUM_DBREAK, XCHAL_DEBUGLEVEL,
>           XCHAL_MAX_INSTRUCTION_SIZE, XCHAL_INST_FETCH_WIDTH,
>           XSHAL_ABI, XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0,
>           XCHAL_M_STAGE, XTENSA_MARCH_LATEST, XTENSA_MARCH_EARLIEST,
>           XCHAL_HAVE_CLAMPS, XCHAL_HAVE_DEPBITS,
>           XCHAL_HAVE_EXCLUSIVE, XCHAL_HAVE_XEA3): Add builtin-macros
>           with values from dynconfig.
> ---
>  gcc/config/xtensa/xtensa.h | 62 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 62 insertions(+)
>
> diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h
> index 8ebf37cab33..a65b674915b 100644
> --- a/gcc/config/xtensa/xtensa.h
> +++ b/gcc/config/xtensa/xtensa.h
> @@ -67,6 +67,7 @@ along with GCC; see the file COPYING3.  If not see
>  #endif
>
>
> +#define XTENSA_CPU_CPP_BUILTIN(OPT) builtin_define_with_int_value (#OPT, OPT)
>  /* Target CPU builtins.  */
>  #define TARGET_CPU_CPP_BUILTINS()                                      \
>    do {                                                                 \
> @@ -82,6 +83,67 @@ along with GCC; see the file COPYING3.  If not see
>        builtin_define ("__XTENSA_SOFT_FLOAT__");                              
>   \
>      for (builtin = xtensa_get_config_strings (); *builtin; ++builtin)  \
>        builtin_define (*builtin);                                       \

The loop above already does the same thing, doesn't it?

> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_BE);                                   
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DENSITY);                              
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_CONST16);                              
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_ABS);                                  
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_ADDX);                                 
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_L32R);                                 
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XSHAL_USE_ABSOLUTE_LITERALS);               \
> +    XTENSA_CPU_CPP_BUILTIN(XSHAL_HAVE_TEXT_SECTION_LITERALS);  \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_MAC16);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_MUL16);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_MUL32);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_MUL32_HIGH);                           
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DIV32);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_NSA);                                  
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_MINMAX);                               
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_SEXT);                                 
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_LOOPS);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_THREADPTR);                            
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_RELEASE_SYNC);                   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_S32C1I);                               
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_BOOLEANS);                             
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_FP);                                   
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_FP_DIV);                               
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_FP_RECIP);                             
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_FP_SQRT);                              
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_FP_RSQRT);                             
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_FP_POSTINC);                           
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DFP);                                  
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DFP_DIV);                              
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DFP_RECIP);                            
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DFP_SQRT);                             
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DFP_RSQRT);                            
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_WINDOWED);                             
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_NUM_AREGS);                                 
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_WIDE_BRANCHES);                  \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_PREDICTED_BRANCHES);             \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_ICACHE_SIZE);                               
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_DCACHE_SIZE);                               
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_ICACHE_LINESIZE);                           
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_DCACHE_LINESIZE);                           
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_ICACHE_LINEWIDTH);                          
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_DCACHE_LINEWIDTH);                          
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_DCACHE_IS_WRITEBACK);                 \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_MMU);                                  
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_MMU_MIN_PTE_PAGE_SIZE);               \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DEBUG);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_NUM_IBREAK);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_NUM_DBREAK);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_DEBUGLEVEL);                                
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_MAX_INSTRUCTION_SIZE);                      
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_INST_FETCH_WIDTH);                          
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XSHAL_ABI);                                       
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XTHAL_ABI_WINDOWED);                              
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XTHAL_ABI_CALL0);                                 
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_M_STAGE);                                   
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XTENSA_MARCH_LATEST);                             
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XTENSA_MARCH_EARLIEST);                           
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_CLAMPS);                               
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_DEPBITS);                              
>           \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_EXCLUSIVE);                            
>   \
> +    XTENSA_CPU_CPP_BUILTIN(XCHAL_HAVE_XEA3);                                 
>   \
>    } while (0)
>
>  #define CPP_SPEC " %(subtarget_cpp_spec) "
> --
> 2.34.1
>


-- 
Thanks.
-- Max

Reply via email to