Changeset: 579b4860cc63 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=579b4860cc63
Modified Files:
gdk/gdk_utils.c
monetdb5/mal/mal.c
Branch: default
Log Message:
Merge with Apr2019 branch.
diffs (87 lines):
diff --git a/gdk/gdk_utils.c b/gdk/gdk_utils.c
--- a/gdk/gdk_utils.c
+++ b/gdk/gdk_utils.c
@@ -1399,7 +1399,7 @@ THRstarter(void *a)
MT_Id
THRcreate(void (*f) (void *), void *arg, enum MT_thr_detach d, const char
*name)
{
- MT_Id tid;
+ MT_Id pid;
Thread s;
struct THRstart *t;
@@ -1419,7 +1419,7 @@ THRcreate(void (*f) (void *), void *arg,
GDKerror("THRcreate: too many threads\n");
return 0;
}
- tid = s->tid;
+ int tid = s->tid;
/* name is for debugging and may be NULL */
*s = (ThreadRec) {
.pid = ~0,
@@ -1431,7 +1431,7 @@ THRcreate(void (*f) (void *), void *arg,
MT_lock_unset(&GDKthreadLock);
t->thr = s;
MT_sema_init(&t->sem, 0, "THRcreate");
- if (MT_create_thread(&tid, THRstarter, t, d) != 0) {
+ if (MT_create_thread(&pid, THRstarter, t, d) != 0) {
GDKerror("THRcreate: could not start thread\n");
MT_sema_destroy(&t->sem);
GDKfree(t);
@@ -1442,11 +1442,11 @@ THRcreate(void (*f) (void *), void *arg,
}
MT_lock_set(&GDKthreadLock);
GDKnrofthreads++;
- s->pid = tid;
+ s->pid = pid;
MT_lock_unset(&GDKthreadLock);
/* send new thread on its way */
MT_sema_up(&t->sem);
- return tid;
+ return pid;
}
void
diff --git a/monetdb5/mal/mal.c b/monetdb5/mal/mal.c
--- a/monetdb5/mal/mal.c
+++ b/monetdb5/mal/mal.c
@@ -60,27 +60,23 @@ static
void tstAligned(void)
{
#ifdef STRUCT_ALIGNED
- int allAligned=0;
ValRecord v;
- ptr val, base;
- base = (ptr) & v.val.ival;
- val= (ptr) & v.val.bval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.btval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.shval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.ival; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.oval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.pval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.fval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.dval; if(val != base){ allAligned = -1; }
- val= (ptr) & v.val.lval; if(val != base){ allAligned = -1; }
+ static_assert((void *) &v.val.bval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.btval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.shval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.ival == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.oval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.pval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.fval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.dval == (void *) &v.val.ival,
"misaligned");
+ static_assert((void *) &v.val.lval == (void *) &v.val.ival,
"misaligned");
#ifdef HAVE_HGE
- val= (ptr) & v.val.hval; if(val != base){ allAligned = -1; }
+ static_assert((void *) &v.val.hval == (void *) &v.val.ival,
"misaligned");
#endif
- val= (ptr) & v.val.sval; if(val != base){ allAligned = -1; }
- if(allAligned<0)
- GDKfatal("Recompile with STRUCT_ALIGNED flag disabled\n");
+ static_assert((void *) &v.val.sval == (void *) &v.val.ival,
"misaligned");
#endif
}
+
int mal_init(void){
#ifdef NEED_MT_LOCK_INIT
MT_lock_init( &mal_contextLock, "mal_contextLock");
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list