Changeset: 4c466ee1fc07 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4c466ee1fc07 Modified Files: clients/Tests/exports.stable.out gdk/ChangeLog gdk/gdk.h gdk/gdk_atoms.c gdk/gdk_atoms.h gdk/gdk_bat.c geom/monetdb5/geom.c monetdb5/mal/mal_atom.c monetdb5/mal/mal_atom.h monetdb5/modules/atoms/uuid.c Branch: default Log Message:
Removed atomDesc.align field. diffs (269 lines): diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out --- a/clients/Tests/exports.stable.out +++ b/clients/Tests/exports.stable.out @@ -2258,7 +2258,7 @@ str logger_create_wrap(logger *L, int *d str logger_destroy_wrap(void *ret, logger *L); str lookupRef; str mal2str(MalBlkPtr mb, int first, int last); -int malAtomSize(int size, int align, char *name); +int malAtomSize(int size, const char *name); str malBootstrap(void); str malCommandCall(MalStkPtr stk, InstrPtr pci); str malInclude(Client c, str name, int listing); diff --git a/gdk/ChangeLog b/gdk/ChangeLog --- a/gdk/ChangeLog +++ b/gdk/ChangeLog @@ -2,6 +2,7 @@ # This file is updated with Maddlog * Thu Sep 14 2017 Sjoerd Mullender <[email protected]> +- Removed the "align" field from the ATOM descriptor (atomDesc) structure. - The atomtostr and atomfromstr "methods" for atoms now return ssize_t and require a pointer to size_t for the size of the buffer. - The atom tostr and fromstr "methods" now always return -1 on error. diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -1720,9 +1720,7 @@ gdk_export BAT *BBPquickdesc(bat b, int * @tab ATOMname (int id); * @item int * @tab ATOMsize (int id); - * @item int - * @tab ATOMalign (int id); - * @item int + * @item int * @tab ATOMvarsized (int id); * @item ptr * @tab ATOMnilptr (int id); @@ -1777,11 +1775,6 @@ gdk_export BAT *BBPquickdesc(bat b, int * * @item The @emph{ATOMsize()} operation returns the atoms fixed size. * - * @item The @emph{ATOMalign()} operation returns the atoms minimum - * alignment. If the alignment info was not specified explicitly - * during atom install, it assumes the maximum value of @verb{ { - * }1,2,4,8@verb{ } } smaller than the atom size. - * * @item The @emph{ATOMnilptr()} operation returns a pointer to the * nil-value of an atom. We usually take one dedicated value halfway * down the negative extreme of the atom range (if such a concept @@ -1854,7 +1847,6 @@ typedef struct { short storage; /* stored as another type? */ short linear; /* atom can be ordered linearly */ short size; /* fixed size of atom */ - short align; /* alignment condition for values */ /* automatically generated fields */ const void *atomNull; /* global nil value */ diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c --- a/gdk/gdk_atoms.c +++ b/gdk/gdk_atoms.c @@ -185,7 +185,6 @@ ATOMallocate(const char *id) memset(BATatoms + t, 0, sizeof(atomDesc)); strcpy(BATatoms[t].name, id); BATatoms[t].size = sizeof(int); /* default */ - BATatoms[t].align = sizeof(int); /* default */ BATatoms[t].linear = 1; /* default */ BATatoms[t].storage = t; /* default */ } @@ -1876,7 +1875,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_void, /* storage */ 1, /* linear */ 0, /* size */ - 0, /* align */ #if SIZEOF_OID == SIZEOF_INT (ptr) &int_nil, /* atomNull */ #else @@ -1904,7 +1902,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_bte, /* storage */ 1, /* linear */ sizeof(bit), /* size */ - sizeof(bit), /* align */ (ptr) &bte_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) bitFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) bitToStr, /* atomToStr */ @@ -1923,7 +1920,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_bte, /* storage */ 1, /* linear */ sizeof(bte), /* size */ - sizeof(bte), /* align */ (ptr) &bte_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) bteFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) bteToStr, /* atomToStr */ @@ -1942,7 +1938,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_sht, /* storage */ 1, /* linear */ sizeof(sht), /* size */ - sizeof(sht), /* align */ (ptr) &sht_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) shtFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) shtToStr, /* atomToStr */ @@ -1961,7 +1956,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_int, /* storage */ 1, /* linear */ sizeof(bat), /* size */ - sizeof(bat), /* align */ (ptr) &int_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) batFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) batToStr, /* atomToStr */ @@ -1980,7 +1974,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_int, /* storage */ 1, /* linear */ sizeof(int), /* size */ - sizeof(int), /* align */ (ptr) &int_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) intFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) intToStr, /* atomToStr */ @@ -2003,7 +1996,6 @@ atomDesc BATatoms[MAXATOMS] = { #endif 1, /* linear */ sizeof(oid), /* size */ - sizeof(oid), /* align */ #if SIZEOF_OID == SIZEOF_INT (ptr) &int_nil, /* atomNull */ #else @@ -2033,7 +2025,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_ptr, /* storage */ 1, /* linear */ sizeof(ptr), /* size */ - sizeof(ptr), /* align */ (ptr) &ptr_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) ptrFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) ptrToStr, /* atomToStr */ @@ -2057,7 +2048,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_flt, /* storage */ 1, /* linear */ sizeof(flt), /* size */ - sizeof(flt), /* align */ (ptr) &flt_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) fltFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) fltToStr, /* atomToStr */ @@ -2076,7 +2066,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_dbl, /* storage */ 1, /* linear */ sizeof(dbl), /* size */ - sizeof(dbl), /* align */ (ptr) &dbl_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) dblFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) dblToStr, /* atomToStr */ @@ -2095,7 +2084,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_lng, /* storage */ 1, /* linear */ sizeof(lng), /* size */ - sizeof(lng), /* align */ (ptr) &lng_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) lngFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) lngToStr, /* atomToStr */ @@ -2115,7 +2103,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_hge, /* storage */ 1, /* linear */ sizeof(hge), /* size */ - sizeof(hge), /* align */ (ptr) &hge_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) hgeFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) hgeToStr, /* atomToStr */ @@ -2135,7 +2122,6 @@ atomDesc BATatoms[MAXATOMS] = { TYPE_str, /* storage */ 1, /* linear */ sizeof(var_t), /* size */ - sizeof(var_t), /* align */ (ptr) str_nil, /* atomNull */ (ssize_t (*)(const char *, size_t *, ptr *)) strFromStr, /* atomFromStr */ (ssize_t (*)(str *, size_t *, const void *)) strToStr, /* atomToStr */ diff --git a/gdk/gdk_atoms.h b/gdk/gdk_atoms.h --- a/gdk/gdk_atoms.h +++ b/gdk/gdk_atoms.h @@ -168,8 +168,8 @@ gdk_export const ptr ptr_nil; * @code{ ptr} types to @code{ lng} instead of @code{ int}. * * Derived types mimic their fathers in many ways. They inherit the - * @code{ size}, @code{ linear}, @code{ null} and - * @code{ align} properties of their father. The same goes for the + * @code{ size}, @code{ linear}, and @code{ null} + * properties of their father. The same goes for the * ADT functions HASH, CMP, PUT, NULL, DEL, LEN, and HEAP. So, a * derived type differs in only two ways from its father: * @table @code @@ -185,7 +185,6 @@ gdk_export const ptr ptr_nil; /* use "do ... while(0)" so that lhs can safely be used in if statements */ #define ATOMstorage(t) BATatoms[t].storage #define ATOMsize(t) BATatoms[t].size -#define ATOMalign(t) BATatoms[t].align #define ATOMfromstr(t,s,l,src) BATatoms[t].atomFromStr(src,l,s) #define ATOMnilptr(t) BATatoms[t].atomNull #define ATOMcompare(t) BATatoms[t].atomCmp diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c --- a/gdk/gdk_bat.c +++ b/gdk/gdk_bat.c @@ -662,7 +662,6 @@ wrongtype(int t1, int t2) if (ATOMvarsized(t1) || ATOMvarsized(t2) || ATOMsize(t1) != ATOMsize(t2) || - ATOMalign(t1) != ATOMalign(t2) || BATatoms[t1].atomFix || BATatoms[t2].atomFix) return TRUE; diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -2063,7 +2063,7 @@ geom_prelude(void *ret) { (void) ret; libgeom_init(); - TYPE_mbr = malAtomSize(sizeof(mbr), sizeof(oid), "mbr"); + TYPE_mbr = malAtomSize(sizeof(mbr), "mbr"); geomcatalogfix_set(geom_catalog_upgrade); geomsqlfix_set(geom_sql_upgrade); diff --git a/monetdb5/mal/mal_atom.c b/monetdb5/mal/mal_atom.c --- a/monetdb5/mal/mal_atom.c +++ b/monetdb5/mal/mal_atom.c @@ -77,7 +77,6 @@ malAtomProperty(MalBlkPtr mb, InstrPtr p /* heap function makes an atom varsized */ BATatoms[tpe].size = sizeof(var_t); assert_shift_width(ATOMelmshift(ATOMsize(tpe)), ATOMsize(tpe)); - BATatoms[tpe].align = sizeof(var_t); BATatoms[tpe].atomHeap = (void (*)(Heap *, size_t))pci->fcn; setAtomName(pci); return MAL_SUCCEED; @@ -200,7 +199,7 @@ malAtomDefinition(str name, int tpe) * User defined modules may introduce fixed sized types * to store information in BATs. */ -int malAtomSize(int size, int align, char *name) +int malAtomSize(int size, const char *name) { int i = 0; @@ -208,7 +207,6 @@ int malAtomSize(int size, int align, cha BATatoms[i].storage = i; BATatoms[i].size = size; assert_shift_width(ATOMelmshift(ATOMsize(i)), ATOMsize(i)); - BATatoms[i].align = align; return i; } diff --git a/monetdb5/mal/mal_atom.h b/monetdb5/mal/mal_atom.h --- a/monetdb5/mal/mal_atom.h +++ b/monetdb5/mal/mal_atom.h @@ -11,7 +11,7 @@ /* #define MAL_ATOM_DEBUG */ -mal_export int malAtomSize(int size, int align, char *name); +mal_export int malAtomSize(int size, const char *name); mal_export void mal_atom_reset(void); #endif /* _MAL_ATOM_H*/ diff --git a/monetdb5/modules/atoms/uuid.c b/monetdb5/modules/atoms/uuid.c --- a/monetdb5/modules/atoms/uuid.c +++ b/monetdb5/modules/atoms/uuid.c @@ -71,7 +71,7 @@ UUIDprelude(void *ret) (void) ret; assert(UUID_SIZE == 16); - (void) malAtomSize(sizeof(uuid), sizeof(oid), "uuid"); + (void) malAtomSize(sizeof(uuid), "uuid"); msg = UUIDgenerateUuid(&uuid_session); if (msg) return msg; _______________________________________________ checkin-list mailing list [email protected] https://www.monetdb.org/mailman/listinfo/checkin-list
