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