00001
00002
00003
00004 #ifndef GCC_INSN_FLAGS_H
00005 #define GCC_INSN_FLAGS_H
00006
00007 #define HAVE_trap 1
00008 #define HAVE_adddf3 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00009 #define HAVE_addsf3 (TARGET_HARD_FLOAT)
00010 #define HAVE_addsi3_internal (! TARGET_MIPS16 \
00011 && (TARGET_GAS \
00012 || GET_CODE (operands[2]) != CONST_INT \
00013 || INTVAL (operands[2]) != -32768))
00014 #define HAVE_adddi3_internal_1 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16)
00015 #define HAVE_adddi3_internal_2 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00016 && (TARGET_GAS \
00017 || GET_CODE (operands[2]) != CONST_INT \
00018 || INTVAL (operands[2]) != -32768))
00019 #define HAVE_adddi3_internal_3 (TARGET_64BIT \
00020 && !TARGET_MIPS16 \
00021 && (TARGET_GAS \
00022 || GET_CODE (operands[2]) != CONST_INT \
00023 || INTVAL (operands[2]) != -32768))
00024 #define HAVE_addsi3_internal_2 (TARGET_64BIT \
00025 && !TARGET_MIPS16 \
00026 && (TARGET_GAS \
00027 || GET_CODE (operands[2]) != CONST_INT \
00028 || INTVAL (operands[2]) != -32768))
00029 #define HAVE_subdf3 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00030 #define HAVE_subsf3 (TARGET_HARD_FLOAT)
00031 #define HAVE_subsi3_internal (!TARGET_MIPS16 \
00032 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768))
00033 #define HAVE_subdi3_internal (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16)
00034 #define HAVE_subdi3_internal_2 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00035 && INTVAL (operands[2]) != -32768)
00036 #define HAVE_subdi3_internal_3 (TARGET_64BIT && !TARGET_MIPS16 \
00037 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768))
00038 #define HAVE_subsi3_internal_2 (TARGET_64BIT && !TARGET_MIPS16 \
00039 && (GET_CODE (operands[2]) != CONST_INT || INTVAL (operands[2]) != -32768))
00040 #define HAVE_muldf3_internal (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !TARGET_MIPS4300)
00041 #define HAVE_muldf3_r4300 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_MIPS4300)
00042 #define HAVE_mulsf3_internal (TARGET_HARD_FLOAT && !TARGET_MIPS4300)
00043 #define HAVE_mulsf3_r4300 (TARGET_HARD_FLOAT && TARGET_MIPS4300)
00044 #define HAVE_mulsi3_mult3 (GENERATE_MULT3_SI \
00045 || TARGET_MAD)
00046 #define HAVE_mulsi3_internal (!TARGET_MIPS4000 || TARGET_MIPS16)
00047 #define HAVE_mulsi3_r4000 (TARGET_MIPS4000 && !TARGET_MIPS16)
00048 #define HAVE_muldi3_internal (TARGET_64BIT && !TARGET_MIPS4000 && !TARGET_MIPS16)
00049 #define HAVE_muldi3_internal2 (TARGET_64BIT && (GENERATE_MULT3_DI || TARGET_MIPS4000 || TARGET_MIPS16))
00050 #define HAVE_mulsidi3_internal (!TARGET_64BIT && GET_CODE (operands[3]) == GET_CODE (operands[4]))
00051 #define HAVE_mulsidi3_64bit (TARGET_64BIT && GET_CODE (operands[3]) == GET_CODE (operands[4]))
00052 #define HAVE_xmulsi3_highpart_internal (GET_CODE (operands[3]) == GET_CODE (operands[4]))
00053 #define HAVE_xmulsi3_highpart_mulhi (ISA_HAS_MULHI \
00054 && TARGET_64BIT \
00055 && GET_CODE (operands[3]) == GET_CODE (operands[4]))
00056 #define HAVE_smuldi3_highpart (TARGET_64BIT)
00057 #define HAVE_umuldi3_highpart (TARGET_64BIT)
00058 #define HAVE_madsi (TARGET_MAD)
00059 #define HAVE_divdf3 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00060 #define HAVE_divsf3 (TARGET_HARD_FLOAT)
00061 #define HAVE_divmodsi4_internal (optimize)
00062 #define HAVE_divmoddi4_internal (TARGET_64BIT && optimize)
00063 #define HAVE_udivmodsi4_internal (optimize)
00064 #define HAVE_udivmoddi4_internal (TARGET_64BIT && optimize)
00065 #define HAVE_div_trap_normal (!TARGET_MIPS16)
00066 #define HAVE_div_trap_mips16 (TARGET_MIPS16)
00067 #define HAVE_divsi3_internal (!optimize)
00068 #define HAVE_divdi3_internal (TARGET_64BIT && !optimize)
00069 #define HAVE_modsi3_internal (!optimize)
00070 #define HAVE_moddi3_internal (TARGET_64BIT && !optimize)
00071 #define HAVE_udivsi3_internal (!optimize)
00072 #define HAVE_udivdi3_internal (TARGET_64BIT && !optimize)
00073 #define HAVE_umodsi3_internal (!optimize)
00074 #define HAVE_umoddi3_internal (TARGET_64BIT && !optimize)
00075 #define HAVE_sqrtdf2 (TARGET_HARD_FLOAT && HAVE_SQRT_P() && TARGET_DOUBLE_FLOAT)
00076 #define HAVE_sqrtsf2 (TARGET_HARD_FLOAT && HAVE_SQRT_P())
00077 #define HAVE_abssi2 (!TARGET_MIPS16)
00078 #define HAVE_absdi2 (TARGET_64BIT && !TARGET_MIPS16)
00079 #define HAVE_absdf2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00080 #define HAVE_abssf2 (TARGET_HARD_FLOAT)
00081 #define HAVE_ffssi2 (!TARGET_MIPS16)
00082 #define HAVE_ffsdi2 (TARGET_64BIT && !TARGET_MIPS16)
00083 #define HAVE_negsi2 1
00084 #define HAVE_negdi2_internal (! TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16)
00085 #define HAVE_negdi2_internal_2 (TARGET_64BIT && !TARGET_MIPS16)
00086 #define HAVE_negdf2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00087 #define HAVE_negsf2 (TARGET_HARD_FLOAT)
00088 #define HAVE_one_cmplsi2 1
00089 #define HAVE_one_cmpldi2 1
00090 #define HAVE_anddi3_internal1 (TARGET_64BIT && !TARGET_MIPS16)
00091 #define HAVE_xordi3_immed (TARGET_64BIT && !TARGET_MIPS16)
00092 #define HAVE_truncdfsf2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00093 #define HAVE_truncdisi2 (TARGET_64BIT)
00094 #define HAVE_truncdihi2 (TARGET_64BIT)
00095 #define HAVE_truncdiqi2 (TARGET_64BIT)
00096 #define HAVE_zero_extendsidi2_internal (TARGET_64BIT && !TARGET_MIPS16)
00097 #define HAVE_extendhidi2_internal (TARGET_64BIT)
00098 #define HAVE_extendhisi2_internal 1
00099 #define HAVE_extendqihi2_internal 1
00100 #define HAVE_extendqisi2_insn 1
00101 #define HAVE_extendqidi2_insn (TARGET_64BIT)
00102 #define HAVE_extendsfdf2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00103 #define HAVE_fix_truncdfsi2_insn (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && ISA_HAS_TRUNC_W)
00104 #define HAVE_fix_truncdfsi2_macro (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !ISA_HAS_TRUNC_W)
00105 #define HAVE_fix_truncsfsi2_insn (TARGET_HARD_FLOAT && ISA_HAS_TRUNC_W)
00106 #define HAVE_fix_truncsfsi2_macro (TARGET_HARD_FLOAT && !ISA_HAS_TRUNC_W)
00107 #define HAVE_fix_truncdfdi2 (TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT)
00108 #define HAVE_fix_truncsfdi2 (TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT)
00109 #define HAVE_floatsidf2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00110 #define HAVE_floatdidf2 (TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT)
00111 #define HAVE_floatsisf2 (TARGET_HARD_FLOAT)
00112 #define HAVE_floatdisf2 (TARGET_HARD_FLOAT && TARGET_FLOAT64 && TARGET_DOUBLE_FLOAT)
00113 #define HAVE_movsi_ulw (!TARGET_MIPS16)
00114 #define HAVE_movsi_usw (!TARGET_MIPS16)
00115 #define HAVE_movdi_uld 1
00116 #define HAVE_movdi_usd 1
00117 #define HAVE_high (mips_split_addresses && !TARGET_MIPS16)
00118 #define HAVE_low (mips_split_addresses && !TARGET_MIPS16)
00119 #define HAVE_movdi_internal (!TARGET_64BIT && !TARGET_MIPS16 \
00120 && (register_operand (operands[0], DImode) \
00121 || register_operand (operands[1], DImode) \
00122 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0) \
00123 || operands[1] == CONST0_RTX (DImode)))
00124 #define HAVE_movdi_internal2 (TARGET_64BIT && !TARGET_MIPS16 \
00125 && (register_operand (operands[0], DImode) \
00126 || register_operand (operands[1], DImode) \
00127 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0) \
00128 || operands[1] == CONST0_RTX (DImode)))
00129 #define HAVE_movsi_internal (!TARGET_MIPS16 \
00130 && (register_operand (operands[0], SImode) \
00131 || register_operand (operands[1], SImode) \
00132 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)))
00133 #define HAVE_hilo_delay 1
00134 #define HAVE_movcc (ISA_HAS_8CC && TARGET_HARD_FLOAT)
00135 #define HAVE_movhi_internal (!TARGET_MIPS16 \
00136 && (register_operand (operands[0], HImode) \
00137 || register_operand (operands[1], HImode) \
00138 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)))
00139 #define HAVE_movqi_internal (!TARGET_MIPS16 \
00140 && (register_operand (operands[0], QImode) \
00141 || register_operand (operands[1], QImode) \
00142 || (GET_CODE (operands[1]) == CONST_INT && INTVAL (operands[1]) == 0)))
00143 #define HAVE_movsf_internal1 (TARGET_HARD_FLOAT \
00144 && (register_operand (operands[0], SFmode) \
00145 || nonmemory_operand (operands[1], SFmode)))
00146 #define HAVE_movsf_internal2 (TARGET_SOFT_FLOAT && !TARGET_MIPS16 \
00147 && (register_operand (operands[0], SFmode) \
00148 || nonmemory_operand (operands[1], SFmode)))
00149 #define HAVE_movdf_internal1 (TARGET_HARD_FLOAT && !(TARGET_FLOAT64 && !TARGET_64BIT) \
00150 && TARGET_DOUBLE_FLOAT \
00151 && (register_operand (operands[0], DFmode) \
00152 || nonmemory_operand (operands[1], DFmode)))
00153 #define HAVE_movdf_internal1a (TARGET_HARD_FLOAT && (TARGET_FLOAT64 && !TARGET_64BIT) \
00154 && TARGET_DOUBLE_FLOAT \
00155 && (register_operand (operands[0], DFmode) \
00156 || nonmemory_operand (operands[1], DFmode)))
00157 #define HAVE_movdf_internal2 ((TARGET_SOFT_FLOAT || TARGET_SINGLE_FLOAT) && !TARGET_MIPS16 \
00158 && (register_operand (operands[0], DFmode) \
00159 || nonmemory_operand (operands[1], DFmode)))
00160 #define HAVE_loadgp 1
00161 #define HAVE_movstrsi_internal 1
00162 #define HAVE_movstrsi_internal2 1
00163 #define HAVE_movstrsi_internal3 1
00164 #define HAVE_ashlsi3_internal1 (!TARGET_MIPS16)
00165 #define HAVE_ashlsi3_internal2 (TARGET_MIPS16)
00166 #define HAVE_ashldi3_internal (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16)
00167 #define HAVE_ashldi3_internal2 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00168 && (INTVAL (operands[2]) & 32) != 0)
00169 #define HAVE_ashldi3_internal3 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00170 && (INTVAL (operands[2]) & 63) < 32 \
00171 && (INTVAL (operands[2]) & 63) != 0)
00172 #define HAVE_ashldi3_internal4 (TARGET_64BIT && !TARGET_MIPS16)
00173 #define HAVE_ashrsi3_internal1 (!TARGET_MIPS16)
00174 #define HAVE_ashrsi3_internal2 (TARGET_MIPS16)
00175 #define HAVE_ashrdi3_internal (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16)
00176 #define HAVE_ashrdi3_internal2 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && (INTVAL (operands[2]) & 32) != 0)
00177 #define HAVE_ashrdi3_internal3 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00178 && (INTVAL (operands[2]) & 63) < 32 \
00179 && (INTVAL (operands[2]) & 63) != 0)
00180 #define HAVE_ashrdi3_internal4 (TARGET_64BIT && !TARGET_MIPS16)
00181 #define HAVE_lshrsi3_internal1 (!TARGET_MIPS16)
00182 #define HAVE_lshrsi3_internal2 (TARGET_MIPS16)
00183 #define HAVE_lshrdi3_internal (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16)
00184 #define HAVE_lshrdi3_internal2 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00185 && (INTVAL (operands[2]) & 32) != 0)
00186 #define HAVE_lshrdi3_internal3 (!TARGET_64BIT && !TARGET_DEBUG_G_MODE && !TARGET_MIPS16 \
00187 && (INTVAL (operands[2]) & 63) < 32 \
00188 && (INTVAL (operands[2]) & 63) != 0)
00189 #define HAVE_lshrdi3_internal4 (TARGET_64BIT && !TARGET_MIPS16)
00190 #define HAVE_rotrsi3 (ISA_HAS_ROTR_SI)
00191 #define HAVE_rotrdi3 (ISA_HAS_ROTR_DI)
00192 #define HAVE_branch_fp (TARGET_HARD_FLOAT)
00193 #define HAVE_branch_fp_inverted (TARGET_HARD_FLOAT)
00194 #define HAVE_branch_zero (!TARGET_MIPS16)
00195 #define HAVE_branch_zero_inverted (!TARGET_MIPS16)
00196 #define HAVE_branch_zero_di (!TARGET_MIPS16)
00197 #define HAVE_branch_zero_di_inverted (!TARGET_MIPS16)
00198 #define HAVE_branch_equality (!TARGET_MIPS16)
00199 #define HAVE_branch_equality_di (!TARGET_MIPS16)
00200 #define HAVE_branch_equality_inverted (!TARGET_MIPS16)
00201 #define HAVE_branch_equality_di_inverted (!TARGET_MIPS16)
00202 #define HAVE_seq_si_zero (!TARGET_MIPS16)
00203 #define HAVE_seq_di_zero (TARGET_64BIT && !TARGET_MIPS16)
00204 #define HAVE_sne_si_zero (!TARGET_MIPS16)
00205 #define HAVE_sne_di_zero (TARGET_64BIT && !TARGET_MIPS16)
00206 #define HAVE_sgt_si (!TARGET_MIPS16)
00207 #define HAVE_sgt_di (TARGET_64BIT && !TARGET_MIPS16)
00208 #define HAVE_slt_si (!TARGET_MIPS16)
00209 #define HAVE_slt_di (TARGET_64BIT && !TARGET_MIPS16)
00210 #define HAVE_sle_si_const (!TARGET_MIPS16 && INTVAL (operands[2]) < 32767)
00211 #define HAVE_sle_di_const (TARGET_64BIT && !TARGET_MIPS16 && INTVAL (operands[2]) < 32767)
00212 #define HAVE_sgtu_si (!TARGET_MIPS16)
00213 #define HAVE_sgtu_di (TARGET_64BIT && !TARGET_MIPS16)
00214 #define HAVE_sltu_si (!TARGET_MIPS16)
00215 #define HAVE_sltu_di (TARGET_64BIT && !TARGET_MIPS16)
00216 #define HAVE_sleu_si_const (!TARGET_MIPS16 && INTVAL (operands[2]) < 32767)
00217 #define HAVE_sleu_di_const (TARGET_64BIT && !TARGET_MIPS16 && INTVAL (operands[2]) < 32767)
00218 #define HAVE_sunordered_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00219 #define HAVE_sunlt_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00220 #define HAVE_suneq_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00221 #define HAVE_sunle_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00222 #define HAVE_seq_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00223 #define HAVE_slt_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00224 #define HAVE_sle_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00225 #define HAVE_sgt_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00226 #define HAVE_sge_df (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00227 #define HAVE_sunordered_sf (TARGET_HARD_FLOAT)
00228 #define HAVE_sunlt_sf (TARGET_HARD_FLOAT)
00229 #define HAVE_suneq_sf (TARGET_HARD_FLOAT)
00230 #define HAVE_sunle_sf (TARGET_HARD_FLOAT)
00231 #define HAVE_seq_sf (TARGET_HARD_FLOAT)
00232 #define HAVE_slt_sf (TARGET_HARD_FLOAT)
00233 #define HAVE_sle_sf (TARGET_HARD_FLOAT)
00234 #define HAVE_sgt_sf (TARGET_HARD_FLOAT)
00235 #define HAVE_sge_sf (TARGET_HARD_FLOAT)
00236 #define HAVE_jump (!TARGET_MIPS16)
00237 #define HAVE_indirect_jump_internal1 (!(Pmode == DImode))
00238 #define HAVE_indirect_jump_internal2 (Pmode == DImode)
00239 #define HAVE_tablejump_internal1 (!(Pmode == DImode))
00240 #define HAVE_tablejump_internal2 (Pmode == DImode)
00241 #define HAVE_casesi_internal (TARGET_EMBEDDED_PIC)
00242 #define HAVE_casesi_internal_di (TARGET_EMBEDDED_PIC)
00243 #define HAVE_blockage 1
00244 #define HAVE_return (mips_can_use_return_insn ())
00245 #define HAVE_return_internal 1
00246 #define HAVE_get_fnaddr (TARGET_EMBEDDED_PIC \
00247 && GET_CODE (operands[1]) == SYMBOL_REF)
00248 #define HAVE_eh_set_lr_si (! TARGET_64BIT)
00249 #define HAVE_eh_set_lr_di (TARGET_64BIT)
00250 #define HAVE_exception_receiver (TARGET_ABICALLS && (mips_abi == ABI_32 || mips_abi == ABI_O64))
00251 #define HAVE_call_internal1 (!TARGET_ABICALLS && !TARGET_LONG_CALLS)
00252 #define HAVE_call_internal2 (TARGET_ABICALLS && !TARGET_LONG_CALLS)
00253 #define HAVE_call_internal3a (!TARGET_MIPS16 \
00254 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS)
00255 #define HAVE_call_internal3b (!TARGET_MIPS16 \
00256 && Pmode == DImode && !TARGET_ABICALLS && TARGET_LONG_CALLS)
00257 #define HAVE_call_internal3c (TARGET_MIPS16 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS \
00258 && GET_CODE (operands[2]) == REG && REGNO (operands[2]) == 31)
00259 #define HAVE_call_internal4a (!(Pmode == DImode) && TARGET_ABICALLS && TARGET_LONG_CALLS)
00260 #define HAVE_call_internal4b (Pmode == DImode && TARGET_ABICALLS && TARGET_LONG_CALLS)
00261 #define HAVE_call_value_internal1 (!TARGET_ABICALLS && !TARGET_LONG_CALLS)
00262 #define HAVE_call_value_internal2 (TARGET_ABICALLS && !TARGET_LONG_CALLS)
00263 #define HAVE_call_value_internal3a (!TARGET_MIPS16 \
00264 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS)
00265 #define HAVE_call_value_internal3b (!TARGET_MIPS16 \
00266 && Pmode == DImode && !TARGET_ABICALLS && TARGET_LONG_CALLS)
00267 #define HAVE_call_value_internal3c (TARGET_MIPS16 && !(Pmode == DImode) && !TARGET_ABICALLS && TARGET_LONG_CALLS \
00268 && GET_CODE (operands[3]) == REG && REGNO (operands[3]) == 31)
00269 #define HAVE_call_value_internal4a (!(Pmode == DImode) && TARGET_ABICALLS && TARGET_LONG_CALLS)
00270 #define HAVE_call_value_internal4b (Pmode == DImode && TARGET_ABICALLS && TARGET_LONG_CALLS)
00271 #define HAVE_call_value_multiple_internal1 (!TARGET_ABICALLS && !TARGET_LONG_CALLS)
00272 #define HAVE_call_value_multiple_internal2 (TARGET_ABICALLS && !TARGET_LONG_CALLS)
00273 #define HAVE_prefetch_si_address (ISA_HAS_PREFETCH && Pmode == SImode)
00274 #define HAVE_prefetch_si (ISA_HAS_PREFETCH && Pmode == SImode)
00275 #define HAVE_prefetch_di_address (ISA_HAS_PREFETCH && Pmode == DImode)
00276 #define HAVE_prefetch_di (ISA_HAS_PREFETCH && Pmode == DImode)
00277 #define HAVE_nop 1
00278 #define HAVE_consttable_qi (TARGET_MIPS16)
00279 #define HAVE_consttable_hi (TARGET_MIPS16)
00280 #define HAVE_consttable_si (TARGET_MIPS16)
00281 #define HAVE_consttable_di (TARGET_MIPS16)
00282 #define HAVE_consttable_sf (TARGET_MIPS16)
00283 #define HAVE_consttable_df (TARGET_MIPS16)
00284 #define HAVE_align_2 (TARGET_MIPS16)
00285 #define HAVE_align_4 (TARGET_MIPS16)
00286 #define HAVE_align_8 (TARGET_MIPS16)
00287 #define HAVE_leasi (Pmode == SImode)
00288 #define HAVE_leadi (Pmode == DImode)
00289 #define HAVE_conditional_trap (ISA_HAS_COND_TRAP)
00290 #define HAVE_addsi3 1
00291 #define HAVE_adddi3 (TARGET_64BIT || (!TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
00292 #define HAVE_subsi3 1
00293 #define HAVE_subdi3 (TARGET_64BIT || (!TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
00294 #define HAVE_muldf3 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00295 #define HAVE_mulsf3 (TARGET_HARD_FLOAT)
00296 #define HAVE_mulsi3 1
00297 #define HAVE_muldi3 (TARGET_64BIT)
00298 #define HAVE_mulsidi3 1
00299 #define HAVE_umulsidi3 1
00300 #define HAVE_smulsi3_highpart 1
00301 #define HAVE_umulsi3_highpart 1
00302 #define HAVE_divmodsi4 (optimize)
00303 #define HAVE_divmoddi4 (TARGET_64BIT && optimize)
00304 #define HAVE_udivmodsi4 (optimize)
00305 #define HAVE_udivmoddi4 (TARGET_64BIT && optimize)
00306 #define HAVE_div_trap 1
00307 #define HAVE_divsi3 (!optimize)
00308 #define HAVE_divdi3 (TARGET_64BIT && !optimize)
00309 #define HAVE_modsi3 (!optimize)
00310 #define HAVE_moddi3 (TARGET_64BIT && !optimize)
00311 #define HAVE_udivsi3 (!optimize)
00312 #define HAVE_udivdi3 (TARGET_64BIT && !optimize)
00313 #define HAVE_umodsi3 (!optimize)
00314 #define HAVE_umoddi3 (TARGET_64BIT && !optimize)
00315 #define HAVE_negdi2 ((TARGET_64BIT || !TARGET_DEBUG_G_MODE) && !TARGET_MIPS16)
00316 #define HAVE_andsi3 1
00317 #define HAVE_anddi3 1
00318 #define HAVE_iorsi3 1
00319 #define HAVE_iordi3 1
00320 #define HAVE_xorsi3 1
00321 #define HAVE_xordi3 1
00322 #define HAVE_zero_extendsidi2 (TARGET_64BIT)
00323 #define HAVE_zero_extendhisi2 1
00324 #define HAVE_zero_extendhidi2 (TARGET_64BIT)
00325 #define HAVE_zero_extendqihi2 1
00326 #define HAVE_zero_extendqisi2 1
00327 #define HAVE_zero_extendqidi2 (TARGET_64BIT)
00328 #define HAVE_extendsidi2 (TARGET_64BIT)
00329 #define HAVE_extendhidi2 (TARGET_64BIT)
00330 #define HAVE_extendhisi2 1
00331 #define HAVE_extendqihi2 1
00332 #define HAVE_extendqisi2 1
00333 #define HAVE_extendqidi2 (TARGET_64BIT)
00334 #define HAVE_fix_truncdfsi2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00335 #define HAVE_fix_truncsfsi2 (TARGET_HARD_FLOAT)
00336 #define HAVE_fixuns_truncdfsi2 (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00337 #define HAVE_fixuns_truncdfdi2 (TARGET_HARD_FLOAT && TARGET_64BIT && TARGET_DOUBLE_FLOAT)
00338 #define HAVE_fixuns_truncsfsi2 (TARGET_HARD_FLOAT)
00339 #define HAVE_fixuns_truncsfdi2 (TARGET_HARD_FLOAT && TARGET_64BIT && TARGET_DOUBLE_FLOAT)
00340 #define HAVE_extv (!TARGET_MIPS16)
00341 #define HAVE_extzv (!TARGET_MIPS16)
00342 #define HAVE_insv (!TARGET_MIPS16)
00343 #define HAVE_movdi 1
00344 #define HAVE_reload_indi (TARGET_64BIT)
00345 #define HAVE_reload_outdi (TARGET_64BIT)
00346 #define HAVE_movsi 1
00347 #define HAVE_reload_outsi (TARGET_64BIT || TARGET_MIPS16)
00348 #define HAVE_reload_insi (TARGET_MIPS16)
00349 #define HAVE_reload_incc (ISA_HAS_8CC && TARGET_HARD_FLOAT)
00350 #define HAVE_reload_outcc (ISA_HAS_8CC && TARGET_HARD_FLOAT)
00351 #define HAVE_movhi 1
00352 #define HAVE_movqi 1
00353 #define HAVE_movsf 1
00354 #define HAVE_movdf 1
00355 #define HAVE_movstrsi (!TARGET_MIPS16)
00356 #define HAVE_ashlsi3 1
00357 #define HAVE_ashldi3 (TARGET_64BIT || (!TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
00358 #define HAVE_ashrsi3 1
00359 #define HAVE_ashrdi3 (TARGET_64BIT || (!TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
00360 #define HAVE_lshrsi3 1
00361 #define HAVE_lshrdi3 (TARGET_64BIT || (!TARGET_DEBUG_G_MODE && !TARGET_MIPS16))
00362 #define HAVE_cmpsi 1
00363 #define HAVE_tstsi 1
00364 #define HAVE_cmpdi (TARGET_64BIT)
00365 #define HAVE_tstdi (TARGET_64BIT)
00366 #define HAVE_cmpdf (TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00367 #define HAVE_cmpsf (TARGET_HARD_FLOAT)
00368 #define HAVE_bunordered 1
00369 #define HAVE_bordered 1
00370 #define HAVE_bunlt 1
00371 #define HAVE_bunge 1
00372 #define HAVE_buneq 1
00373 #define HAVE_bltgt 1
00374 #define HAVE_bunle 1
00375 #define HAVE_bungt 1
00376 #define HAVE_beq 1
00377 #define HAVE_bne 1
00378 #define HAVE_bgt 1
00379 #define HAVE_bge 1
00380 #define HAVE_blt 1
00381 #define HAVE_ble 1
00382 #define HAVE_bgtu 1
00383 #define HAVE_bgeu 1
00384 #define HAVE_bltu 1
00385 #define HAVE_bleu 1
00386 #define HAVE_seq 1
00387 #define HAVE_sne (!TARGET_MIPS16)
00388 #define HAVE_sgt 1
00389 #define HAVE_sge 1
00390 #define HAVE_slt 1
00391 #define HAVE_sle 1
00392 #define HAVE_sgtu 1
00393 #define HAVE_sgeu 1
00394 #define HAVE_sltu 1
00395 #define HAVE_sleu 1
00396 #define HAVE_indirect_jump 1
00397 #define HAVE_tablejump 1
00398 #define HAVE_tablejump_internal3 1
00399 #define HAVE_tablejump_mips161 (TARGET_MIPS16 && !(Pmode == DImode))
00400 #define HAVE_tablejump_mips162 (TARGET_MIPS16 && Pmode == DImode)
00401 #define HAVE_tablejump_internal4 1
00402 #define HAVE_casesi (TARGET_EMBEDDED_PIC)
00403 #define HAVE_builtin_setjmp_setup (TARGET_ABICALLS)
00404 #define HAVE_builtin_setjmp_setup_32 (TARGET_ABICALLS && ! (Pmode == DImode))
00405 #define HAVE_builtin_setjmp_setup_64 (TARGET_ABICALLS && Pmode == DImode)
00406 #define HAVE_builtin_longjmp (TARGET_ABICALLS)
00407 #define HAVE_prologue 1
00408 #define HAVE_epilogue 1
00409 #define HAVE_eh_return 1
00410 #define HAVE_call 1
00411 #define HAVE_call_internal0 1
00412 #define HAVE_call_value 1
00413 #define HAVE_call_value_internal0 1
00414 #define HAVE_call_value_multiple_internal0 1
00415 #define HAVE_untyped_call 1
00416 #define HAVE_prefetch (ISA_HAS_PREFETCH)
00417 #define HAVE_movsicc (ISA_HAS_CONDMOVE || ISA_HAS_INT_CONDMOVE)
00418 #define HAVE_movdicc ((ISA_HAS_CONDMOVE || ISA_HAS_INT_CONDMOVE) && TARGET_64BIT)
00419 #define HAVE_movsfcc (ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT)
00420 #define HAVE_movdfcc (ISA_HAS_CONDMOVE && TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT)
00421 extern rtx gen_trap PARAMS ((void));
00422 extern rtx gen_adddf3 PARAMS ((rtx, rtx, rtx));
00423 extern rtx gen_addsf3 PARAMS ((rtx, rtx, rtx));
00424 extern rtx gen_addsi3_internal PARAMS ((rtx, rtx, rtx));
00425 extern rtx gen_adddi3_internal_1 PARAMS ((rtx, rtx, rtx, rtx));
00426 extern rtx gen_adddi3_internal_2 PARAMS ((rtx, rtx, rtx, rtx));
00427 extern rtx gen_adddi3_internal_3 PARAMS ((rtx, rtx, rtx));
00428 extern rtx gen_addsi3_internal_2 PARAMS ((rtx, rtx, rtx));
00429 extern rtx gen_subdf3 PARAMS ((rtx, rtx, rtx));
00430 extern rtx gen_subsf3 PARAMS ((rtx, rtx, rtx));
00431 extern rtx gen_subsi3_internal PARAMS ((rtx, rtx, rtx));
00432 extern rtx gen_subdi3_internal PARAMS ((rtx, rtx, rtx, rtx));
00433 extern rtx gen_subdi3_internal_2 PARAMS ((rtx, rtx, rtx, rtx));
00434 extern rtx gen_subdi3_internal_3 PARAMS ((rtx, rtx, rtx));
00435 extern rtx gen_subsi3_internal_2 PARAMS ((rtx, rtx, rtx));
00436 extern rtx gen_muldf3_internal PARAMS ((rtx, rtx, rtx));
00437 extern rtx gen_muldf3_r4300 PARAMS ((rtx, rtx, rtx));
00438 extern rtx gen_mulsf3_internal PARAMS ((rtx, rtx, rtx));
00439 extern rtx gen_mulsf3_r4300 PARAMS ((rtx, rtx, rtx));
00440 extern rtx gen_mulsi3_mult3 PARAMS ((rtx, rtx, rtx));
00441 extern rtx gen_mulsi3_internal PARAMS ((rtx, rtx, rtx));
00442 extern rtx gen_mulsi3_r4000 PARAMS ((rtx, rtx, rtx));
00443 extern rtx gen_muldi3_internal PARAMS ((rtx, rtx, rtx));
00444 extern rtx gen_muldi3_internal2 PARAMS ((rtx, rtx, rtx));
00445 extern rtx gen_mulsidi3_internal PARAMS ((rtx, rtx, rtx, rtx, rtx));
00446 extern rtx gen_mulsidi3_64bit PARAMS ((rtx, rtx, rtx, rtx, rtx));
00447 extern rtx gen_xmulsi3_highpart_internal PARAMS ((rtx, rtx, rtx, rtx, rtx, rtx));
00448 extern rtx gen_xmulsi3_highpart_mulhi PARAMS ((rtx, rtx, rtx, rtx, rtx, rtx));
00449 extern rtx gen_smuldi3_highpart PARAMS ((rtx, rtx, rtx));
00450 extern rtx gen_umuldi3_highpart PARAMS ((rtx, rtx, rtx));
00451 extern rtx gen_madsi PARAMS ((rtx, rtx, rtx));
00452 extern rtx gen_divdf3 PARAMS ((rtx, rtx, rtx));
00453 extern rtx gen_divsf3 PARAMS ((rtx, rtx, rtx));
00454 extern rtx gen_divmodsi4_internal PARAMS ((rtx, rtx, rtx, rtx));
00455 extern rtx gen_divmoddi4_internal PARAMS ((rtx, rtx, rtx, rtx));
00456 extern rtx gen_udivmodsi4_internal PARAMS ((rtx, rtx, rtx, rtx));
00457 extern rtx gen_udivmoddi4_internal PARAMS ((rtx, rtx, rtx, rtx));
00458 extern rtx gen_div_trap_normal PARAMS ((rtx, rtx, rtx));
00459 extern rtx gen_div_trap_mips16 PARAMS ((rtx, rtx, rtx));
00460 extern rtx gen_divsi3_internal PARAMS ((rtx, rtx, rtx));
00461 extern rtx gen_divdi3_internal PARAMS ((rtx, rtx, rtx));
00462 extern rtx gen_modsi3_internal PARAMS ((rtx, rtx, rtx));
00463 extern rtx gen_moddi3_internal PARAMS ((rtx, rtx, rtx));
00464 extern rtx gen_udivsi3_internal PARAMS ((rtx, rtx, rtx));
00465 extern rtx gen_udivdi3_internal PARAMS ((rtx, rtx, rtx));
00466 extern rtx gen_umodsi3_internal PARAMS ((rtx, rtx, rtx));
00467 extern rtx gen_umoddi3_internal PARAMS ((rtx, rtx, rtx));
00468 extern rtx gen_sqrtdf2 PARAMS ((rtx, rtx));
00469 extern rtx gen_sqrtsf2 PARAMS ((rtx, rtx));
00470 extern rtx gen_abssi2 PARAMS ((rtx, rtx));
00471 extern rtx gen_absdi2 PARAMS ((rtx, rtx));
00472 extern rtx gen_absdf2 PARAMS ((rtx, rtx));
00473 extern rtx gen_abssf2 PARAMS ((rtx, rtx));
00474 extern rtx gen_ffssi2 PARAMS ((rtx, rtx));
00475 extern rtx gen_ffsdi2 PARAMS ((rtx, rtx));
00476 extern rtx gen_negsi2 PARAMS ((rtx, rtx));
00477 extern rtx gen_negdi2_internal PARAMS ((rtx, rtx, rtx));
00478 extern rtx gen_negdi2_internal_2 PARAMS ((rtx, rtx));
00479 extern rtx gen_negdf2 PARAMS ((rtx, rtx));
00480 extern rtx gen_negsf2 PARAMS ((rtx, rtx));
00481 extern rtx gen_one_cmplsi2 PARAMS ((rtx, rtx));
00482 extern rtx gen_one_cmpldi2 PARAMS ((rtx, rtx));
00483 extern rtx gen_anddi3_internal1 PARAMS ((rtx, rtx, rtx));
00484 extern rtx gen_xordi3_immed PARAMS ((rtx, rtx, rtx));
00485 extern rtx gen_truncdfsf2 PARAMS ((rtx, rtx));
00486 extern rtx gen_truncdisi2 PARAMS ((rtx, rtx));
00487 extern rtx gen_truncdihi2 PARAMS ((rtx, rtx));
00488 extern rtx gen_truncdiqi2 PARAMS ((rtx, rtx));
00489 extern rtx gen_zero_extendsidi2_internal PARAMS ((rtx, rtx));
00490 extern rtx gen_extendhidi2_internal PARAMS ((rtx, rtx));
00491 extern rtx gen_extendhisi2_internal PARAMS ((rtx, rtx));
00492 extern rtx gen_extendqihi2_internal PARAMS ((rtx, rtx));
00493 extern rtx gen_extendqisi2_insn PARAMS ((rtx, rtx));
00494 extern rtx gen_extendqidi2_insn PARAMS ((rtx, rtx));
00495 extern rtx gen_extendsfdf2 PARAMS ((rtx, rtx));
00496 extern rtx gen_fix_truncdfsi2_insn PARAMS ((rtx, rtx));
00497 extern rtx gen_fix_truncdfsi2_macro PARAMS ((rtx, rtx));
00498 extern rtx gen_fix_truncsfsi2_insn PARAMS ((rtx, rtx));
00499 extern rtx gen_fix_truncsfsi2_macro PARAMS ((rtx, rtx));
00500 extern rtx gen_fix_truncdfdi2 PARAMS ((rtx, rtx));
00501 extern rtx gen_fix_truncsfdi2 PARAMS ((rtx, rtx));
00502 extern rtx gen_floatsidf2 PARAMS ((rtx, rtx));
00503 extern rtx gen_floatdidf2 PARAMS ((rtx, rtx));
00504 extern rtx gen_floatsisf2 PARAMS ((rtx, rtx));
00505 extern rtx gen_floatdisf2 PARAMS ((rtx, rtx));
00506 extern rtx gen_movsi_ulw PARAMS ((rtx, rtx));
00507 extern rtx gen_movsi_usw PARAMS ((rtx, rtx));
00508 extern rtx gen_movdi_uld PARAMS ((rtx, rtx));
00509 extern rtx gen_movdi_usd PARAMS ((rtx, rtx));
00510 extern rtx gen_high PARAMS ((rtx, rtx));
00511 extern rtx gen_low PARAMS ((rtx, rtx, rtx));
00512 extern rtx gen_movdi_internal PARAMS ((rtx, rtx));
00513 extern rtx gen_movdi_internal2 PARAMS ((rtx, rtx));
00514 extern rtx gen_movsi_internal PARAMS ((rtx, rtx));
00515 extern rtx gen_hilo_delay PARAMS ((rtx));
00516 extern rtx gen_movcc PARAMS ((rtx, rtx));
00517 extern rtx gen_movhi_internal PARAMS ((rtx, rtx));
00518 extern rtx gen_movqi_internal PARAMS ((rtx, rtx));
00519 extern rtx gen_movsf_internal1 PARAMS ((rtx, rtx));
00520 extern rtx gen_movsf_internal2 PARAMS ((rtx, rtx));
00521 extern rtx gen_movdf_internal1 PARAMS ((rtx, rtx));
00522 extern rtx gen_movdf_internal1a PARAMS ((rtx, rtx));
00523 extern rtx gen_movdf_internal2 PARAMS ((rtx, rtx));
00524 extern rtx gen_loadgp PARAMS ((rtx, rtx));
00525 extern rtx gen_movstrsi_internal PARAMS ((rtx, rtx, rtx, rtx));
00526 extern rtx gen_movstrsi_internal2 PARAMS ((rtx, rtx, rtx, rtx));
00527 extern rtx gen_movstrsi_internal3 PARAMS ((rtx, rtx, rtx, rtx));
00528 extern rtx gen_ashlsi3_internal1 PARAMS ((rtx, rtx, rtx));
00529 extern rtx gen_ashlsi3_internal2 PARAMS ((rtx, rtx, rtx));
00530 extern rtx gen_ashldi3_internal PARAMS ((rtx, rtx, rtx, rtx));
00531 extern rtx gen_ashldi3_internal2 PARAMS ((rtx, rtx, rtx, rtx));
00532 extern rtx gen_ashldi3_internal3 PARAMS ((rtx, rtx, rtx, rtx));
00533 extern rtx gen_ashldi3_internal4 PARAMS ((rtx, rtx, rtx));
00534 extern rtx gen_ashrsi3_internal1 PARAMS ((rtx, rtx, rtx));
00535 extern rtx gen_ashrsi3_internal2 PARAMS ((rtx, rtx, rtx));
00536 extern rtx gen_ashrdi3_internal PARAMS ((rtx, rtx, rtx, rtx));
00537 extern rtx gen_ashrdi3_internal2 PARAMS ((rtx, rtx, rtx, rtx));
00538 extern rtx gen_ashrdi3_internal3 PARAMS ((rtx, rtx, rtx, rtx));
00539 extern rtx gen_ashrdi3_internal4 PARAMS ((rtx, rtx, rtx));
00540 extern rtx gen_lshrsi3_internal1 PARAMS ((rtx, rtx, rtx));
00541 extern rtx gen_lshrsi3_internal2 PARAMS ((rtx, rtx, rtx));
00542 extern rtx gen_lshrdi3_internal PARAMS ((rtx, rtx, rtx, rtx));
00543 extern rtx gen_lshrdi3_internal2 PARAMS ((rtx, rtx, rtx, rtx));
00544 extern rtx gen_lshrdi3_internal3 PARAMS ((rtx, rtx, rtx, rtx));
00545 extern rtx gen_lshrdi3_internal4 PARAMS ((rtx, rtx, rtx));
00546 extern rtx gen_rotrsi3 PARAMS ((rtx, rtx, rtx));
00547 extern rtx gen_rotrdi3 PARAMS ((rtx, rtx, rtx));
00548 extern rtx gen_branch_fp PARAMS ((rtx, rtx, rtx));
00549 extern rtx gen_branch_fp_inverted PARAMS ((rtx, rtx, rtx));
00550 extern rtx gen_branch_zero PARAMS ((rtx, rtx, rtx));
00551 extern rtx gen_branch_zero_inverted PARAMS ((rtx, rtx, rtx));
00552 extern rtx gen_branch_zero_di PARAMS ((rtx, rtx, rtx));
00553 extern rtx gen_branch_zero_di_inverted PARAMS ((rtx, rtx, rtx));
00554 extern rtx gen_branch_equality PARAMS ((rtx, rtx, rtx, rtx));
00555 extern rtx gen_branch_equality_di PARAMS ((rtx, rtx, rtx, rtx));
00556 extern rtx gen_branch_equality_inverted PARAMS ((rtx, rtx, rtx, rtx));
00557 extern rtx gen_branch_equality_di_inverted PARAMS ((rtx, rtx, rtx, rtx));
00558 extern rtx gen_seq_si_zero PARAMS ((rtx, rtx));
00559 extern rtx gen_seq_di_zero PARAMS ((rtx, rtx));
00560 #if 1
00561 extern rtx gen_seq_si PARAMS ((rtx, rtx, rtx));
00562 extern rtx gen_seq_di PARAMS ((rtx, rtx, rtx));
00563 extern rtx gen_sne_si PARAMS ((rtx, rtx, rtx));
00564 extern rtx gen_sne_di PARAMS ((rtx, rtx, rtx));
00565 extern rtx gen_sge_si PARAMS ((rtx, rtx, rtx));
00566 extern rtx gen_sge_di PARAMS ((rtx, rtx, rtx));
00567 extern rtx gen_sle_si_reg PARAMS ((rtx, rtx, rtx));
00568 extern rtx gen_sle_di_reg PARAMS ((rtx, rtx, rtx));
00569 extern rtx gen_sgeu_si PARAMS ((rtx, rtx, rtx));
00570 extern rtx gen_sleu_si_reg PARAMS ((rtx, rtx, rtx));
00571 extern rtx gen_sleu_di_reg PARAMS ((rtx, rtx, rtx));
00572 extern rtx gen_sne_si_zero PARAMS ((rtx, rtx));
00573 extern rtx gen_sne_di_zero PARAMS ((rtx, rtx));
00574 extern rtx gen_sgt_si PARAMS ((rtx, rtx, rtx));
00575 extern rtx gen_sgt_di PARAMS ((rtx, rtx, rtx));
00576 extern rtx gen_slt_si PARAMS ((rtx, rtx, rtx));
00577 extern rtx gen_slt_di PARAMS ((rtx, rtx, rtx));
00578 extern rtx gen_sle_si_const PARAMS ((rtx, rtx, rtx));
00579 extern rtx gen_sle_di_const PARAMS ((rtx, rtx, rtx));
00580 extern rtx gen_sgtu_si PARAMS ((rtx, rtx, rtx));
00581 extern rtx gen_sgtu_di PARAMS ((rtx, rtx, rtx));
00582 extern rtx gen_sltu_si PARAMS ((rtx, rtx, rtx));
00583 extern rtx gen_sltu_di PARAMS ((rtx, rtx, rtx));
00584 extern rtx gen_sleu_si_const PARAMS ((rtx, rtx, rtx));
00585 extern rtx gen_sleu_di_const PARAMS ((rtx, rtx, rtx));
00586
00587
00588 #else
00589 static inline rtx gen_seq_si PARAMS ((rtx, rtx, rtx));
00590 inline rtx
00591 gen_seq_si(
00592 rtx a ATTRIBUTE_UNUSED,
00593 rtx b ATTRIBUTE_UNUSED,
00594 rtx c ATTRIBUTE_UNUSED)
00595 {
00596 return 0;
00597 }
00598 static inline rtx gen_seq_di PARAMS ((rtx, rtx, rtx));
00599 static inline rtx
00600 gen_seq_di(a, b, c)
00601 rtx a ATTRIBUTE_UNUSED;
00602 rtx b ATTRIBUTE_UNUSED;
00603 rtx c ATTRIBUTE_UNUSED;
00604 {
00605 return 0;
00606 }
00607 static inline rtx gen_sne_si PARAMS ((rtx, rtx, rtx));
00608 static inline rtx
00609 gen_sne_si(a, b, c)
00610 rtx a ATTRIBUTE_UNUSED;
00611 rtx b ATTRIBUTE_UNUSED;
00612 rtx c ATTRIBUTE_UNUSED;
00613 {
00614 return 0;
00615 }
00616 static inline rtx gen_sne_di PARAMS ((rtx, rtx, rtx));
00617 static inline rtx
00618 gen_sne_di(a, b, c)
00619 rtx a ATTRIBUTE_UNUSED;
00620 rtx b ATTRIBUTE_UNUSED;
00621 rtx c ATTRIBUTE_UNUSED;
00622 {
00623 return 0;
00624 }
00625 extern rtx gen_sgt_si PARAMS ((rtx, rtx, rtx));
00626 extern rtx gen_sgt_di PARAMS ((rtx, rtx, rtx));
00627 static inline rtx gen_sge_si PARAMS ((rtx, rtx, rtx));
00628 static inline rtx
00629 gen_sge_si(a, b, c)
00630 rtx a ATTRIBUTE_UNUSED;
00631 rtx b ATTRIBUTE_UNUSED;
00632 rtx c ATTRIBUTE_UNUSED;
00633 {
00634 return 0;
00635 }
00636 static inline rtx gen_sge_di PARAMS ((rtx, rtx, rtx));
00637 static inline rtx
00638 gen_sge_di(a, b, c)
00639 rtx a ATTRIBUTE_UNUSED;
00640 rtx b ATTRIBUTE_UNUSED;
00641 rtx c ATTRIBUTE_UNUSED;
00642 {
00643 return 0;
00644 }
00645 extern rtx gen_slt_si PARAMS ((rtx, rtx, rtx));
00646 extern rtx gen_slt_di PARAMS ((rtx, rtx, rtx));
00647 extern rtx gen_sle_si_const PARAMS ((rtx, rtx, rtx));
00648 extern rtx gen_sle_di_const PARAMS ((rtx, rtx, rtx));
00649 static inline rtx gen_sle_si_reg PARAMS ((rtx, rtx, rtx));
00650 static inline rtx
00651 gen_sle_si_reg(a, b, c)
00652 rtx a ATTRIBUTE_UNUSED;
00653 rtx b ATTRIBUTE_UNUSED;
00654 rtx c ATTRIBUTE_UNUSED;
00655 {
00656 return 0;
00657 }
00658 static inline rtx gen_sle_di_reg PARAMS ((rtx, rtx, rtx));
00659 static inline rtx
00660 gen_sle_di_reg(a, b, c)
00661 rtx a ATTRIBUTE_UNUSED;
00662 rtx b ATTRIBUTE_UNUSED;
00663 rtx c ATTRIBUTE_UNUSED;
00664 {
00665 return 0;
00666 }
00667 extern rtx gen_sgtu_si PARAMS ((rtx, rtx, rtx));
00668 extern rtx gen_sgtu_di PARAMS ((rtx, rtx, rtx));
00669 static inline rtx gen_sgeu_si PARAMS ((rtx, rtx, rtx));
00670 static inline rtx
00671 gen_sgeu_si(a, b, c)
00672 rtx a ATTRIBUTE_UNUSED;
00673 rtx b ATTRIBUTE_UNUSED;
00674 rtx c ATTRIBUTE_UNUSED;
00675 {
00676 return 0;
00677 }
00678 static inline rtx gen_sgeu_di PARAMS ((rtx, rtx, rtx));
00679 static inline rtx
00680 gen_sgeu_di(a, b, c)
00681 rtx a ATTRIBUTE_UNUSED;
00682 rtx b ATTRIBUTE_UNUSED;
00683 rtx c ATTRIBUTE_UNUSED;
00684 {
00685 return 0;
00686 }
00687 extern rtx gen_sltu_si PARAMS ((rtx, rtx, rtx));
00688 extern rtx gen_sltu_di PARAMS ((rtx, rtx, rtx));
00689 extern rtx gen_sleu_si_const PARAMS ((rtx, rtx, rtx));
00690 extern rtx gen_sleu_di_const PARAMS ((rtx, rtx, rtx));
00691 static inline rtx gen_sleu_si_reg PARAMS ((rtx, rtx, rtx));
00692 static inline rtx
00693 gen_sleu_si_reg(a, b, c)
00694 rtx a ATTRIBUTE_UNUSED;
00695 rtx b ATTRIBUTE_UNUSED;
00696 rtx c ATTRIBUTE_UNUSED;
00697 {
00698 return 0;
00699 }
00700 static inline rtx gen_sleu_di_reg PARAMS ((rtx, rtx, rtx));
00701 static inline rtx
00702 gen_sleu_di_reg(a, b, c)
00703 rtx a ATTRIBUTE_UNUSED;
00704 rtx b ATTRIBUTE_UNUSED;
00705 rtx c ATTRIBUTE_UNUSED;
00706 {
00707 return 0;
00708 }
00709 #endif
00710 extern rtx gen_sunordered_df PARAMS ((rtx, rtx, rtx));
00711 extern rtx gen_sunlt_df PARAMS ((rtx, rtx, rtx));
00712 extern rtx gen_suneq_df PARAMS ((rtx, rtx, rtx));
00713 extern rtx gen_sunle_df PARAMS ((rtx, rtx, rtx));
00714 extern rtx gen_seq_df PARAMS ((rtx, rtx, rtx));
00715 extern rtx gen_slt_df PARAMS ((rtx, rtx, rtx));
00716 extern rtx gen_sle_df PARAMS ((rtx, rtx, rtx));
00717 extern rtx gen_sgt_df PARAMS ((rtx, rtx, rtx));
00718 extern rtx gen_sge_df PARAMS ((rtx, rtx, rtx));
00719 extern rtx gen_sunordered_sf PARAMS ((rtx, rtx, rtx));
00720 extern rtx gen_sunlt_sf PARAMS ((rtx, rtx, rtx));
00721 extern rtx gen_suneq_sf PARAMS ((rtx, rtx, rtx));
00722 extern rtx gen_sunle_sf PARAMS ((rtx, rtx, rtx));
00723 extern rtx gen_seq_sf PARAMS ((rtx, rtx, rtx));
00724 extern rtx gen_slt_sf PARAMS ((rtx, rtx, rtx));
00725 extern rtx gen_sle_sf PARAMS ((rtx, rtx, rtx));
00726 extern rtx gen_sgt_sf PARAMS ((rtx, rtx, rtx));
00727 extern rtx gen_sge_sf PARAMS ((rtx, rtx, rtx));
00728 extern rtx gen_jump PARAMS ((rtx));
00729 extern rtx gen_indirect_jump_internal1 PARAMS ((rtx));
00730 extern rtx gen_indirect_jump_internal2 PARAMS ((rtx));
00731 extern rtx gen_tablejump_internal1 PARAMS ((rtx, rtx));
00732 extern rtx gen_tablejump_internal2 PARAMS ((rtx, rtx));
00733 extern rtx gen_casesi_internal PARAMS ((rtx, rtx, rtx));
00734 extern rtx gen_casesi_internal_di PARAMS ((rtx, rtx, rtx));
00735 extern rtx gen_blockage PARAMS ((void));
00736 extern rtx gen_return PARAMS ((void));
00737 extern rtx gen_return_internal PARAMS ((rtx));
00738 extern rtx gen_get_fnaddr PARAMS ((rtx, rtx));
00739 extern rtx gen_eh_set_lr_si PARAMS ((rtx));
00740 extern rtx gen_eh_set_lr_di PARAMS ((rtx));
00741 extern rtx gen_exception_receiver PARAMS ((void));
00742 extern rtx gen_call_internal1 PARAMS ((rtx, rtx, rtx));
00743 extern rtx gen_call_internal2 PARAMS ((rtx, rtx, rtx));
00744 extern rtx gen_call_internal3a PARAMS ((rtx, rtx, rtx));
00745 extern rtx gen_call_internal3b PARAMS ((rtx, rtx, rtx));
00746 extern rtx gen_call_internal3c PARAMS ((rtx, rtx, rtx));
00747 extern rtx gen_call_internal4a PARAMS ((rtx, rtx, rtx));
00748 extern rtx gen_call_internal4b PARAMS ((rtx, rtx, rtx));
00749 extern rtx gen_call_value_internal1 PARAMS ((rtx, rtx, rtx, rtx));
00750 extern rtx gen_call_value_internal2 PARAMS ((rtx, rtx, rtx, rtx));
00751 extern rtx gen_call_value_internal3a PARAMS ((rtx, rtx, rtx, rtx));
00752 extern rtx gen_call_value_internal3b PARAMS ((rtx, rtx, rtx, rtx));
00753 extern rtx gen_call_value_internal3c PARAMS ((rtx, rtx, rtx, rtx));
00754 extern rtx gen_call_value_internal4a PARAMS ((rtx, rtx, rtx, rtx));
00755 extern rtx gen_call_value_internal4b PARAMS ((rtx, rtx, rtx, rtx));
00756 extern rtx gen_call_value_multiple_internal1 PARAMS ((rtx, rtx, rtx, rtx, rtx));
00757 extern rtx gen_call_value_multiple_internal2 PARAMS ((rtx, rtx, rtx, rtx, rtx));
00758 extern rtx gen_prefetch_si_address PARAMS ((rtx, rtx, rtx, rtx));
00759 extern rtx gen_prefetch_si PARAMS ((rtx, rtx, rtx));
00760 extern rtx gen_prefetch_di_address PARAMS ((rtx, rtx, rtx, rtx));
00761 extern rtx gen_prefetch_di PARAMS ((rtx, rtx, rtx));
00762 extern rtx gen_nop PARAMS ((void));
00763 extern rtx gen_consttable_qi PARAMS ((rtx));
00764 extern rtx gen_consttable_hi PARAMS ((rtx));
00765 extern rtx gen_consttable_si PARAMS ((rtx));
00766 extern rtx gen_consttable_di PARAMS ((rtx));
00767 extern rtx gen_consttable_sf PARAMS ((rtx));
00768 extern rtx gen_consttable_df PARAMS ((rtx));
00769 extern rtx gen_align_2 PARAMS ((void));
00770 extern rtx gen_align_4 PARAMS ((void));
00771 extern rtx gen_align_8 PARAMS ((void));
00772 extern rtx gen_leasi PARAMS ((rtx, rtx));
00773 extern rtx gen_leadi PARAMS ((rtx, rtx));
00774 extern rtx gen_conditional_trap PARAMS ((rtx, rtx));
00775 extern rtx gen_addsi3 PARAMS ((rtx, rtx, rtx));
00776 extern rtx gen_adddi3 PARAMS ((rtx, rtx, rtx));
00777 extern rtx gen_subsi3 PARAMS ((rtx, rtx, rtx));
00778 extern rtx gen_subdi3 PARAMS ((rtx, rtx, rtx));
00779 extern rtx gen_muldf3 PARAMS ((rtx, rtx, rtx));
00780 extern rtx gen_mulsf3 PARAMS ((rtx, rtx, rtx));
00781 extern rtx gen_mulsi3 PARAMS ((rtx, rtx, rtx));
00782 extern rtx gen_muldi3 PARAMS ((rtx, rtx, rtx));
00783 extern rtx gen_mulsidi3 PARAMS ((rtx, rtx, rtx));
00784 extern rtx gen_umulsidi3 PARAMS ((rtx, rtx, rtx));
00785 extern rtx gen_smulsi3_highpart PARAMS ((rtx, rtx, rtx));
00786 extern rtx gen_umulsi3_highpart PARAMS ((rtx, rtx, rtx));
00787 extern rtx gen_divmodsi4 PARAMS ((rtx, rtx, rtx, rtx));
00788 extern rtx gen_divmoddi4 PARAMS ((rtx, rtx, rtx, rtx));
00789 extern rtx gen_udivmodsi4 PARAMS ((rtx, rtx, rtx, rtx));
00790 extern rtx gen_udivmoddi4 PARAMS ((rtx, rtx, rtx, rtx));
00791 extern rtx gen_div_trap PARAMS ((rtx, rtx, rtx));
00792 extern rtx gen_divsi3 PARAMS ((rtx, rtx, rtx));
00793 extern rtx gen_divdi3 PARAMS ((rtx, rtx, rtx));
00794 extern rtx gen_modsi3 PARAMS ((rtx, rtx, rtx));
00795 extern rtx gen_moddi3 PARAMS ((rtx, rtx, rtx));
00796 extern rtx gen_udivsi3 PARAMS ((rtx, rtx, rtx));
00797 extern rtx gen_udivdi3 PARAMS ((rtx, rtx, rtx));
00798 extern rtx gen_umodsi3 PARAMS ((rtx, rtx, rtx));
00799 extern rtx gen_umoddi3 PARAMS ((rtx, rtx, rtx));
00800 extern rtx gen_negdi2 PARAMS ((rtx, rtx));
00801 extern rtx gen_andsi3 PARAMS ((rtx, rtx, rtx));
00802 extern rtx gen_anddi3 PARAMS ((rtx, rtx, rtx));
00803 extern rtx gen_iorsi3 PARAMS ((rtx, rtx, rtx));
00804 extern rtx gen_iordi3 PARAMS ((rtx, rtx, rtx));
00805 extern rtx gen_xorsi3 PARAMS ((rtx, rtx, rtx));
00806 extern rtx gen_xordi3 PARAMS ((rtx, rtx, rtx));
00807 extern rtx gen_zero_extendsidi2 PARAMS ((rtx, rtx));
00808 extern rtx gen_zero_extendhisi2 PARAMS ((rtx, rtx));
00809 extern rtx gen_zero_extendhidi2 PARAMS ((rtx, rtx));
00810 extern rtx gen_zero_extendqihi2 PARAMS ((rtx, rtx));
00811 extern rtx gen_zero_extendqisi2 PARAMS ((rtx, rtx));
00812 extern rtx gen_zero_extendqidi2 PARAMS ((rtx, rtx));
00813 extern rtx gen_extendsidi2 PARAMS ((rtx, rtx));
00814 extern rtx gen_extendhidi2 PARAMS ((rtx, rtx));
00815 extern rtx gen_extendhisi2 PARAMS ((rtx, rtx));
00816 extern rtx gen_extendqihi2 PARAMS ((rtx, rtx));
00817 extern rtx gen_extendqisi2 PARAMS ((rtx, rtx));
00818 extern rtx gen_extendqidi2 PARAMS ((rtx, rtx));
00819 extern rtx gen_fix_truncdfsi2 PARAMS ((rtx, rtx));
00820 extern rtx gen_fix_truncsfsi2 PARAMS ((rtx, rtx));
00821 extern rtx gen_fixuns_truncdfsi2 PARAMS ((rtx, rtx));
00822 extern rtx gen_fixuns_truncdfdi2 PARAMS ((rtx, rtx));
00823 extern rtx gen_fixuns_truncsfsi2 PARAMS ((rtx, rtx));
00824 extern rtx gen_fixuns_truncsfdi2 PARAMS ((rtx, rtx));
00825 extern rtx gen_extv PARAMS ((rtx, rtx, rtx, rtx));
00826 extern rtx gen_extzv PARAMS ((rtx, rtx, rtx, rtx));
00827 extern rtx gen_insv PARAMS ((rtx, rtx, rtx, rtx));
00828 extern rtx gen_movdi PARAMS ((rtx, rtx));
00829 extern rtx gen_reload_indi PARAMS ((rtx, rtx, rtx));
00830 extern rtx gen_reload_outdi PARAMS ((rtx, rtx, rtx));
00831 extern rtx gen_movsi PARAMS ((rtx, rtx));
00832 extern rtx gen_reload_outsi PARAMS ((rtx, rtx, rtx));
00833 extern rtx gen_reload_insi PARAMS ((rtx, rtx, rtx));
00834 extern rtx gen_reload_incc PARAMS ((rtx, rtx, rtx));
00835 extern rtx gen_reload_outcc PARAMS ((rtx, rtx, rtx));
00836 extern rtx gen_movhi PARAMS ((rtx, rtx));
00837 extern rtx gen_movqi PARAMS ((rtx, rtx));
00838 extern rtx gen_movsf PARAMS ((rtx, rtx));
00839 extern rtx gen_movdf PARAMS ((rtx, rtx));
00840 extern rtx gen_movstrsi PARAMS ((rtx, rtx, rtx, rtx));
00841 extern rtx gen_ashlsi3 PARAMS ((rtx, rtx, rtx));
00842 extern rtx gen_ashldi3 PARAMS ((rtx, rtx, rtx));
00843 extern rtx gen_ashrsi3 PARAMS ((rtx, rtx, rtx));
00844 extern rtx gen_ashrdi3 PARAMS ((rtx, rtx, rtx));
00845 extern rtx gen_lshrsi3 PARAMS ((rtx, rtx, rtx));
00846 extern rtx gen_lshrdi3 PARAMS ((rtx, rtx, rtx));
00847 extern rtx gen_cmpsi PARAMS ((rtx, rtx));
00848 extern rtx gen_tstsi PARAMS ((rtx));
00849 extern rtx gen_cmpdi PARAMS ((rtx, rtx));
00850 extern rtx gen_tstdi PARAMS ((rtx));
00851 extern rtx gen_cmpdf PARAMS ((rtx, rtx));
00852 extern rtx gen_cmpsf PARAMS ((rtx, rtx));
00853 extern rtx gen_bunordered PARAMS ((rtx));
00854 extern rtx gen_bordered PARAMS ((rtx));
00855 extern rtx gen_bunlt PARAMS ((rtx));
00856 extern rtx gen_bunge PARAMS ((rtx));
00857 extern rtx gen_buneq PARAMS ((rtx));
00858 extern rtx gen_bltgt PARAMS ((rtx));
00859 extern rtx gen_bunle PARAMS ((rtx));
00860 extern rtx gen_bungt PARAMS ((rtx));
00861 extern rtx gen_beq PARAMS ((rtx));
00862 extern rtx gen_bne PARAMS ((rtx));
00863 extern rtx gen_bgt PARAMS ((rtx));
00864 extern rtx gen_bge PARAMS ((rtx));
00865 extern rtx gen_blt PARAMS ((rtx));
00866 extern rtx gen_ble PARAMS ((rtx));
00867 extern rtx gen_bgtu PARAMS ((rtx));
00868 extern rtx gen_bgeu PARAMS ((rtx));
00869 extern rtx gen_bltu PARAMS ((rtx));
00870 extern rtx gen_bleu PARAMS ((rtx));
00871 extern rtx gen_seq PARAMS ((rtx));
00872 extern rtx gen_sne PARAMS ((rtx));
00873 extern rtx gen_sgt PARAMS ((rtx));
00874 extern rtx gen_sge PARAMS ((rtx));
00875 extern rtx gen_slt PARAMS ((rtx));
00876 extern rtx gen_sle PARAMS ((rtx));
00877 extern rtx gen_sgtu PARAMS ((rtx));
00878 extern rtx gen_sgeu PARAMS ((rtx));
00879 extern rtx gen_sltu PARAMS ((rtx));
00880 extern rtx gen_sleu PARAMS ((rtx));
00881 extern rtx gen_indirect_jump PARAMS ((rtx));
00882 extern rtx gen_tablejump PARAMS ((rtx, rtx));
00883 extern rtx gen_tablejump_internal3 PARAMS ((rtx, rtx));
00884 extern rtx gen_tablejump_mips161 PARAMS ((rtx, rtx));
00885 extern rtx gen_tablejump_mips162 PARAMS ((rtx, rtx));
00886 extern rtx gen_tablejump_internal4 PARAMS ((rtx, rtx));
00887 extern rtx gen_casesi PARAMS ((rtx, rtx, rtx, rtx, rtx));
00888 extern rtx gen_builtin_setjmp_setup PARAMS ((rtx));
00889 extern rtx gen_builtin_setjmp_setup_32 PARAMS ((rtx));
00890 extern rtx gen_builtin_setjmp_setup_64 PARAMS ((rtx));
00891 extern rtx gen_builtin_longjmp PARAMS ((rtx));
00892 extern rtx gen_prologue PARAMS ((void));
00893 extern rtx gen_epilogue PARAMS ((void));
00894 extern rtx gen_eh_return PARAMS ((rtx));
00895 #define GEN_CALL(A, B, C, D) gen_call ((A), (B), (C), (D))
00896 extern rtx gen_call PARAMS ((rtx, rtx, rtx, rtx));
00897 extern rtx gen_call_internal0 PARAMS ((rtx, rtx, rtx));
00898 #define GEN_CALL_VALUE(A, B, C, D, E) gen_call_value ((A), (B), (C), (D))
00899 extern rtx gen_call_value PARAMS ((rtx, rtx, rtx, rtx));
00900 extern rtx gen_call_value_internal0 PARAMS ((rtx, rtx, rtx, rtx));
00901 extern rtx gen_call_value_multiple_internal0 PARAMS ((rtx, rtx, rtx, rtx, rtx));
00902 extern rtx gen_untyped_call PARAMS ((rtx, rtx, rtx));
00903 extern rtx gen_prefetch PARAMS ((rtx, rtx, rtx));
00904 extern rtx gen_movsicc PARAMS ((rtx, rtx, rtx, rtx));
00905 extern rtx gen_movdicc PARAMS ((rtx, rtx, rtx, rtx));
00906 extern rtx gen_movsfcc PARAMS ((rtx, rtx, rtx, rtx));
00907 extern rtx gen_movdfcc PARAMS ((rtx, rtx, rtx, rtx));
00908
00909 #endif