sparc: implement float->unsigned conversions
[libfirm] / ir / be / arm / arm_spec.pl
index 39419ff..16e04d9 100644 (file)
@@ -1,7 +1,5 @@
-# Creation: 2006/02/13
 # Arm Architecure Specification
 # Author: Matthias Braun, Michael Beck, Oliver Richter, Tobias Gneist
-# $Id$
 
 $arch = "arm";
 
@@ -72,25 +70,25 @@ $default_attr_type = "arm_attr_t";
 $default_copy_attr = "arm_copy_attr";
 
 %init_attr = (
-       arm_attr_t           => "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);",
+       arm_attr_t           => "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);",
        arm_SymConst_attr_t  =>
-               "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);\n".
+               "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);\n".
                "\tinit_arm_SymConst_attributes(res, entity, symconst_offset);",
-       arm_CondJmp_attr_t   => "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);",
-       arm_SwitchJmp_attr_t => "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);",
-       arm_fConst_attr_t    => "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);",
+       arm_CondJmp_attr_t   => "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);",
+       arm_SwitchJmp_attr_t => "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);",
+       arm_fConst_attr_t    => "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);",
        arm_load_store_attr_t =>
-               "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);\n".
+               "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);\n".
                "\tinit_arm_load_store_attributes(res, ls_mode, entity, entity_sign, offset, is_frame_entity);",
        arm_shifter_operand_t =>
-               "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);\n",
+               "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);\n",
        arm_cmp_attr_t =>
-               "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);\n",
+               "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);\n",
        arm_farith_attr_t =>
-               "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);\n".
+               "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);\n".
                "\tinit_arm_farith_attributes(res, op_mode);",
        arm_CopyB_attr_t =>
-               "\tinit_arm_attributes(res, irn_flags_, in_reqs, exec_units, n_res);\n".
+               "\tinit_arm_attributes(res, irn_flags_, in_reqs, n_res);\n".
                "\tinit_arm_CopyB_attributes(res, size);",
 );
 
@@ -415,11 +413,10 @@ SwitchJmp => {
        op_flags  => [ "labeled", "cfopcode", "forking" ],
        state     => "pinned",
        mode      => "mode_T",
-       attr      => "int n_projs, long def_proj_num",
-       init_attr => "\tset_arm_SwitchJmp_n_projs(res, n_projs);\n".
-                    "\tset_arm_SwitchJmp_default_proj_num(res, def_proj_num);\n".
-                    "\tinfo->out_infos = NULL;",
+       attr      => "const ir_switch_table *table",
+       init_attr => "init_arm_SwitchJmp_attributes(res, table);",
        reg_req   => { in => [ "gp" ], out => [ "none" ] },
+       out_arity => "variable",
        attr_type => "arm_SwitchJmp_attr_t",
 },