verifier to check that no out edges point to dead/removed nodes
[libfirm] / ir / be / bearch.h
index 1804f77..c9c3677 100644 (file)
@@ -424,15 +424,6 @@ extern int arch_get_allocatable_regs(const arch_env_t *env, const ir_node *irn,
  */
 extern void arch_put_non_ignore_regs(const arch_env_t *env, const arch_register_class_t *cls, bitset_t *bs);
 
-/**
- * Return the number of registers in a register class which should not be
- * ignored by the register allocator.
- * @param env The architecture environment.
- * @param cls The register class to consider
- * @return       The number of non-ignore registers in the register class
- */
-extern int arch_count_non_ignore_regs(const arch_env_t *env, const arch_register_class_t *cls);
-
 /**
  * Check, if a register is assignable to an operand of a node.
  * @param env The architecture environment.
@@ -666,11 +657,14 @@ struct _arch_isa_if_t {
   const arch_code_generator_if_t *(*get_code_generator_if)(void *self);
 
   /**
-   * Get the list scheduler to use.
-   * @param self  The isa object.
+   * Get the list scheduler to use. There is already a selector given, the
+   * backend is free to modify and/or ignore it.
+   *
+   * @param self     The isa object.
+   * @param selector The selector given by options.
    * @return      The list scheduler selector.
    */
-  const list_sched_selector_t *(*get_list_sched_selector)(const void *self);
+  const list_sched_selector_t *(*get_list_sched_selector)(const void *self, list_sched_selector_t *selector);
 
   /**
    * Get the necessary alignment for storing a register of given class.
@@ -750,5 +744,4 @@ extern arch_env_t *arch_env_push_irn_handler(arch_env_t *env, const arch_irn_han
  */
 extern const arch_irn_handler_t *arch_env_pop_irn_handler(arch_env_t *env);
 
-
 #endif /* _FIRM_BEARCH_H */