start register allocator again, fix typo
[libfirm] / ir / be / be.h
index 5d04946..3b6fecd 100644 (file)
@@ -1,4 +1,3 @@
-
 #ifndef _BE_MAIN_H
 #define _BE_MAIN_H
 
@@ -7,6 +6,15 @@
 #include "archop.h"
 #include "lower_dw.h"
 #include "dbginfo.h"
+#include "ifconv.h"
+
+#ifdef WITH_LIBCORE
+#include <libcore/lc_opts.h>
+#include <libcore/lc_opts_enum.h>
+#include <libcore/lc_timing.h>
+#endif /* WITH_LIBCORE */
+
+#define LC_STOP_AND_RESET_TIMER(timer) do { lc_timer_stop(timer); lc_timer_reset(timer); } while(0)
 
 /**
  * This structure contains parameters that should be
@@ -24,6 +32,12 @@ typedef struct backend_params {
 
        /** the architecture specific intrinsic function creator */
        create_intrinsic_fkt *arch_create_intrinsic_fkt;
+
+       /** the context parameter for the create intrinsic function */
+       void *create_intrinsic_ctx;
+
+       /** backend settings for if-conversion */
+       const opt_if_conv_info_t *if_conv_info;
 } backend_params;
 
 /**
@@ -47,7 +61,7 @@ const backend_params *be_init(void);
 /**
  * Main interface to the frontend.
  */
-void be_main(FILE *file_handle);
+void be_main(FILE *file_handle, const char *cup_name);
 
 /** The type of the debug info retriever function. */
 typedef const char *(*retrieve_dbg_func)(const dbg_info *dbg, unsigned *line);
@@ -65,7 +79,6 @@ void be_set_debug_retrieve(retrieve_dbg_func func);
 const char *be_retrieve_dbg_info(const dbg_info *dbg, unsigned *line);
 
 typedef struct _be_main_env_t be_main_env_t;
-typedef struct _be_irg_t be_irg_t;
 typedef struct _be_options_t be_options_t;
 
 #endif /* _BE_MAIN_H */