X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fadt%2Farray.h;h=76eaf2bc32a2e1f6019c2f9daa9bc67bef8ff022;hb=6a768b09064c37b361871ba888213cdd5ed5a700;hp=47c9f15a918d6d9fb8215c1e467c4099714cffac;hpb=ac3d8efebd18b5cf8c448ecdef594857e35bdd89;p=libfirm diff --git a/ir/adt/array.h b/ir/adt/array.h index 47c9f15a9..76eaf2bc3 100644 --- a/ir/adt/array.h +++ b/ir/adt/array.h @@ -21,9 +21,12 @@ #include #include -#include "cookies.h" -#include "xmalloc.h" +#include "fourcc.h" +#include "align.h" +#define ARR_D_MAGIC FOURCC('A','R','R','D') +#define ARR_A_MAGIC FOURCC('A','R','R','A') +#define ARR_F_MAGIC FOURCC('A','R','R','F') /** * Creates a flexible array. @@ -38,7 +41,7 @@ * first element of this array). */ #define NEW_ARR_F(type, nelts) \ - (XMALLOC_TRACE (type *)_new_arr_f ((nelts), sizeof(type) * (nelts))) + ((type *)_new_arr_f ((nelts), sizeof(type) * (nelts))) /** * Creates a new flxible array with the same number of elements as a @@ -76,7 +79,7 @@ * * @param arr The flexible array. */ -#define DEL_ARR_F(arr) (XMALLOC_TRACE _del_arr_f ((arr))) +#define DEL_ARR_F(arr) (_del_arr_f ((arr))) /** * Creates a dynamic array on an obstack. @@ -131,7 +134,7 @@ /** * Create an automatic array which will be deleted at return from function. - * Beware, the data will be allocated un the functions stack! + * Beware, the data will be allocated on the function stack! * * @param type The element type of the new array. * @param var A lvalue of type (type *) which will hold the new array. @@ -216,7 +219,7 @@ * @remark This macro may change arr, so update all references! */ #define ARR_RESIZE(type, arr, n) \ - (XMALLOC_TRACE (arr) = _arr_resize ((arr), (n), sizeof(type))) + ((arr) = _arr_resize ((arr), (n), sizeof(type))) /** * Resize a flexible array, always reallocate data. @@ -228,7 +231,7 @@ * @remark This macro may change arr, so update all references! */ #define ARR_SETLEN(type, arr, n) \ - (XMALLOC_TRACE (arr) = _arr_setlen ((arr), (n), sizeof(type) * (n))) + ((arr) = _arr_setlen ((arr), (n), sizeof(type) * (n))) /** Set a length smaller than the current length of the array. Do not * resize. len must be <= ARR_LEN(arr). */ @@ -277,10 +280,10 @@ # define ARR_IDX_VRFY(arr, idx) ((void)0) #else # define ARR_VRFY(arr) \ - assert ( ( (_ARR_DESCR((arr))->cookie == ARR_D_MAGIC) \ - || (_ARR_DESCR((arr))->cookie == ARR_A_MAGIC) \ - || (_ARR_DESCR((arr))->cookie == ARR_F_MAGIC)) \ - && ( (_ARR_DESCR((arr))->cookie != ARR_F_MAGIC) \ + assert ( ( (_ARR_DESCR((arr))->magic == ARR_D_MAGIC) \ + || (_ARR_DESCR((arr))->magic == ARR_A_MAGIC) \ + || (_ARR_DESCR((arr))->magic == ARR_F_MAGIC)) \ + && ( (_ARR_DESCR((arr))->magic != ARR_F_MAGIC) \ || (_ARR_DESCR((arr))->u.allocated >= _ARR_DESCR((arr))->nelts)) \ && (_ARR_DESCR((arr))->nelts >= 0)) # define ARR_IDX_VRFY(arr, idx) \ @@ -295,9 +298,9 @@ # define _ARR_DBGINF_DECL # define _ARR_SET_DBGINF(descr, co, es) #else -# define _ARR_DBGINF_DECL int cookie; size_t eltsize; +# define _ARR_DBGINF_DECL int magic; size_t eltsize; # define _ARR_SET_DBGINF(descr, co, es) \ - ( (descr)->cookie = (co), (descr)->eltsize = (es) ) + ( (descr)->magic = (co), (descr)->eltsize = (es) ) #endif /**