X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Ftr%2Ftype_t.h;h=27126dee11947f8bd81e3e28a4886e5e1b910d7e;hb=cc73c2485f371de10db363869e5a324dbaf23e18;hp=a256f47aba6b2bc85e6722a9a8e29b22d1d1d477;hpb=f60b46e4884776c6db6f0d6d0c4e9ae856681046;p=libfirm diff --git a/ir/tr/type_t.h b/ir/tr/type_t.h index a256f47ab..27126dee1 100644 --- a/ir/tr/type_t.h +++ b/ir/tr/type_t.h @@ -1,20 +1,6 @@ /* - * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved. - * * This file is part of libFirm. - * - * This file may be distributed and/or modified under the terms of the - * GNU General Public License version 2 as published by the Free Software - * Foundation and appearing in the file LICENSE.GPL included in the - * packaging of this file. - * - * Licensees holding valid libFirm Professional Edition licenses may use - * this file in accordance with the libFirm Commercial License. - * Agreement provided with the Software. - * - * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE - * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE. + * Copyright (C) 2012 University of Karlsruhe. */ /** @@ -94,7 +80,6 @@ typedef struct { ir_type **subtypes; /**< Array containing the direct subtypes. */ ir_type **supertypes; /**< Array containing the direct supertypes */ ir_peculiarity peculiarity; /**< The peculiarity of this class. */ - ir_entity *type_info; /**< An ir_entity representing this class, used for type info. */ int dfn; /**< A number that can be used for 'instanceof' operator. */ unsigned vtable_size; /**< The size of the vtable for this class. */ unsigned clss_flags; /**< Additional class flags. */ @@ -174,7 +159,7 @@ typedef union { } tp_attr; /** Additional type flags. */ -enum type_flags { +typedef enum type_flags { tf_none = 0, /**< No flags. */ tf_lowered_type = 1U << 0, /**< Set if this is a lowered type. */ tf_layout_fixed = 1U << 1, /**< Set if the layout of a type is fixed */ @@ -186,7 +171,7 @@ enum type_flags { tf_constructors = 1U << 6, /**< Set only for the constructors segment type */ tf_destructors = 1U << 7, /**< Set only for the destructors segment type */ tf_variable_size = 1U << 8, /**< compound or array type may have variable size last element */ -}; +} type_flags; ENUM_BITSET(type_flags) /** @@ -575,4 +560,6 @@ static inline void _set_method_calling_convention(ir_type *method, unsigned cc_m method->attr.ma.irg_calling_conv = cc_mask; } +ir_type *new_type_segment(ident *name, type_flags flags); + #endif /* FIRM_TR_TYPE_T_H */