osprey-gcc/gcc/optabs.h File Reference

#include "insn-codes.h"

Include dependency graph for optabs.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define GEN_FCN(CODE)   (insn_data[CODE].genfun)
#define add_optab   (optab_table[OTI_add])
#define sub_optab   (optab_table[OTI_sub])
#define smul_optab   (optab_table[OTI_smul])
#define addv_optab   (optab_table[OTI_addv])
#define subv_optab   (optab_table[OTI_subv])
#define smul_highpart_optab   (optab_table[OTI_smul_highpart])
#define umul_highpart_optab   (optab_table[OTI_umul_highpart])
#define smul_widen_optab   (optab_table[OTI_smul_widen])
#define umul_widen_optab   (optab_table[OTI_umul_widen])
#define sdiv_optab   (optab_table[OTI_sdiv])
#define smulv_optab   (optab_table[OTI_smulv])
#define sdivv_optab   (optab_table[OTI_sdivv])
#define sdivmod_optab   (optab_table[OTI_sdivmod])
#define udiv_optab   (optab_table[OTI_udiv])
#define udivmod_optab   (optab_table[OTI_udivmod])
#define smod_optab   (optab_table[OTI_smod])
#define umod_optab   (optab_table[OTI_umod])
#define fmod_optab   (optab_table[OTI_fmod])
#define drem_optab   (optab_table[OTI_drem])
#define ftrunc_optab   (optab_table[OTI_ftrunc])
#define and_optab   (optab_table[OTI_and])
#define ior_optab   (optab_table[OTI_ior])
#define xor_optab   (optab_table[OTI_xor])
#define ashl_optab   (optab_table[OTI_ashl])
#define lshr_optab   (optab_table[OTI_lshr])
#define ashr_optab   (optab_table[OTI_ashr])
#define rotl_optab   (optab_table[OTI_rotl])
#define rotr_optab   (optab_table[OTI_rotr])
#define smin_optab   (optab_table[OTI_smin])
#define smax_optab   (optab_table[OTI_smax])
#define umin_optab   (optab_table[OTI_umin])
#define umax_optab   (optab_table[OTI_umax])
#define pow_optab   (optab_table[OTI_pow])
#define atan2_optab   (optab_table[OTI_atan2])
#define mov_optab   (optab_table[OTI_mov])
#define movstrict_optab   (optab_table[OTI_movstrict])
#define movmisalign_optab   (optab_table[OTI_movmisalign])
#define neg_optab   (optab_table[OTI_neg])
#define negv_optab   (optab_table[OTI_negv])
#define abs_optab   (optab_table[OTI_abs])
#define absv_optab   (optab_table[OTI_absv])
#define one_cmpl_optab   (optab_table[OTI_one_cmpl])
#define ffs_optab   (optab_table[OTI_ffs])
#define clz_optab   (optab_table[OTI_clz])
#define ctz_optab   (optab_table[OTI_ctz])
#define popcount_optab   (optab_table[OTI_popcount])
#define parity_optab   (optab_table[OTI_parity])
#define sqrt_optab   (optab_table[OTI_sqrt])
#define sincos_optab   (optab_table[OTI_sincos])
#define sin_optab   (optab_table[OTI_sin])
#define asin_optab   (optab_table[OTI_asin])
#define cos_optab   (optab_table[OTI_cos])
#define acos_optab   (optab_table[OTI_acos])
#define exp_optab   (optab_table[OTI_exp])
#define exp10_optab   (optab_table[OTI_exp10])
#define exp2_optab   (optab_table[OTI_exp2])
#define expm1_optab   (optab_table[OTI_expm1])
#define ldexp_optab   (optab_table[OTI_ldexp])
#define logb_optab   (optab_table[OTI_logb])
#define ilogb_optab   (optab_table[OTI_ilogb])
#define log_optab   (optab_table[OTI_log])
#define log10_optab   (optab_table[OTI_log10])
#define log2_optab   (optab_table[OTI_log2])
#define log1p_optab   (optab_table[OTI_log1p])
#define floor_optab   (optab_table[OTI_floor])
#define ceil_optab   (optab_table[OTI_ceil])
#define btrunc_optab   (optab_table[OTI_btrunc])
#define round_optab   (optab_table[OTI_round])
#define nearbyint_optab   (optab_table[OTI_nearbyint])
#define rint_optab   (optab_table[OTI_rint])
#define tan_optab   (optab_table[OTI_tan])
#define atan_optab   (optab_table[OTI_atan])
#define copysign_optab   (optab_table[OTI_copysign])
#define cmp_optab   (optab_table[OTI_cmp])
#define ucmp_optab   (optab_table[OTI_ucmp])
#define tst_optab   (optab_table[OTI_tst])
#define eq_optab   (optab_table[OTI_eq])
#define ne_optab   (optab_table[OTI_ne])
#define gt_optab   (optab_table[OTI_gt])
#define ge_optab   (optab_table[OTI_ge])
#define lt_optab   (optab_table[OTI_lt])
#define le_optab   (optab_table[OTI_le])
#define unord_optab   (optab_table[OTI_unord])
#define strlen_optab   (optab_table[OTI_strlen])
#define cbranch_optab   (optab_table[OTI_cbranch])
#define cmov_optab   (optab_table[OTI_cmov])
#define cstore_optab   (optab_table[OTI_cstore])
#define push_optab   (optab_table[OTI_push])
#define addcc_optab   (optab_table[OTI_addcc])
#define vec_set_optab   (optab_table[OTI_vec_set])
#define vec_extract_optab   (optab_table[OTI_vec_extract])
#define vec_init_optab   (optab_table[OTI_vec_init])
#define vec_realign_load_optab   (optab_table[OTI_vec_realign_load])
#define powi_optab   (optab_table[OTI_powi])
#define sext_optab   (convert_optab_table[CTI_sext])
#define zext_optab   (convert_optab_table[CTI_zext])
#define trunc_optab   (convert_optab_table[CTI_trunc])
#define sfix_optab   (convert_optab_table[CTI_sfix])
#define ufix_optab   (convert_optab_table[CTI_ufix])
#define sfixtrunc_optab   (convert_optab_table[CTI_sfixtrunc])
#define ufixtrunc_optab   (convert_optab_table[CTI_ufixtrunc])
#define sfloat_optab   (convert_optab_table[CTI_sfloat])
#define ufloat_optab   (convert_optab_table[CTI_ufloat])

