X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Flibfirm%2Ffirm_common.h;h=974b95e312d5e80c9d02285329b24e74239eb560;hb=b4841b96869c6fbd61f4ae3931d3c69c6b33c2e0;hp=28b578b4160d9b59974cf03af59fce67f2d38220;hpb=0064ee54b41c007b5d33b557d053e602ac3be2cc;p=libfirm diff --git a/include/libfirm/firm_common.h b/include/libfirm/firm_common.h index 28b578b41..974b95e31 100644 --- a/include/libfirm/firm_common.h +++ b/include/libfirm/firm_common.h @@ -21,7 +21,6 @@ * @file * @brief common firm declarations * @author Martin Trapp, Christian Schaefer, Goetz Lindenmaier - * @version $Id$ */ #ifndef FIRM_COMMON_FIRM_COMMON_H #define FIRM_COMMON_FIRM_COMMON_H @@ -30,71 +29,9 @@ #include "begin.h" /** - * libFirm initialization parameters. - */ -struct _firm_parameter_t { - /** - * The size of this structure. init_firm() will only initialize - * this amount of data. This allows to add more fields to this structure - * without breaking compatibility to older source. - */ - unsigned int size; - - /** - * Statistic options. If statistic function where enabled, these - * flags configure it, see enum firmstat_options_t. - */ - unsigned enable_statistics; - - /** - * This function is called, whenever a local variable is - * used before definition. The function should insert a default value, - * and/or raise a compiler error/warning. Note that returning - * an Unknown is allowed here. - */ - uninitialized_local_variable_func_t *initialize_local_func; - - /** - * The interface functions for the type identification module. - * If not set, the default implementation with compare_strict() and - * firm_hash_name() will be used. - */ - type_identify_if_t *ti_if; - - /** - * The interface for the ident module. - * If not set, the default libFirm ident module (using hash sets). - */ - ident_if_t *id_if; - - /** - * dummy parameter - * (this used to hold a default calling convention, but this concept is no - * more. You should always set the calling convention manually after - * creating the method entity if you need something else) - */ - unsigned cc_mask; - - /** - * dummy (here was dbg_info *builtin_dbg before) - */ - void *dummy; -}; - -typedef struct _firm_parameter_t firm_parameter_t; - -/** - * Initialize the firm library. - * * Initializes the firm library. Allocates default data structures. - * Initializes configurable behavior of the library. - * - * @param params A structure containing the parameters of the libFirm. - * - * The parameter struct may be NULL. In that case, the original FIRM behavior - * is conserved. */ -FIRM_API void ir_init(const firm_parameter_t *params); +FIRM_API void ir_init(void); /** * Frees all memory occupied by the firm library. @@ -110,10 +47,13 @@ FIRM_API const char *ir_get_version_revision(void); /** returns string describing libFirm build */ FIRM_API const char *ir_get_version_build(void); - - -/** a list of firm kinds - @@@ not all datatypes are tagged yet. */ +/** + * a list of firm kinds + * Most important datastructures in firm contain a firm_kind field at the + * beginning so given void* pointer you can usually still guess the kind + * of thing the pointer points to. + * This is used in debug helper functions and printers. + */ typedef enum { k_BAD = 0, /**< An invalid firm node. */ k_entity, /**< An entity. */ @@ -125,9 +65,7 @@ typedef enum { k_tarval, /**< A tarval. */ k_ir_loop, /**< A loop. */ k_ir_compound_graph_path, /**< A compound graph path, see entity.h. */ - k_ir_extblk, /**< An extended basic block. */ k_ir_prog, /**< A program representation (irp). */ - k_ir_region, /**< A region. */ k_ir_graph_pass, /**< An ir_graph pass. */ k_ir_prog_pass, /**< An ir_prog pass. */ k_ir_graph_pass_mgr, /**< An ir_graph pass manager. */ @@ -142,12 +80,6 @@ typedef enum { */ FIRM_API firm_kind get_kind(const void *firm_thing); -/** Returns the kind of a thing as a string. */ -FIRM_API const char *print_firm_kind(void *firm_thing); - -/** Print an identification of a firm thing. */ -FIRM_API void firm_identify_thing(void *X); - #include "end.h" #endif