Changeset: eee0a7e1f8eb for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=eee0a7e1f8eb Modified Files: gdk/gdk.h gdk/gdk_ssort.c gdk/gdk_ssort_impl.h Branch: default Log Message:
Merged parallel default head diffs (truncated from 943 to 300 lines): diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -1871,7 +1871,14 @@ gdk_export BBPrec *BBP[N_BBPINIT]; #define BBPcurstamp() BBP_curstamp #define BBPrefs(i) (BBPcheck((i),"BBPrefs")?BBP_refs(i):-1) #define BBPcache(i) (BBPcheck((i),"BBPcache")?BBP_cache(i):(BAT*) NULL) -#define BBPname(i) (BBPcheck((i),"BBPname")?((i) > 0 || BBP_logical(i))?BBP_logical(i):BBP_logical(-(i)):"") +#define BBPname(i) \ + (BBPcheck((i), "BBPname") ? \ + ((i) > 0 ? \ + BBP[(i) >> BBPINITLOG][(i) & (BBPINIT - 1)].logical[0] : \ + (BBP[-(i) >> BBPINITLOG][-(i) & (BBPINIT - 1)].logical[1] ? \ + BBP[-(i) >> BBPINITLOG][-(i) & (BBPINIT - 1)].logical[1] : \ + BBP[-(i) >> BBPINITLOG][-(i) & (BBPINIT - 1)].logical[0])) : \ + "") #define BBPvalid(i) (BBP_logical(i) != NULL && *BBP_logical(i) != '.') #define BATgetId(b) BBPname((b)->batCacheid) #define BBPfix(i) BBPincref((i), FALSE) diff --git a/gdk/gdk_ssort.c b/gdk/gdk_ssort.c --- a/gdk/gdk_ssort.c +++ b/gdk/gdk_ssort.c @@ -277,97 +277,299 @@ merge_compute_minrun(ssize_t n) #ifndef NOEXPAND_BTE -#define T bte -#define O +#define COPY COPY_bte + +#define binarysort binarysort_bte +#define do_ssort do_ssort_bte +#define gallop_left gallop_left_bte +#define gallop_right gallop_right_bte +#define ISLT ISLT_bte +#define merge_at merge_at_bte #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_bte_rev +#define do_ssort do_ssort_bte_rev +#define gallop_left gallop_left_bte_rev +#define gallop_right gallop_right_bte_rev +#define ISLT ISLT_bte_rev +#define merge_at merge_at_bte_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at + +#undef COPY #endif #ifndef NOEXPAND_SHT -#define T sht -#define O +#define COPY COPY_sht + +#define binarysort binarysort_sht +#define do_ssort do_ssort_sht +#define gallop_left gallop_left_sht +#define gallop_right gallop_right_sht +#define ISLT ISLT_sht +#define merge_at merge_at_sht #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_sht_rev +#define do_ssort do_ssort_sht_rev +#define gallop_left gallop_left_sht_rev +#define gallop_right gallop_right_sht_rev +#define ISLT ISLT_sht_rev +#define merge_at merge_at_sht_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at + +#undef COPY #endif #ifndef NOEXPAND_INT -#define T int -#define O +#define COPY COPY_int + +#define binarysort binarysort_int +#define do_ssort do_ssort_int +#define gallop_left gallop_left_int +#define gallop_right gallop_right_int +#define ISLT ISLT_int +#define merge_at merge_at_int #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_int_rev +#define do_ssort do_ssort_int_rev +#define gallop_left gallop_left_int_rev +#define gallop_right gallop_right_int_rev +#define ISLT ISLT_int_rev +#define merge_at merge_at_int_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at + +#undef COPY #endif #ifndef NOEXPAND_LNG -#define T lng -#define O +#define COPY COPY_lng + +#define binarysort binarysort_lng +#define do_ssort do_ssort_lng +#define gallop_left gallop_left_lng +#define gallop_right gallop_right_lng +#define ISLT ISLT_lng +#define merge_at merge_at_lng #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_lng_rev +#define do_ssort do_ssort_lng_rev +#define gallop_left gallop_left_lng_rev +#define gallop_right gallop_right_lng_rev +#define ISLT ISLT_lng_rev +#define merge_at merge_at_lng_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at + +#undef COPY #endif #ifndef NOEXPAND_FLT -#define T flt -#define O +#define COPY COPY_flt + +#define binarysort binarysort_flt +#define do_ssort do_ssort_flt +#define gallop_left gallop_left_flt +#define gallop_right gallop_right_flt +#define ISLT ISLT_flt +#define merge_at merge_at_flt #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_flt_rev +#define do_ssort do_ssort_flt_rev +#define gallop_left gallop_left_flt_rev +#define gallop_right gallop_right_flt_rev +#define ISLT ISLT_flt_rev +#define merge_at merge_at_flt_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at + +#undef COPY #endif #ifndef NOEXPAND_DBL -#define T dbl -#define O +#define COPY COPY_dbl + +#define binarysort binarysort_dbl +#define do_ssort do_ssort_dbl +#define gallop_left gallop_left_dbl +#define gallop_right gallop_right_dbl +#define ISLT ISLT_dbl +#define merge_at merge_at_dbl #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_dbl_rev +#define do_ssort do_ssort_dbl_rev +#define gallop_left gallop_left_dbl_rev +#define gallop_right gallop_right_dbl_rev +#define ISLT ISLT_dbl_rev +#define merge_at merge_at_dbl_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at + +#undef COPY #endif #ifndef NOEXPAND_OID -#define T oid -#define O +#define COPY COPY_oid + +#define binarysort binarysort_oid +#define do_ssort do_ssort_oid +#define gallop_left gallop_left_oid +#define gallop_right gallop_right_oid +#define ISLT ISLT_oid +#define merge_at merge_at_oid #include "gdk_ssort_impl.h" -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT +#undef merge_at -#define O _rev +#define binarysort binarysort_oid_rev +#define do_ssort do_ssort_oid_rev +#define gallop_left gallop_left_oid_rev +#define gallop_right gallop_right_oid_rev +#define ISLT ISLT_oid_rev +#define merge_at merge_at_oid_rev #include "gdk_ssort_impl.h" -#undef T -#undef O +#undef binarysort +#undef do_ssort +#undef gallop_left +#undef gallop_right +#undef ISLT _______________________________________________ Checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
