X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Flibfirm%2Ffirm_common.h;h=6e3105382f07691d4090491330c53f4b4decced0;hb=da0db014608257f77c6ed0518c685c8dc1b465c6;hp=668ac7497a5e0deb982ada3580fcdb66480e0f74;hpb=74d5a9023b48f346eead323a74e28297659e34b7;p=libfirm diff --git a/include/libfirm/firm_common.h b/include/libfirm/firm_common.h index 668ac7497..6e3105382 100644 --- a/include/libfirm/firm_common.h +++ b/include/libfirm/firm_common.h @@ -31,8 +31,9 @@ /** * libFirm initialization parameters. + * @deprecated */ -struct _firm_parameter_t { +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 @@ -43,6 +44,7 @@ struct _firm_parameter_t { /** * Statistic options. If statistic function where enabled, these * flags configure it, see enum firmstat_options_t. + * @deprecated call firm_init_stat(options) instead */ unsigned enable_statistics; @@ -51,6 +53,7 @@ struct _firm_parameter_t { * 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. + * @deprecated call ir_set_uninitialized_local_variable_func() instead */ uninitialized_local_variable_func_t *initialize_local_func; @@ -62,13 +65,16 @@ struct _firm_parameter_t { type_identify_if_t *ti_if; /** - * The interface for the ident module. - * If not set, the default libFirm ident module (using hash sets). + * dummy parameter + * (this used to hold an identifier module structure) */ - ident_if_t *id_if; + void *id_if; /** - * The default calling convention. + * 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; @@ -78,7 +84,7 @@ struct _firm_parameter_t { void *dummy; }; -typedef struct _firm_parameter_t firm_parameter_t; +typedef struct firm_parameter_t firm_parameter_t; /** * Initialize the firm library. @@ -86,10 +92,8 @@ typedef struct _firm_parameter_t firm_parameter_t; * 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. + * @param params should be NULL (you can pass a structure containing + * initial parameters but this is deprecated) */ FIRM_API void ir_init(const firm_parameter_t *params); @@ -109,8 +113,13 @@ 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. */ @@ -139,12 +148,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