Typedefs

typedef struct optaboptab
typedef struct convert_optabconvert_optab
typedef rtx(* rtxfun )(rtx)

Enumerations

enum  optab_index {
  OTI_add, OTI_addv, OTI_sub, OTI_subv,
  OTI_smul, OTI_smulv, OTI_smul_highpart, OTI_umul_highpart,
  OTI_smul_widen, OTI_umul_widen, OTI_sdiv, OTI_sdivv,
  OTI_sdivmod, OTI_udiv, OTI_udivmod, OTI_smod,
  OTI_umod, OTI_ftrunc, OTI_and, OTI_ior,
  OTI_xor, OTI_ashl, OTI_lshr, OTI_ashr,
  OTI_rotl, OTI_rotr, OTI_smin, OTI_smax,
  OTI_umin, OTI_umax, OTI_mov, OTI_movstrict,
  OTI_neg, OTI_negv, OTI_abs, OTI_absv,
  OTI_one_cmpl, OTI_ffs, OTI_sqrt, OTI_sin,
  OTI_cos, OTI_exp, OTI_log, OTI_cmp,
  OTI_ucmp, OTI_tst, OTI_strlen, OTI_cbranch,
  OTI_cmov, OTI_cstore, OTI_push, OTI_MAX,
  OTI_add, OTI_addv, OTI_sub, OTI_subv,
  OTI_smul, OTI_smulv, OTI_smul_highpart, OTI_umul_highpart,
  OTI_smul_widen, OTI_umul_widen, OTI_sdiv, OTI_sdivv,
  OTI_sdivmod, OTI_udiv, OTI_udivmod, OTI_smod,
  OTI_umod, OTI_ftrunc, OTI_and, OTI_ior,
  OTI_xor, OTI_ashl, OTI_lshr, OTI_ashr,
  OTI_rotl, OTI_rotr, OTI_smin, OTI_smax,
  OTI_umin, OTI_umax, OTI_mov, OTI_movstrict,
  OTI_neg, OTI_negv, OTI_abs, OTI_absv,
  OTI_one_cmpl, OTI_ffs, OTI_sqrt, OTI_sin,
  OTI_cos, OTI_exp, OTI_log, OTI_cmp,
  OTI_ucmp, OTI_tst, OTI_strlen, OTI_cbranch,
  OTI_cmov, OTI_cstore, OTI_push, OTI_MAX,
  OTI_add, OTI_addv, OTI_sub, OTI_subv,
  OTI_smul, OTI_smulv, OTI_smul_highpart, OTI_umul_highpart,
  OTI_smul_widen, OTI_umul_widen, OTI_sdiv, OTI_sdivv,
  OTI_sdivmod, OTI_udiv, OTI_udivmod, OTI_smod,
  OTI_umod, OTI_fmod, OTI_drem, OTI_ftrunc,
  OTI_and, OTI_ior, OTI_xor, OTI_ashl,
  OTI_lshr, OTI_ashr, OTI_rotl, OTI_rotr,
  OTI_smin, OTI_smax, OTI_umin, OTI_umax,
  OTI_pow, OTI_atan2, OTI_mov, OTI_movstrict,
  OTI_movmisalign, OTI_neg, OTI_negv, OTI_abs,
  OTI_absv, OTI_one_cmpl, OTI_ffs, OTI_clz,
  OTI_ctz, OTI_popcount, OTI_parity, OTI_sqrt,
  OTI_sincos, OTI_sin, OTI_asin, OTI_cos,
  OTI_acos, OTI_exp, OTI_exp10, OTI_exp2,
  OTI_expm1, OTI_ldexp, OTI_logb, OTI_ilogb,
  OTI_log, OTI_log10, OTI_log2, OTI_log1p,
  OTI_floor, OTI_ceil, OTI_btrunc, OTI_round,
  OTI_nearbyint, OTI_rint, OTI_tan, OTI_atan,
  OTI_copysign, OTI_cmp, OTI_ucmp, OTI_tst,
  OTI_eq, OTI_ne, OTI_gt, OTI_ge,
  OTI_lt, OTI_le, OTI_unord, OTI_strlen,
  OTI_cbranch, OTI_cmov, OTI_cstore, OTI_push,
  OTI_addcc, OTI_vec_set, OTI_vec_extract, OTI_vec_init,
  OTI_vec_realign_load, OTI_powi, OTI_MAX, OTI_add,
  OTI_addv, OTI_sub, OTI_subv, OTI_smul,
  OTI_smulv, OTI_smul_highpart, OTI_umul_highpart, OTI_smul_widen,
  OTI_umul_widen, OTI_usmul_widen, OTI_sdiv, OTI_sdivv,
  OTI_sdivmod, OTI_udiv, OTI_udivmod, OTI_smod,
  OTI_umod, OTI_fmod, OTI_drem, OTI_ftrunc,
  OTI_and, OTI_ior, OTI_xor, OTI_ashl,
  OTI_lshr, OTI_ashr, OTI_rotl, OTI_rotr,
  OTI_smin, OTI_smax, OTI_umin, OTI_umax,
  OTI_pow, OTI_atan2, OTI_mov, OTI_movstrict,
  OTI_movmisalign, OTI_neg, OTI_negv, OTI_abs,
  OTI_absv, OTI_one_cmpl, OTI_ffs, OTI_clz,
  OTI_ctz, OTI_popcount, OTI_parity, OTI_sqrt,
  OTI_sincos, OTI_sin, OTI_asin, OTI_cos,
  OTI_acos, OTI_exp, OTI_exp10, OTI_exp2,
  OTI_expm1, OTI_ldexp, OTI_logb, OTI_ilogb,
  OTI_log, OTI_log10, OTI_log2, OTI_log1p,
  OTI_floor, OTI_lfloor, OTI_ceil, OTI_lceil,
  OTI_btrunc, OTI_round, OTI_nearbyint, OTI_rint,
  OTI_lrint, OTI_tan, OTI_atan, OTI_copysign,
  OTI_cmp, OTI_ucmp, OTI_tst, OTI_eq,
  OTI_ne, OTI_gt, OTI_ge, OTI_lt,
  OTI_le, OTI_unord, OTI_strlen, OTI_cbranch,
  OTI_cmov, OTI_cstore, OTI_push, OTI_addcc,
  OTI_reduc_smax, OTI_reduc_umax, OTI_reduc_smin, OTI_reduc_umin,
  OTI_reduc_splus, OTI_reduc_uplus, OTI_ssum_widen, OTI_usum_widen,
  OTI_sdot_prod, OTI_udot_prod, OTI_vec_set, OTI_vec_extract,
  OTI_vec_init, OTI_vec_shl, OTI_vec_shr, OTI_vec_realign_load,
  OTI_powi, OTI_MAX
}
enum  convert_optab_index {
  CTI_sext, CTI_zext, CTI_trunc, CTI_sfix,
  CTI_ufix, CTI_sfixtrunc, CTI_ufixtrunc, CTI_sfloat,
  CTI_ufloat, CTI_MAX, COI_sext, COI_zext,
  COI_trunc, COI_sfix, COI_ufix, COI_sfixtrunc,
  COI_ufixtrunc, COI_sfloat, COI_ufloat, COI_MAX
}
enum  can_compare_purpose {
  ccp_jump, ccp_cmov, ccp_store_flag, ccp_jump,
  ccp_cmov, ccp_store_flag, ccp_jump, ccp_cmov,
  ccp_store_flag, ccp_jump, ccp_cmov, ccp_store_flag
}

