+
+Cmp => {
+ irn_flags => [ "rematerializable" ],
+ state => "exc_pinned",
+ reg_req => { in => [ "gp", "gp" ],
+ out => [ "flags" ] },
+ ins => [ "left", "right" ],
+ outs => [ "eflags" ],
+ emit => 'cmp %S0, %S1',
+ attr => "int ins_permuted, int cmp_unsigned",
+ init_attr => "attr->data.ins_permuted = ins_permuted;\n".
+ "\tattr->data.cmp_unsigned = cmp_unsigned;\n",
+ mode => $mode_flags,
+ modified_flags => 1,
+},
+
+Jcc => {
+ state => "pinned",
+ op_flags => [ "cfopcode", "forking" ],
+ reg_req => { in => [ "eflags" ], out => [ "none", "none" ] },
+ ins => [ "eflags" ],
+ outs => [ "false", "true" ],
+ attr => "ir_relation relation",
+ init_attr => "attr->ext.relation = relation;",
+ mode => "mode_T",
+},
+
+Load => {
+ op_flags => [ "uses_memory" ],
+ state => "exc_pinned",
+ reg_req => { in => [ "gp", "none" ],
+ out => [ "gp", "none" ] },
+ ins => [ "ptr", "mem" ],
+ outs => [ "res", "M" ],
+ attr => "ir_entity *entity",
+ attr_type => "amd64_SymConst_attr_t",
+ emit => "mov %O(%S0), %D0"
+},
+
+FrameAddr => {
+ op_flags => [ "constlike" ],
+ irn_flags => [ "rematerializable" ],
+ reg_req => { in => [ "gp" ], out => [ "gp" ] },
+ ins => [ "base" ],
+ attr => "ir_entity *entity",
+ attr_type => "amd64_SymConst_attr_t",
+ mode => $mode_gp,
+},
+
+Store => {
+ op_flags => [ "uses_memory" ],
+ state => "exc_pinned",
+ reg_req => { in => [ "gp", "gp", "none" ], out => [ "none" ] },
+ ins => [ "ptr", "val", "mem" ],
+ outs => [ "M" ],
+ attr => "ir_entity *entity",
+ attr_type => "amd64_SymConst_attr_t",
+ mode => "mode_M",
+ emit => "mov %S1, %O(%S0)"
+},
+