diff --git a/hpvm/test/pipeline/src/main.cc b/hpvm/test/pipeline/src/main.cc index ef9d8412c70813fcae123b0ef84de1850fa6b28c..2a69a75037f622d5fffcdaeda8dc67f5cbdaf81d 100644 --- a/hpvm/test/pipeline/src/main.cc +++ b/hpvm/test/pipeline/src/main.cc @@ -66,6 +66,10 @@ std::string output_window = "GPU Pipeline - Edge Mapping"; extern "C" { +struct __attribute__((__packed__)) OutStruct { + size_t ret; +}; + struct __attribute__((__packed__)) InStruct { float *I; size_t bytesI; @@ -869,8 +873,8 @@ int main(int argc, char *argv[]) { __hpvm__push(DFG, args); void *ret = __hpvm__pop(DFG); - std::cout << "Returned size: " << *(size_t *)ret << " expected " << I_sz - << '\n'; + std::cout << "Returned size: " << ((OutStruct *)ret)->ret + << " expected " << I_sz << '\n'; llvm_hpvm_request_mem(maxG, bytesMaxG); llvm_hpvm_request_mem(E.data, I_sz);