X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbe_types.h;h=284e10e57696963adde0f61ce0f0ef3a84ea5e26;hb=3c3425a50a1d721b74a015c6812257e32feeac85;hp=32a7cff25c33348eb5c5756b89345a07a558a993;hpb=c8ed98c9de91c1b252b3c2e184471bbee953c696;p=libfirm diff --git a/ir/be/be_types.h b/ir/be/be_types.h index 32a7cff25..284e10e57 100644 --- a/ir/be/be_types.h +++ b/ir/be/be_types.h @@ -21,11 +21,12 @@ * @file * @brief Forward declarations of backend types * @author Matthias Braun - * @version $Id: besched.h 25982 2009-05-15 22:09:38Z matze $ */ #ifndef FIRM_BE_TYPES_H #define FIRM_BE_TYPES_H +#include "firm_types.h" + typedef unsigned int sched_timestep_t; typedef struct arch_register_class_t arch_register_class_t; @@ -35,8 +36,6 @@ typedef struct arch_flag_t arch_flag_t; typedef struct arch_inverse_t arch_inverse_t; typedef struct arch_isa_if_t arch_isa_if_t; typedef struct arch_env_t arch_env_t; -typedef struct arch_code_generator_t arch_code_generator_t; -typedef struct arch_code_generator_if_t arch_code_generator_if_t; /** * Some flags describing a node in more detail. @@ -45,33 +44,33 @@ typedef enum arch_irn_flags_t { arch_irn_flags_none = 0, /**< Node flags. */ arch_irn_flags_dont_spill = 1U << 0, /**< This must not be spilled. */ arch_irn_flags_rematerializable = 1U << 1, /**< This can be replicated instead of spilled/reloaded. */ - arch_irn_flags_modify_flags = 1U << 2, /**< I modify flags. */ + arch_irn_flags_modify_flags = 1U << 2, /**< I modify flags, used by the + default check_modifies + implementation in beflags */ arch_irn_flags_simple_jump = 1U << 3, /**< a simple jump instruction */ + arch_irn_flags_not_scheduled = 1U << 4, /**< node must not be scheduled*/ + arch_irn_flags_backend = 1U << 5, /**< begin of custom backend + flags */ } arch_irn_flags_t; +ENUM_BITSET(arch_irn_flags_t) -typedef struct _be_lv_t be_lv_t; -typedef struct _be_lv_info_t be_lv_info_t; - -typedef struct _be_abi_call_flags_bits_t be_abi_call_flags_bits_t; -typedef union _be_abi_call_flags_t be_abi_call_flags_t; -typedef struct _be_abi_callbacks_t be_abi_callbacks_t; -typedef struct _be_abi_call_t be_abi_call_t; -typedef struct _be_abi_irg_t be_abi_irg_t; -typedef struct be_stack_layout_t be_stack_layout_t; - -typedef struct _be_dom_front_info_t be_dom_front_info_t; - -typedef struct _list_sched_selector_t list_sched_selector_t; +typedef struct be_lv_t be_lv_t; +typedef union be_lv_info_t be_lv_info_t; -typedef struct _ilp_sched_selector_t ilp_sched_selector_t; -typedef struct _ilp_sched_selector_if_t ilp_sched_selector_if_t; +typedef struct be_abi_call_flags_bits_t be_abi_call_flags_bits_t; +typedef union be_abi_call_flags_t be_abi_call_flags_t; +typedef struct be_abi_callbacks_t be_abi_callbacks_t; +typedef struct be_abi_call_t be_abi_call_t; +typedef struct be_abi_irg_t be_abi_irg_t; +typedef struct be_stack_layout_t be_stack_layout_t; -typedef struct _be_execution_unit_type_t be_execution_unit_type_t; -typedef struct _be_execution_unit_t be_execution_unit_t; -typedef struct _be_machine_t be_machine_t; +typedef struct backend_info_t backend_info_t; +typedef struct sched_info_t sched_info_t; +typedef struct reg_out_info_t reg_out_info_t; +typedef struct be_ifg_t be_ifg_t; +typedef struct copy_opt_t copy_opt_t; -typedef struct backend_info_t backend_info_t; -typedef struct sched_info_t sched_info_t; -typedef struct reg_out_info_t reg_out_info_t; +typedef struct be_main_env_t be_main_env_t; +typedef struct be_options_t be_options_t; #endif