Functions/Subroutines

struct optab_handlers GTY (())
rtx expand_ternary_op (enum machine_mode mode, optab ternary_optab, rtx op0, rtx op1, rtx op2, rtx target, int unsignedp)
rtx expand_binop (enum machine_mode, optab, rtx, rtx, rtx, int, enum optab_methods)
bool force_expand_binop (enum machine_mode, optab, rtx, rtx, rtx, int, enum optab_methods)
rtx sign_expand_binop (enum machine_mode, optab, optab, rtx, rtx, rtx, int, enum optab_methods)
int expand_twoval_unop (optab, rtx, rtx, rtx, int)
int expand_twoval_binop (optab, rtx, rtx, rtx, rtx, int)
bool expand_twoval_binop_libfunc (optab, rtx, rtx, rtx, rtx, enum rtx_code)
rtx expand_unop (enum machine_mode, optab, rtx, rtx, int)
rtx expand_abs_nojump (enum machine_mode, rtx, rtx, int)
rtx expand_abs (enum machine_mode, rtx, rtx, int, int)
rtx expand_copysign (rtx, rtx, rtx)
rtx expand_copysign_absneg (enum machine_mode, rtx, rtx, rtx, int, bool)
void emit_unop_insn (int, rtx, rtx, enum rtx_code)
rtx emit_no_conflict_block (rtx, rtx, rtx, rtx, rtx)
void emit_cmp_insn (rtx, rtx, enum rtx_code, rtx, enum machine_mode, int)
optab optab_for_tree_code (enum tree_code, tree)
int can_compare_p (enum rtx_code, enum machine_mode, enum can_compare_purpose)
enum insn_code can_extend_p (enum machine_mode, enum machine_mode, int)
rtx gen_extend_insn (rtx, rtx, enum machine_mode, enum machine_mode, int)
void set_optab_libfunc (optab, enum machine_mode, const char *)
void set_conv_libfunc (convert_optab, enum machine_mode, enum machine_mode, const char *)
void expand_float (rtx, rtx, int)
void expand_fix (rtx, rtx, int)
bool expand_vec_cond_expr_p (tree, enum machine_mode)
rtx expand_vec_cond_expr (tree, rtx)

