X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Flibfirm%2Ftyperep.h;h=fdc888006521cbe6ea2b1b662ce30b2187c1257f;hb=f7a0dee11313faad6f2ff54edc8eaadabd03e433;hp=a56834c09abe4232b6d7b96e3a6a036becfb63e2;hpb=dd76896ea572a7712222cf8e4da0f3477e7af8b0;p=libfirm diff --git a/include/libfirm/typerep.h b/include/libfirm/typerep.h index a56834c09..fdc888006 100644 --- a/include/libfirm/typerep.h +++ b/include/libfirm/typerep.h @@ -150,6 +150,7 @@ typedef enum { mtp_property_runtime = 0x00000100, /**< This method represents a runtime routine. */ mtp_property_private = 0x00000200, /**< All method invocations are known, the backend is free to optimize the call in any possible way. */ + mtp_property_has_loop = 0x00000400, /**< Set, if this method contains one possible endless loop. */ mtp_property_inherited = (1<<31) /**< Internal. Used only in irg's, means property is inherited from type. */ } mtp_additional_property; @@ -402,10 +403,13 @@ void set_entity_backend_marked(ir_entity *ent, int flag); * Bitfield type indicating the way an entity is used. */ typedef enum { - ir_usage_address_taken = 1 << 0, - ir_usage_write = 1 << 1, - ir_usage_read = 1 << 2, - ir_usage_reinterpret_cast = 1 << 3, + ir_usage_none = 0, /**< This entity is unused. */ + ir_usage_address_taken = 1 << 0, /**< The address of this entity was taken. */ + ir_usage_write = 1 << 1, /**< The entity was written to. */ + ir_usage_read = 1 << 2, /**< The entity was read. */ + ir_usage_reinterpret_cast = 1 << 3, /**< The entity was read but with a wrong mode + (an implicit reinterpret cast) */ + /** Unknown access */ ir_usage_unknown = ir_usage_address_taken | ir_usage_write | ir_usage_read | ir_usage_reinterpret_cast