| 1413 | |
| 1414 | |
| 1415 | void 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 | |
| 1472 | void kprintf::handleReduceHypot(char **_src, char **_dst) |
nothing calls this directly
no outgoing calls
no test coverage detected