Stefan, this needs to be inlined because it is used many times. I will deal with compilation issues later on. This is a dev branch and we are running different experiments every night. But with this change if measured times are different I would not know if it is because of other changes or because of the inline statement removal. I would appreciate if you did not make any changes in this branch at the moment. thank you, lefteris On Mon, Mar 7, 2016 at 8:34 PM, Stefan Manegold < commits+Stefan.Manegold=cwi.nl@monetdb.org> wrote:
Changeset: ea1aed8beff8 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ea1aed8beff8 Modified Files: gdk/gdk_bloom.c Branch: leftmart Log Message:
trying to fix Windows compilation: do not "inline" BLOOMask()
On Windows, compilation fails with failed invocation: cl -GF -W3 -WX -MD -nologo -Ox -Zi -Oi -I. -I.\.. -I.\..\..\gdk -I..\common\options -I.\..\..\gdk\..\common\options -I..\common\stream -I.\..\..\gdk\..\common\stream -I..\common\utils -I.\..\..\gdk\..\common\utils -I.\..\..\buildtools\conf -DHAVE_ICONV -IC:\Libraries\iconv-1.11.1.win64-vs2010\include -DHAVE_LIBATOMIC_OPS -IC:\Libraries\atomic_ops-7.4.2 -DNDEBUG -LD -Felibbat.dll gdk_batop.obj gdk_select.obj gdk_search.obj gdk_hash.obj gdk_tm.obj gdk_orderidx.obj gdk_align.obj gdk_bbp.obj gdk_heap.obj gdk_utils.obj gdk_atoms.obj gdk_qsort.obj gdk_ssort.obj gdk_storage.obj gdk_bat.obj gdk_delta.obj gdk_cross.obj gdk_system.obj gdk_value.obj gdk_posix.obj gdk_logger.obj gdk_sample.obj gdk_calc.obj gdk_aggr.obj gdk_group.obj gdk_imprints.obj gdk_bloom.obj gdk_join.obj gdk_project.obj gdk_unique.obj gdk_firstn.obj libbat.res /link ..\common\options\monet_options.obj ..\common\stream\libstream.lib ..\common\utils\mutils.obj ..\common\utils\prompt.obj wsock32.lib Ws2_32.l ib C:\Libraries\zlib-1.2.8.win64-vs2010\lib\zdll.lib C:\Libraries\bzip2-1.0.6.win64-vs2010\lib\libbz2.lib psapi.lib Creating library libbat.lib and object libbat.exp gdk_join.obj : error LNK2019: unresolved external symbol BLOOMask referenced in function hashjoin libbat.dll : fatal error LNK1120: 1 unresolved externals
Maybe, the fact that BLOOMask() is "inline"d triggers this problem ...
diffs (11 lines):
diff --git a/gdk/gdk_bloom.c b/gdk/gdk_bloom.c --- a/gdk/gdk_bloom.c +++ b/gdk/gdk_bloom.c @@ -240,7 +240,6 @@ BATbloom(BAT *b) return GDK_SUCCEED; }
-inline int BLOOMask(BUN v, Bloomfilter *bloom) { BUN hv,mv,x,y,z; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list