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

Method handleReduceMin

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

Source from the content-addressed store, hash-verified

1413
1414
1415void kprintf::handleReduceMin(char **_src, char **_dst)
1416{
1417 int numCharsWritten = 0;
1418 char id1[256];
1419 char * ptr;
1420 char *src = *_src;
1421 char *dst = *_dst;
1422
1423 ptr = mystrtok( src, "(,)");
1424 ptr = mystrtok( NULL, "(,)"); // Get first ID
1425 strcpy( id1, ptr);
1426 *_src = ptr + strlen(ptr) + 1;
1427
1428 if(vectorWidth > 1)
1429 {
1430 if ( s_or_v == SCALAR)
1431 {
1432 for( int i = 0 ; i < (vectorWidth - 1); i++)
1433 {
1434 numCharsWritten = sprintf(dst,"fmin( %s.%s, ", id1, vecIndices[i]);
1435 dst += numCharsWritten;
1436 }
1437 numCharsWritten = sprintf(dst," %s.%s ", id1, vecIndices[ (vectorWidth - 1)]);
1438 dst += numCharsWritten;
1439 for( int i = 0 ; i < (vectorWidth - 1); i++)
1440 {
1441 numCharsWritten = sprintf(dst,")");
1442 dst += numCharsWritten;
1443 }
1444 numCharsWritten = sprintf(dst,";\n");
1445 dst += numCharsWritten;
1446 }
1447 else
1448 {
1449 for( int i = 0 ; i < (vectorWidth - 1); i++)
1450 {
1451 numCharsWritten = sprintf(dst,"fmin( %s.s%d%d, ", id1, (i*2), (i*2 + 1));
1452 dst += numCharsWritten;
1453 }
1454 numCharsWritten = sprintf(dst," %s.s%d%d ", id1, ((vectorWidth- 1)*2), ((vectorWidth- 1)*2 + 1));
1455 dst += numCharsWritten;
1456 for( int i = 0 ; i < (vectorWidth - 1); i++)
1457 {
1458 numCharsWritten = sprintf(dst,")");
1459 dst += numCharsWritten;
1460 }
1461 numCharsWritten = sprintf(dst,";\n");
1462 dst += numCharsWritten;
1463 }
1464 } else {
1465 numCharsWritten = sprintf(dst,"(%s);\n", id1);
1466 dst += numCharsWritten;
1467 }
1468
1469 *_dst = dst;
1470}
1471
1472void kprintf::handleReduceHypot(char **_src, char **_dst)

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected