X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fmips%2Fmips_spec.pl;h=2cc8789b83ee840bfd7d09b819ed8b535a062983;hb=c1fdf770d4d000dd5cf22daead32369342c5f5d1;hp=bbb1e509ad63ca232bb31d6d9aa26fc81850e353;hpb=db6fd292f8fa8e7dc3f4bc3dacd047d832baaaba;p=libfirm diff --git a/ir/be/mips/mips_spec.pl b/ir/be/mips/mips_spec.pl index bbb1e509a..2cc8789b8 100644 --- a/ir/be/mips/mips_spec.pl +++ b/ir/be/mips/mips_spec.pl @@ -21,11 +21,19 @@ $new_emit_syntax = 1; # { "type" => "type 2", "name" => "name 2" }, # ... # ], -# "comment" => "any comment for constructor", +# comment => "any comment for constructor", # reg_req => { in => [ "reg_class|register" ], out => [ "reg_class|register|in_rX" ] }, -# "cmp_attr" => "c source code for comparing node attributes", +# cmp_attr => "c source code for comparing node attributes", +# outs => { "out1", "out2" } # optional, creates pn_op_out1, ... consts +# ins => { "in1", "in2" } # optional, creates n_op_in1, ... consts +# mode => "mode_Iu" # optional, predefines the mode # emit => "emit code with templates", -# "rd_constructor" => "c source code which constructs an ir_node" +# attr => "attitional attribute arguments for constructor", +# init_attr => "emit attribute initialization template", +# rd_constructor => "c source code which constructs an ir_node", +# hash_func => "name of the hash function for this operation", +# latency => "latency of this operation (can be float)" +# attr_type => "name of the attribute struct", # }, # # ... # (all nodes you need to describe) @@ -89,7 +97,7 @@ $new_emit_syntax = 1; # NOTE: Last entry of each class is the largest Firm-Mode a register can hold\ %reg_classes = ( "gp" => [ - { name => "zero", type => 4+2 }, # always zero + { name => "zero", type => 4 }, # always zero { name => "at", type => 4 }, # reserved for assembler { name => "v0", realname => "2", type => 1 }, # first return value { name => "v1", realname => "3", type => 1 }, # second return value