Variables

enum insn_code reload_in_optab [NUM_MACHINE_MODES]
enum insn_code reload_out_optab [NUM_MACHINE_MODES]
rtxfun bcc_gen_fctn [NUM_RTX_CODE]
enum insn_code setcc_gen_code [NUM_RTX_CODE]
enum insn_code vcond_gen_code [NUM_MACHINE_MODES]
enum insn_code vcondu_gen_code [NUM_MACHINE_MODES]
enum insn_code movmem_optab [NUM_MACHINE_MODES]
enum insn_code clrmem_optab [NUM_MACHINE_MODES]
enum insn_code cmpstr_optab [NUM_MACHINE_MODES]
enum insn_code cmpmem_optab [NUM_MACHINE_MODES]


Define Documentation

#define abs_optab   (optab_table[OTI_abs])

Definition at line 289 of file optabs.h.

#define absv_optab   (optab_table[OTI_absv])

Definition at line 290 of file optabs.h.

#define acos_optab   (optab_table[OTI_acos])

Definition at line 302 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define add_optab   (optab_table[OTI_add])

Definition at line 248 of file optabs.h.

#define addcc_optab   (optab_table[OTI_addcc])

Definition at line 342 of file optabs.h.

Referenced by emit_conditional_add(), and init_optabs().

#define addv_optab   (optab_table[OTI_addv])

Definition at line 251 of file optabs.h.

#define and_optab   (optab_table[OTI_and])

Definition at line 268 of file optabs.h.

#define ashl_optab   (optab_table[OTI_ashl])

Definition at line 271 of file optabs.h.

#define ashr_optab   (optab_table[OTI_ashr])

Definition at line 273 of file optabs.h.

#define asin_optab   (optab_table[OTI_asin])

Definition at line 300 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define atan2_optab   (optab_table[OTI_atan2])

Definition at line 281 of file optabs.h.

Referenced by expand_builtin_mathfn_2(), and init_optabs().

#define atan_optab   (optab_table[OTI_atan])

Definition at line 321 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define btrunc_optab   (optab_table[OTI_btrunc])

Definition at line 316 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define cbranch_optab   (optab_table[OTI_cbranch])

Definition at line 338 of file optabs.h.

#define ceil_optab   (optab_table[OTI_ceil])

Definition at line 315 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define clz_optab   (optab_table[OTI_clz])

Definition at line 293 of file optabs.h.

Referenced by expand_builtin(), expand_unop(), init_optabs(), and widen_clz().

#define cmov_optab   (optab_table[OTI_cmov])

Definition at line 339 of file optabs.h.

#define cmp_optab   (optab_table[OTI_cmp])

Definition at line 324 of file optabs.h.

#define copysign_optab   (optab_table[OTI_copysign])

Definition at line 322 of file optabs.h.

Referenced by expand_copysign(), and init_optabs().

#define cos_optab   (optab_table[OTI_cos])

Definition at line 301 of file optabs.h.

#define cstore_optab   (optab_table[OTI_cstore])

Definition at line 340 of file optabs.h.

#define ctz_optab   (optab_table[OTI_ctz])

Definition at line 294 of file optabs.h.

Referenced by expand_builtin(), expand_unop(), and init_optabs().

#define drem_optab   (optab_table[OTI_drem])

Definition at line 266 of file optabs.h.

Referenced by expand_builtin_mathfn_2(), and init_optabs().

#define eq_optab   (optab_table[OTI_eq])

#define exp10_optab   (optab_table[OTI_exp10])

Definition at line 304 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define exp2_optab   (optab_table[OTI_exp2])

Definition at line 305 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define exp_optab   (optab_table[OTI_exp])

Definition at line 303 of file optabs.h.

#define expm1_optab   (optab_table[OTI_expm1])

Definition at line 306 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define ffs_optab   (optab_table[OTI_ffs])

Definition at line 292 of file optabs.h.

#define floor_optab   (optab_table[OTI_floor])

Definition at line 314 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define fmod_optab   (optab_table[OTI_fmod])

Definition at line 265 of file optabs.h.

Referenced by expand_builtin_mathfn_2(), and init_optabs().

#define ftrunc_optab   (optab_table[OTI_ftrunc])

Definition at line 267 of file optabs.h.

#define ge_optab   (optab_table[OTI_ge])

#define GEN_FCN ( CODE   )     (insn_data[CODE].genfun)

Definition at line 66 of file optabs.h.

#define gt_optab   (optab_table[OTI_gt])

#define ilogb_optab   (optab_table[OTI_ilogb])

Definition at line 309 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define ior_optab   (optab_table[OTI_ior])

Definition at line 269 of file optabs.h.

#define ldexp_optab   (optab_table[OTI_ldexp])

Definition at line 307 of file optabs.h.

Referenced by expand_builtin_mathfn_2(), and init_optabs().

