(root)/
gcc-13.2.0/
gcc/
rtlhooks-def.h
       1  /* Default macros to initialize an rtl_hooks data structure.
       2     Copyright (C) 2004-2023 Free Software Foundation, Inc.
       3  
       4  This file is part of GCC.
       5  
       6  GCC is free software; you can redistribute it and/or modify
       7  it under the terms of the GNU General Public License as published by
       8  the Free Software Foundation; either version 3, or (at your option)
       9  any later version.
      10  
      11  GCC is distributed in the hope that it will be useful,
      12  but WITHOUT ANY WARRANTY; without even the implied warranty of
      13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      14  GNU General Public License for more details.
      15  
      16  You should have received a copy of the GNU General Public License
      17  along with GCC; see the file COPYING3.  If not see
      18  <http://www.gnu.org/licenses/>.  */
      19  
      20  #ifndef GCC_RTL_HOOKS_DEF_H
      21  #define GCC_RTL_HOOKS_DEF_H
      22  
      23  #include "rtl.h"
      24  
      25  #define RTL_HOOKS_GEN_LOWPART gen_lowpart_general
      26  #define RTL_HOOKS_GEN_LOWPART_NO_EMIT gen_lowpart_if_possible
      27  #define RTL_HOOKS_REG_NONZERO_REG_BITS reg_nonzero_bits_general
      28  #define RTL_HOOKS_REG_NUM_SIGN_BIT_COPIES reg_num_sign_bit_copies_general
      29  #define RTL_HOOKS_REG_TRUNCATED_TO_MODE reg_truncated_to_mode_general
      30  
      31  /* The structure is defined in rtl.h.  */
      32  #define RTL_HOOKS_INITIALIZER {			\
      33    RTL_HOOKS_GEN_LOWPART,			\
      34    RTL_HOOKS_GEN_LOWPART_NO_EMIT,		\
      35    RTL_HOOKS_REG_NONZERO_REG_BITS,		\
      36    RTL_HOOKS_REG_NUM_SIGN_BIT_COPIES,		\
      37    RTL_HOOKS_REG_TRUNCATED_TO_MODE		\
      38  }
      39  
      40  extern rtx gen_lowpart_general (machine_mode, rtx);
      41  extern rtx reg_nonzero_bits_general (const_rtx, scalar_int_mode,
      42  				     scalar_int_mode,
      43  				     unsigned HOST_WIDE_INT *);
      44  extern rtx reg_num_sign_bit_copies_general (const_rtx, scalar_int_mode,
      45  					    scalar_int_mode, unsigned int *);
      46  extern bool reg_truncated_to_mode_general (machine_mode, const_rtx);
      47  
      48  #endif /* GCC_RTL_HOOKS_DEF_H */