* IA32 ISA object
*/
struct ia32_isa_t {
- arch_isa_t arch_isa; /**< must be derived from arch_isa_t */
+ arch_env_t arch_env; /**< must be derived from arch_env_t */
pmap *regs_16bit; /**< Contains the 16bits names of the gp registers */
pmap *regs_8bit; /**< Contains the 8bits names of the gp registers */
pmap *regs_8bit_high; /**< contains the hight part of the 8 bit names of the gp registers */
#endif /* NDEBUG */
};
-struct ia32_irn_ops_t {
- const arch_irn_ops_if_t *impl;
- ia32_code_gen_t *cg;
-};
-
/**
* A helper type collecting needed info for IA32 intrinsic lowering.
*/
tarval *u64_bias; /**< bias value for conversion from float to unsigned 64 */
};
+typedef enum transformer_t {
+ TRANSFORMER_DEFAULT,
+#ifdef FIRM_GRGEN_BE
+ TRANSFORMER_PBQP
+#endif
+} transformer_t;
+
+/** The selected transformer. */
+extern transformer_t be_transformer;
+
/** The mode for the floating point control word. */
extern ir_mode *mode_fpcw;