#define le_optab   (optab_table[OTI_le])

#define log10_optab   (optab_table[OTI_log10])

Definition at line 311 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define log1p_optab   (optab_table[OTI_log1p])

Definition at line 313 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define log2_optab   (optab_table[OTI_log2])

Definition at line 312 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define log_optab   (optab_table[OTI_log])

Definition at line 310 of file optabs.h.

#define logb_optab   (optab_table[OTI_logb])

Definition at line 308 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define lshr_optab   (optab_table[OTI_lshr])

Definition at line 272 of file optabs.h.

#define lt_optab   (optab_table[OTI_lt])

#define mov_optab   (optab_table[OTI_mov])

Definition at line 283 of file optabs.h.

#define movmisalign_optab   (optab_table[OTI_movmisalign])

Definition at line 285 of file optabs.h.

Referenced by expand_expr_real_1(), init_optabs(), and vect_supportable_dr_alignment().

#define movstrict_optab   (optab_table[OTI_movstrict])

Definition at line 284 of file optabs.h.

#define ne_optab   (optab_table[OTI_ne])

#define nearbyint_optab   (optab_table[OTI_nearbyint])

Definition at line 318 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define neg_optab   (optab_table[OTI_neg])

Definition at line 287 of file optabs.h.

#define negv_optab   (optab_table[OTI_negv])

Definition at line 288 of file optabs.h.

#define one_cmpl_optab   (optab_table[OTI_one_cmpl])

Definition at line 291 of file optabs.h.

#define parity_optab   (optab_table[OTI_parity])

Definition at line 296 of file optabs.h.

Referenced by expand_builtin(), expand_unop(), and init_optabs().

#define popcount_optab   (optab_table[OTI_popcount])

Definition at line 295 of file optabs.h.

Referenced by expand_builtin(), expand_parity(), expand_unop(), and init_optabs().

#define pow_optab   (optab_table[OTI_pow])

Definition at line 280 of file optabs.h.

Referenced by expand_builtin_mathfn_2(), and init_optabs().

#define powi_optab   (optab_table[OTI_powi])

Definition at line 349 of file optabs.h.

Referenced by expand_builtin_powi(), and init_optabs().

#define push_optab   (optab_table[OTI_push])

Definition at line 341 of file optabs.h.

#define rint_optab   (optab_table[OTI_rint])

Definition at line 319 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define rotl_optab   (optab_table[OTI_rotl])

Definition at line 274 of file optabs.h.

#define rotr_optab   (optab_table[OTI_rotr])

Definition at line 275 of file optabs.h.

#define round_optab   (optab_table[OTI_round])

Definition at line 317 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define sdiv_optab   (optab_table[OTI_sdiv])

Definition at line 257 of file optabs.h.

#define sdivmod_optab   (optab_table[OTI_sdivmod])

Definition at line 260 of file optabs.h.

#define sdivv_optab   (optab_table[OTI_sdivv])

Definition at line 259 of file optabs.h.

#define sext_optab   (convert_optab_table[CTI_sext])

#define sfix_optab   (convert_optab_table[CTI_sfix])

#define sfixtrunc_optab   (convert_optab_table[CTI_sfixtrunc])

Definition at line 377 of file optabs.h.

Referenced by can_fix_p(), and init_optabs().

#define sfloat_optab   (convert_optab_table[CTI_sfloat])

#define sin_optab   (optab_table[OTI_sin])

Definition at line 299 of file optabs.h.

#define sincos_optab   (optab_table[OTI_sincos])

Definition at line 298 of file optabs.h.

Referenced by expand_builtin_mathfn_3(), expand_builtin_sincos(), and init_optabs().

#define smax_optab   (optab_table[OTI_smax])

Definition at line 277 of file optabs.h.

#define smin_optab   (optab_table[OTI_smin])

Definition at line 276 of file optabs.h.

#define smod_optab   (optab_table[OTI_smod])

Definition at line 263 of file optabs.h.

#define smul_highpart_optab   (optab_table[OTI_smul_highpart])

Definition at line 253 of file optabs.h.

#define smul_optab   (optab_table[OTI_smul])

Definition at line 250 of file optabs.h.

#define smul_widen_optab   (optab_table[OTI_smul_widen])

Definition at line 255 of file optabs.h.

#define smulv_optab   (optab_table[OTI_smulv])

Definition at line 258 of file optabs.h.

#define sqrt_optab   (optab_table[OTI_sqrt])

Definition at line 297 of file optabs.h.

#define strlen_optab   (optab_table[OTI_strlen])

Definition at line 336 of file optabs.h.

#define sub_optab   (optab_table[OTI_sub])

Definition at line 249 of file optabs.h.

#define subv_optab   (optab_table[OTI_subv])

Definition at line 252 of file optabs.h.

#define tan_optab   (optab_table[OTI_tan])

Definition at line 320 of file optabs.h.

Referenced by expand_builtin_mathfn(), and init_optabs().

#define trunc_optab   (convert_optab_table[CTI_trunc])

#define tst_optab   (optab_table[OTI_tst])

Definition at line 326 of file optabs.h.

#define ucmp_optab   (optab_table[OTI_ucmp])

Definition at line 325 of file optabs.h.

#define udiv_optab   (optab_table[OTI_udiv])

