1 //------------------------------------------------------------------------------ 2 // GB_concat_full_template: concatenate an full tile into a full matrix 3 //------------------------------------------------------------------------------ 4 5 // SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved. 6 // SPDX-License-Identifier: Apache-2.0 7 8 //------------------------------------------------------------------------------ 9 10 { 11 12 //-------------------------------------------------------------------------- 13 // get C and the tile A 14 //-------------------------------------------------------------------------- 15 16 const GB_CTYPE *restrict Ax = (GB_CTYPE *) A->x ; 17 GB_CTYPE *restrict Cx = (GB_CTYPE *) C->x ; 18 19 int64_t pA ; 20 #pragma omp parallel for num_threads(A_nthreads) schedule(static) 21 for (pA = 0 ; pA < anz ; pA++) 22 { 23 int64_t i = pA % avlen ; 24 int64_t j = pA / avlen ; 25 int64_t iC = cistart + i ; 26 int64_t jC = cvstart + j ; 27 int64_t pC = iC + jC * cvlen ; 28 // Cx [pC] = Ax [pA] ; 29 GB_COPY (pC, pA) ; 30 } 31 32 done = true ; 33 } 34 35 #undef GB_CTYPE 36 37