libFirm
|
This structure contains parameters that should be propagated to the libFirm parameter set. More...
#include <be.h>
Data Fields | |
unsigned | support_inline_asm:1 |
If set, the backend supports inline assembly. | |
unsigned | support_rotl:1 |
If set, the backend supports Rotl nodes. | |
unsigned | byte_order_big_endian:1 |
the backend uses big-endian byte ordering if set, else little endian | |
unsigned | modulo_shift_efficient:1 |
whether the architecure can natively handle modulo shift modes. | |
unsigned | non_modulo_shift_efficient:1 |
whether the architecure can natively handle modulo shift modes. | |
const ir_settings_arch_dep_t * | dep_param |
Settings for architecture dependent optimizations. | |
arch_allow_ifconv_func | allow_ifconv |
Backend settings for if-conversion. | |
unsigned | machine_size |
size of machine word in bits. | |
ir_mode * | mode_float_arithmetic |
some backends like x87 can only do arithmetic in a specific float mode (load/store are still done in the "normal" float/double modes). | |
ir_type * | type_long_long |
type used for long long or NULL if none available. | |
ir_type * | type_unsigned_long_long |
type used for unsigned long long or NULL if none available | |
ir_type * | type_long_double |
type used for long double or NULL if none available. | |
unsigned | trampoline_size |
Size of the trampoline code. | |
unsigned | trampoline_align |
Alignment of the trampoline code. | |
create_trampoline_fkt * | build_trampoline |
If non-zero, build the trampoline. | |
unsigned | stack_param_align |
Alignment of stack parameters. |
This structure contains parameters that should be propagated to the libFirm parameter set.
arch_allow_ifconv_func backend_params::allow_ifconv |
create_trampoline_fkt* backend_params::build_trampoline |
unsigned backend_params::byte_order_big_endian |
const ir_settings_arch_dep_t* backend_params::dep_param |
unsigned backend_params::machine_size |
ir_mode* backend_params::mode_float_arithmetic |
unsigned backend_params::modulo_shift_efficient |
unsigned backend_params::non_modulo_shift_efficient |
unsigned backend_params::stack_param_align |
unsigned backend_params::support_inline_asm |
unsigned backend_params::support_rotl |
unsigned backend_params::trampoline_align |
unsigned backend_params::trampoline_size |
ir_type* backend_params::type_long_double |
ir_type* backend_params::type_long_long |
ir_type* backend_params::type_unsigned_long_long |