Definition at line 261 of file optabs.h.

#define udivmod_optab   (optab_table[OTI_udivmod])

Definition at line 262 of file optabs.h.

#define ufix_optab   (convert_optab_table[CTI_ufix])

#define ufixtrunc_optab   (convert_optab_table[CTI_ufixtrunc])

Definition at line 378 of file optabs.h.

Referenced by can_fix_p(), and init_optabs().

#define ufloat_optab   (convert_optab_table[CTI_ufloat])

#define umax_optab   (optab_table[OTI_umax])

Definition at line 279 of file optabs.h.

#define umin_optab   (optab_table[OTI_umin])

Definition at line 278 of file optabs.h.

#define umod_optab   (optab_table[OTI_umod])

Definition at line 264 of file optabs.h.

#define umul_highpart_optab   (optab_table[OTI_umul_highpart])

Definition at line 254 of file optabs.h.

#define umul_widen_optab   (optab_table[OTI_umul_widen])

Definition at line 256 of file optabs.h.

#define unord_optab   (optab_table[OTI_unord])

Definition at line 334 of file optabs.h.

Referenced by arm_init_libfuncs(), init_optabs(), and rs6000_init_libfuncs().

#define vec_extract_optab   (optab_table[OTI_vec_extract])

Definition at line 345 of file optabs.h.

Referenced by extract_bit_field(), and init_optabs().

#define vec_init_optab   (optab_table[OTI_vec_init])

Definition at line 346 of file optabs.h.

Referenced by init_optabs(), and store_constructor().

#define vec_realign_load_optab   (optab_table[OTI_vec_realign_load])

Definition at line 347 of file optabs.h.

Referenced by init_optabs(), optab_for_tree_code(), and vect_supportable_dr_alignment().

#define vec_set_optab   (optab_table[OTI_vec_set])

Definition at line 344 of file optabs.h.

Referenced by init_optabs(), and store_bit_field().

#define xor_optab   (optab_table[OTI_xor])

Definition at line 270 of file optabs.h.

#define zext_optab   (convert_optab_table[CTI_zext])

Definition at line 373 of file optabs.h.

Referenced by can_extend_p(), and init_optabs().


Typedef Documentation

Definition at line 62 of file optabs.h.

typedef struct optab* optab

Definition at line 52 of file optabs.h.

typedef rtx(* rtxfun)(rtx)

Definition at line 392 of file optabs.h.


Enumeration Type Documentation

Enumerator:
ccp_jump 
ccp_cmov 
ccp_store_flag 
ccp_jump 
ccp_cmov 
ccp_store_flag 
ccp_jump 
ccp_cmov 
ccp_store_flag 
ccp_jump 
ccp_cmov 
ccp_store_flag 

Definition at line 482 of file optabs.h.

Enumerator:
CTI_sext 
CTI_zext 
CTI_trunc 
CTI_sfix 
CTI_ufix 
CTI_sfixtrunc 
CTI_ufixtrunc 
CTI_sfloat 
CTI_ufloat 
CTI_MAX 
COI_sext 
COI_zext 
COI_trunc 
COI_sfix 
COI_ufix 
COI_sfixtrunc 
COI_ufixtrunc 
COI_sfloat 
COI_ufloat 
COI_MAX 

Definition at line 352 of file optabs.h.

Enumerator:
OTI_add 
OTI_addv 
OTI_sub 
OTI_subv 
OTI_smul 
OTI_smulv 
OTI_smul_highpart 
OTI_umul_highpart 
OTI_smul_widen 
OTI_umul_widen 
OTI_sdiv 
OTI_sdivv 
OTI_sdivmod 
OTI_udiv 
OTI_udivmod 
OTI_smod 
OTI_umod 
OTI_ftrunc 
OTI_and 
OTI_ior 
OTI_xor 
OTI_ashl 
OTI_lshr 
OTI_ashr 
OTI_rotl 
OTI_rotr 
OTI_smin 
OTI_smax 
OTI_umin 
OTI_umax 
OTI_mov 
OTI_movstrict 
OTI_neg 
OTI_negv 
OTI_abs 
OTI_absv 
OTI_one_cmpl 
OTI_ffs 
OTI_sqrt 
OTI_sin 
OTI_cos 
OTI_exp 
OTI_log 
OTI_cmp 
OTI_ucmp 
OTI_tst 
OTI_strlen 
OTI_cbranch 
OTI_cmov 
OTI_cstore 
OTI_push 
OTI_MAX 
OTI_add 
OTI_addv 
OTI_sub 
OTI_subv 
OTI_smul 
OTI_smulv 
OTI_smul_highpart 
OTI_umul_highpart 
OTI_smul_widen 
OTI_umul_widen 
OTI_sdiv 
OTI_sdivv 
OTI_sdivmod 
OTI_udiv 
OTI_udivmod 
OTI_smod 
OTI_umod 
OTI_ftrunc 
OTI_and 
OTI_ior 
OTI_xor 
OTI_ashl 
OTI_lshr 
OTI_ashr 
OTI_rotl 
OTI_rotr 
OTI_smin 
OTI_smax 
OTI_umin 
OTI_umax 
OTI_mov 
OTI_movstrict 
OTI_neg 
OTI_negv 
OTI_abs 
OTI_absv 
OTI_one_cmpl 
OTI_ffs 
OTI_sqrt 
OTI_sin 
OTI_cos 
OTI_exp 
OTI_log 
OTI_cmp 
OTI_ucmp 
OTI_tst 
OTI_strlen 
OTI_cbranch 
OTI_cmov 
OTI_cstore 
OTI_push 
OTI_MAX 
OTI_add 
OTI_addv 
OTI_sub 
OTI_subv 
OTI_smul 
OTI_smulv 
OTI_smul_highpart 
OTI_umul_highpart 
OTI_smul_widen 
OTI_umul_widen 
OTI_sdiv 
OTI_sdivv 
OTI_sdivmod 
OTI_udiv 
OTI_udivmod 
OTI_smod 
OTI_umod 
OTI_fmod 
OTI_drem 
OTI_ftrunc 
OTI_and 
OTI_ior 
OTI_xor 
OTI_ashl 
OTI_lshr 
OTI_ashr 
OTI_rotl 
OTI_rotr 
OTI_smin 
OTI_smax 
OTI_umin 
OTI_umax 
OTI_pow 
OTI_atan2 
OTI_mov 
OTI_movstrict 
OTI_movmisalign 
OTI_neg 
OTI_negv 
OTI_abs 
OTI_absv 
OTI_one_cmpl 
OTI_ffs 
OTI_clz 
OTI_ctz 
OTI_popcount 
OTI_parity 
OTI_sqrt 
OTI_sincos 
OTI_sin 
OTI_asin 
OTI_cos 
OTI_acos 
OTI_exp 
OTI_exp10 
OTI_exp2 
OTI_expm1 
OTI_ldexp 
OTI_logb 
OTI_ilogb 
OTI_log 
OTI_log10 
OTI_log2 
OTI_log1p 
OTI_floor 
OTI_ceil 
OTI_btrunc 
OTI_round 
OTI_nearbyint 
OTI_rint 
OTI_tan 
OTI_atan 
OTI_copysign 
OTI_cmp 
OTI_ucmp 
OTI_tst 
OTI_eq 
OTI_ne 
OTI_gt 
OTI_ge 
OTI_lt 
OTI_le 
OTI_unord 
OTI_strlen 
OTI_cbranch 
OTI_cmov 
OTI_cstore 
OTI_push 
OTI_addcc 
OTI_vec_set 
OTI_vec_extract 
OTI_vec_init 
OTI_vec_realign_load 
OTI_powi 
OTI_MAX 
OTI_add 
OTI_addv 
OTI_sub 
OTI_subv 
OTI_smul 
OTI_smulv 
OTI_smul_highpart 
OTI_umul_highpart 
OTI_smul_widen 
OTI_umul_widen 
OTI_usmul_widen 
OTI_sdiv 
OTI_sdivv 
OTI_sdivmod 
OTI_udiv 
OTI_udivmod 
OTI_smod 
OTI_umod 
OTI_fmod 
OTI_drem 
OTI_ftrunc 
OTI_and 
OTI_ior 
OTI_xor 
OTI_ashl 
OTI_lshr 
OTI_ashr 
OTI_rotl 
OTI_rotr 
OTI_smin 
OTI_smax 
OTI_umin 
OTI_umax 
OTI_pow 
OTI_atan2 
OTI_mov 
OTI_movstrict 
OTI_movmisalign 
OTI_neg 
OTI_negv 
OTI_abs 
OTI_absv 
OTI_one_cmpl 
OTI_ffs 
OTI_clz 
OTI_ctz 
OTI_popcount 
OTI_parity 
OTI_sqrt 
OTI_sincos 
OTI_sin 
OTI_asin 
OTI_cos 
OTI_acos 
OTI_exp 
OTI_exp10 
OTI_exp2 
OTI_expm1 
OTI_ldexp 
OTI_logb 
OTI_ilogb 
OTI_log 
OTI_log10 
OTI_log2 
OTI_log1p 
OTI_floor 
OTI_lfloor 
OTI_ceil 
OTI_lceil 
OTI_btrunc 
OTI_round 
OTI_nearbyint 
OTI_rint 
OTI_lrint 
OTI_tan 
OTI_atan 
OTI_copysign 
OTI_cmp 
OTI_ucmp 
OTI_tst 
OTI_eq 
OTI_ne 
OTI_gt 
OTI_ge 
OTI_lt 
OTI_le 
OTI_unord 
OTI_strlen 
OTI_cbranch 
OTI_cmov 
OTI_cstore 
OTI_push 
OTI_addcc 
OTI_reduc_smax 
OTI_reduc_umax 
OTI_reduc_smin 
OTI_reduc_umin 
OTI_reduc_splus 
OTI_reduc_uplus 
OTI_ssum_widen 
OTI_usum_widen 
OTI_sdot_prod 
OTI_udot_prod 
OTI_vec_set 
OTI_vec_extract 
OTI_vec_init 
OTI_vec_shl 
OTI_vec_shr 
OTI_vec_realign_load 
OTI_powi 
OTI_MAX 

Definition at line 69 of file optabs.h.


Function Documentation

int can_compare_p ( enum  rtx_code,
enum  machine_mode,
enum  can_compare_purpose 
)

Definition at line 3309 of file optabs.c.

