MCPcopy Create free account
hub / github.com/clMathLibraries/clBLAS / handleReduceSum

Method handleReduceSum

src/library/blas/gens/kprintf.cpp:1240–1281  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1238}
1239
1240void kprintf::handleReduceSum(char **_src, char **_dst)
1241{
1242 int numCharsWritten = 0;
1243 char id1[256];
1244 char * ptr;
1245 char *src = *_src;
1246 char *dst = *_dst;
1247
1248 ptr = mystrtok( src, "(,)");
1249 ptr = mystrtok( NULL, "(,)"); // Get first ID
1250 strcpy( id1, ptr);
1251 *_src = ptr + strlen(ptr) + 1;
1252
1253 if(vectorWidth > 1)
1254 {
1255 if ( s_or_v == SCALAR)
1256 {
1257 for( int i = 0 ; i < (vectorWidth - 1); i++)
1258 {
1259 numCharsWritten = sprintf(dst,"%s.%s + ", id1, vecIndices[i]);
1260 dst += numCharsWritten;
1261 }
1262 numCharsWritten = sprintf(dst,"%s.%s;\n", id1, vecIndices[ (vectorWidth - 1)]);
1263 dst += numCharsWritten;
1264 }
1265 else
1266 {
1267 for( int i = 0 ; i < (vectorWidth- 1); i++)
1268 {
1269 numCharsWritten = sprintf(dst,"%s.s%d%d + ", id1,(i*2), (i*2 + 1));
1270 dst += numCharsWritten;
1271 }
1272 numCharsWritten = sprintf(dst,"%s.s%d%d;\n", id1,((vectorWidth- 1)*2), ((vectorWidth- 1)*2 + 1));
1273 dst += numCharsWritten;
1274 }
1275 } else {
1276 numCharsWritten = sprintf(dst,"(%s);\n", id1);
1277 dst += numCharsWritten;
1278 }
1279
1280 *_dst = dst;
1281}
1282
1283void kprintf::handleReduceMax(char **_src, char **_dst)
1284{

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected