# HG changeset patch # User Nina Engelhardt # Date 1371724794 -7200 # Node ID 19114b7a235730aaa2fee1ff6186a2255e13dd6d # Parent 7e7f37aa2f61d1ac87756fc7d6b91e82d90fa81e extern decl to work with c++ name mangling diff -r 7e7f37aa2f61 -r 19114b7a2357 VSs.c --- a/VSs.c Tue Jun 11 15:40:51 2013 +0200 +++ b/VSs.c Thu Jun 20 12:39:54 2013 +0200 @@ -944,6 +944,8 @@ return creatingSlv->dataRetFromReq; } +extern int __program_main(int argc, char** argv); + int __main_ret; void __entry_point(void* _args) { @@ -959,4 +961,4 @@ args.argv = argv; VSs__create_seed_slave_and_do_work(__entry_point, (void*) &args); return __main_ret; -} \ No newline at end of file +} diff -r 7e7f37aa2f61 -r 19114b7a2357 nanos-vss.c --- a/nanos-vss.c Tue Jun 11 15:40:51 2013 +0200 +++ b/nanos-vss.c Thu Jun 20 12:39:54 2013 +0200 @@ -33,11 +33,9 @@ *data = alloc_data; ts->args = alloc_data; - nanos_device_t* dev = (nanos_device_t*) &const_data[1]; - VSsTaskType* taskType = (VSsTaskType*) malloc(sizeof (VSsTaskType)); - taskType->fn = *((VSsTaskFnPtr*) dev[0].arg); + taskType->fn = *((VSsTaskFnPtr*)((nanos_device_t*) &const_data[1])->arg); taskType->sizeOfArgs = data_size; ts->taskType = taskType; @@ -121,11 +119,9 @@ * so ugly pointer tricks to get it from there */ - nanos_device_t* dev = (nanos_device_t*) &const_data[1]; - VSsTaskType* taskType = (VSsTaskType*) malloc(sizeof (VSsTaskType)); - taskType->fn = *((VSsTaskFnPtr*) dev[0].arg); + taskType->fn = *((VSsTaskFnPtr*)((nanos_device_t*) &const_data[1])->arg); taskType->numDeps = num_deps; taskType->depsTypes = depsTypes; taskType->depsSizes = depsSizes; @@ -224,4 +220,4 @@ void nanos_omp_set_interface ( void * arg){ return; -} \ No newline at end of file +}