enum insn_code can_extend_p ( enum  machine_mode,
enum  machine_mode,
int   
)

Definition at line 4452 of file optabs.c.

void emit_cmp_insn ( rtx  ,
rtx  ,
enum  rtx_code,
rtx  ,
enum  machine_mode,
int   
)

Definition at line 3714 of file optabs.c.

rtx emit_no_conflict_block ( rtx  ,
rtx  ,
rtx  ,
rtx  ,
rtx   
)

Definition at line 2996 of file optabs.c.

void emit_unop_insn ( int  ,
rtx  ,
rtx  ,
enum  rtx_code 
)

Definition at line 2927 of file optabs.c.

rtx expand_abs ( enum  machine_mode,
rtx  ,
rtx  ,
int  ,
int   
)

Definition at line 2625 of file optabs.c.

rtx expand_abs_nojump ( enum  machine_mode,
rtx  ,
rtx  ,
int   
)

Definition at line 2547 of file optabs.c.

rtx expand_binop ( enum  machine_mode,
optab  ,
rtx  ,
rtx  ,
rtx  ,
int  ,
enum  optab_methods 
)

Definition at line 680 of file optabs.c.

rtx expand_copysign ( rtx  ,
rtx  ,
rtx   
)

Definition at line 2848 of file optabs.c.

rtx expand_copysign_absneg ( enum  machine_mode,
rtx  ,
rtx  ,
rtx  ,
int  ,
bool   
)

void expand_fix ( rtx  ,
rtx  ,
int   
)

Definition at line 4788 of file optabs.c.

void expand_float ( rtx  ,
rtx  ,
int   
)

Definition at line 4519 of file optabs.c.

rtx expand_ternary_op ( enum machine_mode  mode,
optab  ternary_optab,
rtx  op0,
rtx  op1,
rtx  op2,
rtx  target,
int  unsignedp 
)

Definition at line 340 of file optabs.c.

int expand_twoval_binop ( optab  ,
rtx  ,
rtx  ,
rtx  ,
rtx  ,
int   
)

Definition at line 2191 of file optabs.c.

bool expand_twoval_binop_libfunc ( optab  ,
rtx  ,
rtx  ,
rtx  ,
rtx  ,
enum  rtx_code 
)

Definition at line 2001 of file optabs.c.

int expand_twoval_unop ( optab  ,
rtx  ,
rtx  ,
rtx  ,
int   
)

Definition at line 1777 of file optabs.c.

rtx expand_unop ( enum  machine_mode,
optab  ,
rtx  ,
rtx  ,
int   
)

Definition at line 2349 of file optabs.c.

rtx expand_vec_cond_expr ( tree  ,
rtx   
)

Definition at line 5428 of file optabs.c.

bool expand_vec_cond_expr_p ( tree  ,
enum  machine_mode 
)

Definition at line 5418 of file optabs.c.

bool force_expand_binop ( enum  machine_mode,
optab  ,
rtx  ,
rtx  ,
rtx  ,
int  ,
enum  optab_methods 
)

Definition at line 428 of file optabs.c.

rtx gen_extend_insn ( rtx  ,
rtx  ,
enum  machine_mode,
enum  machine_mode,
int   
)

Definition at line 4468 of file optabs.c.

struct optab_handlers GTY ( ()   )  [read, write]

Definition at line 41 of file optabs.h.

optab optab_for_tree_code ( enum  tree_code,
tree   
)

Definition at line 248 of file optabs.c.

void set_conv_libfunc ( convert_optab  ,
enum  machine_mode,
enum  machine_mode,
const char *   
)

Definition at line 4918 of file optabs.c.

void set_optab_libfunc ( optab  ,
enum  machine_mode,
const char *   
)

Definition at line 4906 of file optabs.c.

rtx sign_expand_binop ( enum  machine_mode,
optab  ,
optab  ,
rtx  ,
rtx  ,
rtx  ,
int  ,
enum  optab_methods 
)

Definition at line 2129 of file optabs.c.


Variable Documentation

rtxfun bcc_gen_fctn[NUM_RTX_CODE]

Definition at line 76 of file optabs.c.

enum insn_code clrmem_optab[NUM_MACHINE_MODES]

Definition at line 204 of file expr.c.

Referenced by init_optabs().

enum insn_code cmpmem_optab[NUM_MACHINE_MODES]

Definition at line 209 of file expr.c.

enum insn_code cmpstr_optab[NUM_MACHINE_MODES]

Definition at line 208 of file expr.c.

enum insn_code movmem_optab[NUM_MACHINE_MODES]

Definition at line 201 of file expr.c.

enum insn_code reload_in_optab[NUM_MACHINE_MODES]

Definition at line 263 of file reload1.c.

enum insn_code reload_out_optab[NUM_MACHINE_MODES]

Definition at line 264 of file reload1.c.

enum insn_code setcc_gen_code[NUM_RTX_CODE]

Definition at line 82 of file optabs.c.

enum insn_code vcond_gen_code[NUM_MACHINE_MODES]

Definition at line 90 of file optabs.c.

enum insn_code vcondu_gen_code[NUM_MACHINE_MODES]

Definition at line 91 of file optabs.c.


Generated on Wed Apr 8 15:41:24 2009 for Open64 by  doxygen 1.5.6