Index: libomptarget/deviceRTLs/nvptx/src/omptarget-nvptx.h =================================================================== --- libomptarget/deviceRTLs/nvptx/src/omptarget-nvptx.h +++ libomptarget/deviceRTLs/nvptx/src/omptarget-nvptx.h @@ -161,7 +161,7 @@ static const uint8_t TaskDescr_InParL2P = 0x40; union { // both have same size - uint64_t vect[2]; + uint16_t vect[9]; struct TaskDescr_items { uint8_t flags; // 6 bit used (see flag above) uint8_t unused; Index: libomptarget/deviceRTLs/nvptx/src/omptarget-nvptxi.h =================================================================== --- libomptarget/deviceRTLs/nvptx/src/omptarget-nvptxi.h +++ libomptarget/deviceRTLs/nvptx/src/omptarget-nvptxi.h @@ -68,8 +68,8 @@ INLINE void omptarget_nvptx_TaskDescr::CopyData( omptarget_nvptx_TaskDescr *sourceTaskDescr) { - data.vect[0] = sourceTaskDescr->data.vect[0]; - data.vect[1] = sourceTaskDescr->data.vect[1]; + for (int i=0; i<9; i++) + data.vect[i] = sourceTaskDescr->data.vect[i]; } INLINE void