changeset 42:bb6fbcbce14d dev_expl_VP_and_DKU

fix unpacking of dependency ptrs
author Nina Engelhardt <nengel@mailbox.tu-berlin.de>
date Fri, 07 Jun 2013 15:47:52 +0200
parents 37bb39da5ff1
children 8733d1299c3a
files nanos-vss.c
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line diff
     1.1 --- a/nanos-vss.c	Wed Jun 05 14:40:40 2013 +0200
     1.2 +++ b/nanos-vss.c	Fri Jun 07 15:47:52 2013 +0200
     1.3 @@ -25,6 +25,9 @@
     1.4  nanos_err_t nanos_create_wd_compact(nanos_wd_t *wd, nanos_const_wd_definition_t *const_data, nanos_wd_dyn_props_t *dyn_props,
     1.5          size_t data_size, void ** data, nanos_wg_t wg, nanos_copy_data_t **copies) {
     1.6      
     1.7 +    *wd = NULL;
     1.8 +    return NANOS_OK;
     1.9 +    
    1.10      VSsTaskStub* ts = (VSsTaskStub*) malloc(sizeof (VSsTaskStub));
    1.11      void* alloc_data = malloc(data_size);
    1.12      *data = alloc_data;
    1.13 @@ -46,13 +49,15 @@
    1.14  
    1.15  nanos_err_t nanos_submit(nanos_wd_t wd, size_t num_deps, nanos_dependence_t *deps, nanos_team_t team) {
    1.16  
    1.17 +    return NANOS_UNIMPLEMENTED;
    1.18 +    
    1.19      int32* depsTypes = malloc(sizeof (int32) * num_deps);
    1.20      size_t* depsSizes = malloc(sizeof (size_t) * num_deps);
    1.21      void** depsAddrs = malloc(sizeof (void*)*num_deps);
    1.22  
    1.23      int i;
    1.24      for (i = 0; i < num_deps; i++) {
    1.25 -        depsAddrs[i] = deps[i].address;
    1.26 +        depsAddrs[i] = (void *) ( (char *) (*deps[i].address) + deps[i].offset );
    1.27          depsTypes[i] = (deps[i].flags.output) ? WRITER : READER;
    1.28          depsSizes[i] = deps[i].size;
    1.29      }
    1.30 @@ -96,11 +101,11 @@
    1.31  
    1.32      int32* depsTypes = malloc(sizeof (int32) * num_deps);
    1.33      size_t* depsSizes = malloc(sizeof (size_t) * num_deps);
    1.34 -    void** depsAddrs = malloc(sizeof (void*)*num_deps);
    1.35 +    void** depsAddrs = malloc(sizeof (void*) * num_deps);
    1.36  
    1.37      int i;
    1.38      for (i = 0; i < num_deps; i++) {
    1.39 -        depsAddrs[i] = deps[i].address;
    1.40 +        depsAddrs[i] = (void *) ( (char *) (*deps[i].address) + deps[i].offset );
    1.41          depsTypes[i] = (deps[i].flags.output) ? WRITER : READER;
    1.42          depsSizes[i] = deps[i].size;
    1.43      }