|
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 |