@@ -49,7 +49,7 @@ static void __attribute__ ((noinline)) process_all_tasks() {
4949 vx_spawn_tasks_cb callback = targs -> callback ;
5050 const void * arg = targs -> arg ;
5151 for (uint32_t task_id = start_task_id ; task_id < end_task_id ; task_id += threads_per_warp ) {
52- callback (task_id , arg );
52+ callback (task_id , ( void * ) arg );
5353 }
5454}
5555
@@ -59,7 +59,7 @@ static void __attribute__ ((noinline)) process_remaining_tasks() {
5959 uint32_t thread_id = vx_thread_id ();
6060 uint32_t task_id = targs -> remain_tasks_offset + thread_id ;
6161
62- (targs -> callback )(task_id , targs -> arg );
62+ (targs -> callback )(task_id , ( void * ) targs -> arg );
6363}
6464
6565static void __attribute__ ((noinline )) process_all_tasks_stub () {
@@ -205,7 +205,7 @@ static void __attribute__ ((noinline)) process_all_task_groups() {
205205 blockIdx .x = group_id % gridDim .x ;
206206 blockIdx .y = (group_id / gridDim .x ) % gridDim .y ;
207207 blockIdx .z = group_id / (gridDim .x * gridDim .y );
208- callback (arg );
208+ callback (( void * ) arg );
209209 }
210210}
211211
@@ -236,8 +236,8 @@ int vx_spawn_threads(uint32_t dimension,
236236 uint32_t num_groups = 1 ;
237237 uint32_t group_size = 1 ;
238238 for (uint32_t i = 0 ; i < 3 ; ++ i ) {
239- uint32_t gd = (i < dimension ) ? grid_dim [i ] : 1 ;
240- uint32_t bd = (i < dimension ) ? block_dim [i ] : 1 ;
239+ uint32_t gd = (grid_dim && ( i < dimension ) ) ? grid_dim [i ] : 1 ;
240+ uint32_t bd = (block_dim && ( i < dimension ) ) ? block_dim [i ] : 1 ;
241241 num_groups *= gd ;
242242 group_size *= bd ;
243243 gridDim .m [i ] = gd ;
0 commit comments