X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fia32%2Fia32_architecture.h;h=84c0938df4482da44e41f3b5d8a0cecef3e8d2d4;hb=ce6161a7e42a48f7422b7babcc64d8ace18e2687;hp=c494490f0a983918120a4a08b3770843139eabba;hpb=2c6cb525849141ca24634f4bf3eab578fe6361d2;p=libfirm diff --git a/ir/be/ia32/ia32_architecture.h b/ir/be/ia32/ia32_architecture.h index c494490f0..84c0938df 100644 --- a/ir/be/ia32/ia32_architecture.h +++ b/ir/be/ia32/ia32_architecture.h @@ -78,6 +78,8 @@ typedef struct { unsigned use_3dnow_prefetch:1; /** use SSE4.2 or SSE4a popcnt instruction */ unsigned use_popcnt:1; + /** use i486 instructions */ + unsigned use_i486:1; /** optimize calling convention where possible */ unsigned optimize_cc:1; /** @@ -86,6 +88,9 @@ typedef struct { * rounding mode */ unsigned use_unsafe_floatconv:1; + /** emit machine code instead of assembler */ + unsigned emit_machcode:1; + /** function alignment (a power of two in bytes) */ unsigned function_alignment; /** alignment for labels (which are expected to be frequent jump targets) */ @@ -110,10 +115,11 @@ void ia32_setup_cg_config(void); * lowerer. * * @param kind the instruction + * @param mode the mode of the instruction * @param tv for MUL instruction, the multiplication constant * * @return the cost */ -int ia32_evaluate_insn(insn_kind kind, tarval *tv); +int ia32_evaluate_insn(insn_kind kind, const ir_mode *mode, ir_tarval *tv); #endif