1#define PERL_constant_NOTFOUND 1 2#define PERL_constant_NOTDEF 2 3#define PERL_constant_ISIV 3 4#define PERL_constant_ISNO 4 5#define PERL_constant_ISNV 5 6#define PERL_constant_ISPV 6 7#define PERL_constant_ISPVN 7 8#define PERL_constant_ISSV 8 9#define PERL_constant_ISUNDEF 9 10#define PERL_constant_ISUV 10 11#define PERL_constant_ISYES 11 12 13#ifndef NVTYPE 14typedef double NV; /* 5.6 and later define NVTYPE, and typedef NV to it. */ 15#endif 16#ifndef aTHX_ 17#define aTHX_ /* 5.6 or later define this for threading support. */ 18#endif 19#ifndef pTHX_ 20#define pTHX_ /* 5.6 or later define this for threading support. */ 21#endif 22 23static int 24constant_11 (pTHX_ const char *name, IV *iv_return) { 25 /* When generated this function returned values for the list of names given 26 here. However, subsequent manual editing may have added or removed some. 27 ITIMER_PROF ITIMER_REAL d_getitimer d_nanosleep d_setitimer d_utimensat */ 28 /* Offset 7 gives the best switch position. */ 29 switch (name[7]) { 30 case 'P': 31 if (memEQ(name, "ITIMER_PROF", 11)) { 32 /* ^ */ 33#ifdef ITIMER_PROF 34 *iv_return = ITIMER_PROF; 35 return PERL_constant_ISIV; 36#else 37 return PERL_constant_NOTDEF; 38#endif 39 } 40 break; 41 case 'R': 42 if (memEQ(name, "ITIMER_REAL", 11)) { 43 /* ^ */ 44#ifdef ITIMER_REAL 45 *iv_return = ITIMER_REAL; 46 return PERL_constant_ISIV; 47#else 48 return PERL_constant_NOTDEF; 49#endif 50 } 51 break; 52 case 'i': 53 if (memEQ(name, "d_getitimer", 11)) { 54 /* ^ */ 55#ifdef HAS_GETITIMER 56 *iv_return = 1; 57 return PERL_constant_ISIV; 58#else 59 *iv_return = 0; 60 return PERL_constant_ISIV; 61#endif 62 } 63 if (memEQ(name, "d_setitimer", 11)) { 64 /* ^ */ 65#ifdef HAS_SETITIMER 66 *iv_return = 1; 67 return PERL_constant_ISIV; 68#else 69 *iv_return = 0; 70 return PERL_constant_ISIV; 71#endif 72 } 73 break; 74 case 'l': 75 if (memEQ(name, "d_nanosleep", 11)) { 76 /* ^ */ 77#ifdef TIME_HIRES_NANOSLEEP 78 *iv_return = 1; 79 return PERL_constant_ISIV; 80#else 81 *iv_return = 0; 82 return PERL_constant_ISIV; 83#endif 84 } 85 break; 86 case 'n': 87 if (memEQ(name, "d_utimensat", 11)) { 88 /* ^ */ 89#ifdef HAS_UTIMENSAT 90 *iv_return = 1; 91 return PERL_constant_ISIV; 92#else 93 *iv_return = 0; 94 return PERL_constant_ISIV; 95#endif 96 } 97 break; 98 } 99 return PERL_constant_NOTFOUND; 100} 101 102static int 103constant_12 (pTHX_ const char *name, IV *iv_return) { 104 /* When generated this function returned values for the list of names given 105 here. However, subsequent manual editing may have added or removed some. 106 CLOCK_SECOND CLOCK_UPTIME d_hires_stat */ 107 /* Offset 10 gives the best switch position. */ 108 switch (name[10]) { 109 case 'M': 110 if (memEQ(name, "CLOCK_UPTIME", 12)) { 111 /* ^ */ 112#ifdef CLOCK_UPTIME 113 *iv_return = CLOCK_UPTIME; 114 return PERL_constant_ISIV; 115#else 116 return PERL_constant_NOTDEF; 117#endif 118 } 119 break; 120 case 'N': 121 if (memEQ(name, "CLOCK_SECOND", 12)) { 122 /* ^ */ 123#ifdef CLOCK_SECOND 124 *iv_return = CLOCK_SECOND; 125 return PERL_constant_ISIV; 126#else 127 return PERL_constant_NOTDEF; 128#endif 129 } 130 break; 131 case 'a': 132 if (memEQ(name, "d_hires_stat", 12)) { 133 /* ^ */ 134#ifdef TIME_HIRES_STAT 135 *iv_return = 1; 136 return PERL_constant_ISIV; 137#else 138 *iv_return = 0; 139 return PERL_constant_ISIV; 140#endif 141 } 142 break; 143 } 144 return PERL_constant_NOTFOUND; 145} 146 147static int 148constant_13 (pTHX_ const char *name, IV *iv_return) { 149 /* When generated this function returned values for the list of names given 150 here. However, subsequent manual editing may have added or removed some. 151 CLOCK_HIGHRES CLOCK_VIRTUAL TIMER_ABSTIME d_hires_utime */ 152 /* Offset 12 gives the best switch position. */ 153 switch (name[12]) { 154 case 'E': 155 if (memEQ(name, "TIMER_ABSTIM", 12)) { 156 /* E */ 157#ifdef TIMER_ABSTIME 158 *iv_return = TIMER_ABSTIME; 159 return PERL_constant_ISIV; 160#else 161 return PERL_constant_NOTDEF; 162#endif 163 } 164 break; 165 case 'L': 166 if (memEQ(name, "CLOCK_VIRTUA", 12)) { 167 /* L */ 168#ifdef CLOCK_VIRTUAL 169 *iv_return = CLOCK_VIRTUAL; 170 return PERL_constant_ISIV; 171#else 172 return PERL_constant_NOTDEF; 173#endif 174 } 175 break; 176 case 'S': 177 if (memEQ(name, "CLOCK_HIGHRE", 12)) { 178 /* S */ 179#ifdef CLOCK_HIGHRES 180 *iv_return = CLOCK_HIGHRES; 181 return PERL_constant_ISIV; 182#else 183 return PERL_constant_NOTDEF; 184#endif 185 } 186 break; 187 case 'e': 188 if (memEQ(name, "d_hires_utim", 12)) { 189 /* e */ 190#ifdef TIME_HIRES_UTIME 191 *iv_return = 1; 192 return PERL_constant_ISIV; 193#else 194 *iv_return = 0; 195 return PERL_constant_ISIV; 196#endif 197 } 198 break; 199 } 200 return PERL_constant_NOTFOUND; 201} 202 203static int 204constant_14 (pTHX_ const char *name, IV *iv_return) { 205 /* When generated this function returned values for the list of names given 206 here. However, subsequent manual editing may have added or removed some. 207 CLOCKS_PER_SEC CLOCK_BOOTTIME CLOCK_REALTIME CLOCK_SOFTTIME ITIMER_VIRTUAL 208 d_clock_getres d_gettimeofday */ 209 /* Offset 8 gives the best switch position. */ 210 switch (name[8]) { 211 case 'A': 212 if (memEQ(name, "CLOCK_REALTIME", 14)) { 213 /* ^ */ 214#ifdef CLOCK_REALTIME 215 *iv_return = CLOCK_REALTIME; 216 return PERL_constant_ISIV; 217#else 218 return PERL_constant_NOTDEF; 219#endif 220 } 221 break; 222 case 'E': 223 if (memEQ(name, "CLOCKS_PER_SEC", 14)) { 224 /* ^ */ 225#ifdef CLOCKS_PER_SEC 226 *iv_return = CLOCKS_PER_SEC; 227 return PERL_constant_ISIV; 228#else 229 return PERL_constant_NOTDEF; 230#endif 231 } 232 break; 233 case 'F': 234 if (memEQ(name, "CLOCK_SOFTTIME", 14)) { 235 /* ^ */ 236#ifdef CLOCK_SOFTTIME 237 *iv_return = CLOCK_SOFTTIME; 238 return PERL_constant_ISIV; 239#else 240 return PERL_constant_NOTDEF; 241#endif 242 } 243 break; 244 case 'I': 245 if (memEQ(name, "ITIMER_VIRTUAL", 14)) { 246 /* ^ */ 247#ifdef ITIMER_VIRTUAL 248 *iv_return = ITIMER_VIRTUAL; 249 return PERL_constant_ISIV; 250#else 251 return PERL_constant_NOTDEF; 252#endif 253 } 254 break; 255 case 'O': 256 if (memEQ(name, "CLOCK_BOOTTIME", 14)) { 257 /* ^ */ 258#ifdef CLOCK_BOOTTIME 259 *iv_return = CLOCK_BOOTTIME; 260 return PERL_constant_ISIV; 261#else 262 return PERL_constant_NOTDEF; 263#endif 264 } 265 break; 266 case 'e': 267 if (memEQ(name, "d_gettimeofday", 14)) { 268 /* ^ */ 269#ifdef HAS_GETTIMEOFDAY 270 *iv_return = 1; 271 return PERL_constant_ISIV; 272#else 273 *iv_return = 0; 274 return PERL_constant_ISIV; 275#endif 276 } 277 break; 278 case 'g': 279 if (memEQ(name, "d_clock_getres", 14)) { 280 /* ^ */ 281#ifdef TIME_HIRES_CLOCK_GETRES 282 *iv_return = 1; 283 return PERL_constant_ISIV; 284#else 285 *iv_return = 0; 286 return PERL_constant_ISIV; 287#endif 288 } 289 break; 290 } 291 return PERL_constant_NOTFOUND; 292} 293 294static int 295constant_15 (pTHX_ const char *name, IV *iv_return) { 296 /* When generated this function returned values for the list of names given 297 here. However, subsequent manual editing may have added or removed some. 298 CLOCK_MONOTONIC CLOCK_TIMEOFDAY ITIMER_REALPROF d_clock_gettime */ 299 /* Offset 7 gives the best switch position. */ 300 switch (name[7]) { 301 case 'I': 302 if (memEQ(name, "CLOCK_TIMEOFDAY", 15)) { 303 /* ^ */ 304#ifdef CLOCK_TIMEOFDAY 305 *iv_return = CLOCK_TIMEOFDAY; 306 return PERL_constant_ISIV; 307#else 308 return PERL_constant_NOTDEF; 309#endif 310 } 311 break; 312 case 'O': 313 if (memEQ(name, "CLOCK_MONOTONIC", 15)) { 314 /* ^ */ 315#ifdef CLOCK_MONOTONIC 316 *iv_return = CLOCK_MONOTONIC; 317 return PERL_constant_ISIV; 318#else 319 return PERL_constant_NOTDEF; 320#endif 321 } 322 break; 323 case 'R': 324 if (memEQ(name, "ITIMER_REALPROF", 15)) { 325 /* ^ */ 326#ifdef ITIMER_REALPROF 327 *iv_return = ITIMER_REALPROF; 328 return PERL_constant_ISIV; 329#else 330 return PERL_constant_NOTDEF; 331#endif 332 } 333 break; 334 case '_': 335 if (memEQ(name, "d_clock_gettime", 15)) { 336 /* ^ */ 337#ifdef TIME_HIRES_CLOCK_GETTIME 338 *iv_return = 1; 339 return PERL_constant_ISIV; 340#else 341 *iv_return = 0; 342 return PERL_constant_ISIV; 343#endif 344 } 345 break; 346 } 347 return PERL_constant_NOTFOUND; 348} 349 350static int 351constant_19 (pTHX_ const char *name, IV *iv_return) { 352 /* When generated this function returned values for the list of names given 353 here. However, subsequent manual editing may have added or removed some. 354 CLOCK_MONOTONIC_RAW CLOCK_REALTIME_FAST CLOCK_UPTIME_COARSE */ 355 /* Offset 9 gives the best switch position. */ 356 switch (name[9]) { 357 case 'I': 358 if (memEQ(name, "CLOCK_UPTIME_COARSE", 19)) { 359 /* ^ */ 360#ifdef CLOCK_UPTIME_COARSE 361 *iv_return = CLOCK_UPTIME_COARSE; 362 return PERL_constant_ISIV; 363#else 364 *iv_return = 0; 365 return PERL_constant_NOTDEF; 366#endif 367 } 368 break; 369 case 'L': 370 if (memEQ(name, "CLOCK_REALTIME_FAST", 19)) { 371 /* ^ */ 372#ifdef CLOCK_REALTIME_FAST 373 *iv_return = CLOCK_REALTIME_FAST; 374 return PERL_constant_ISIV; 375#else 376 *iv_return = 0; 377 return PERL_constant_NOTDEF; 378#endif 379 } 380 break; 381 case 'O': 382 if (memEQ(name, "CLOCK_MONOTONIC_RAW", 19)) { 383 /* ^ */ 384#ifdef CLOCK_MONOTONIC_RAW 385 *iv_return = CLOCK_MONOTONIC_RAW; 386 return PERL_constant_ISIV; 387#else 388 *iv_return = 0; 389 return PERL_constant_NOTDEF; 390#endif 391 } 392 break; 393 } 394 return PERL_constant_NOTFOUND; 395} 396 397static int 398constant (pTHX_ const char *name, STRLEN len, IV *iv_return) { 399 /* Initially switch on the length of the name. */ 400 /* When generated this function returned values for the list of names given 401 in this section of perl code. Rather than manually editing these functions 402 to add or remove constants, which would result in this comment and section 403 of code becoming inaccurate, we recommend that you edit this section of 404 code, and use it to regenerate a new set of constant functions which you 405 then use to replace the originals. 406 407 Regenerate these constant functions by feeding this entire source file to 408 perl -x 409 410#!/opt/local/perl-5.25.6/bin/perl -w 411use ExtUtils::Constant qw (constant_types C_constant XS_constant); 412 413my $types = {map {($_, 1)} qw(IV)}; 414my @names = (qw(CLOCKS_PER_SEC CLOCK_BOOTTIME CLOCK_HIGHRES CLOCK_MONOTONIC 415 CLOCK_MONOTONIC_COARSE CLOCK_MONOTONIC_FAST 416 CLOCK_MONOTONIC_PRECISE CLOCK_MONOTONIC_RAW 417 CLOCK_PROCESS_CPUTIME_ID CLOCK_PROF CLOCK_REALTIME 418 CLOCK_REALTIME_COARSE CLOCK_REALTIME_FAST CLOCK_REALTIME_PRECISE 419 CLOCK_REALTIME_RAW CLOCK_SECOND CLOCK_SOFTTIME 420 CLOCK_THREAD_CPUTIME_ID CLOCK_TIMEOFDAY CLOCK_UPTIME 421 CLOCK_UPTIME_COARSE CLOCK_UPTIME_FAST CLOCK_UPTIME_PRECISE 422 CLOCK_UPTIME_RAW CLOCK_VIRTUAL ITIMER_PROF ITIMER_REAL 423 ITIMER_REALPROF ITIMER_VIRTUAL TIMER_ABSTIME), 424 {name=>"d_clock", type=>"IV", macro=>"TIME_HIRES_CLOCK", value=>"1", default=>["IV", "0"]}, 425 {name=>"d_clock_getres", type=>"IV", macro=>"TIME_HIRES_CLOCK_GETRES", value=>"1", default=>["IV", "0"]}, 426 {name=>"d_clock_gettime", type=>"IV", macro=>"TIME_HIRES_CLOCK_GETTIME", value=>"1", default=>["IV", "0"]}, 427 {name=>"d_clock_nanosleep", type=>"IV", macro=>"TIME_HIRES_CLOCK_NANOSLEEP", value=>"1", default=>["IV", "0"]}, 428 {name=>"d_futimens", type=>"IV", macro=>"HAS_FUTIMENS", value=>"1", default=>["IV", "0"]}, 429 {name=>"d_getitimer", type=>"IV", macro=>"HAS_GETITIMER", value=>"1", default=>["IV", "0"]}, 430 {name=>"d_gettimeofday", type=>"IV", macro=>"HAS_GETTIMEOFDAY", value=>"1", default=>["IV", "0"]}, 431 {name=>"d_hires_stat", type=>"IV", macro=>"TIME_HIRES_STAT", value=>"1", default=>["IV", "0"]}, 432 {name=>"d_hires_utime", type=>"IV", macro=>"TIME_HIRES_UTIME", value=>"1", default=>["IV", "0"]}, 433 {name=>"d_nanosleep", type=>"IV", macro=>"TIME_HIRES_NANOSLEEP", value=>"1", default=>["IV", "0"]}, 434 {name=>"d_setitimer", type=>"IV", macro=>"HAS_SETITIMER", value=>"1", default=>["IV", "0"]}, 435 {name=>"d_ualarm", type=>"IV", macro=>"HAS_UALARM", value=>"1", default=>["IV", "0"]}, 436 {name=>"d_usleep", type=>"IV", macro=>"HAS_USLEEP", value=>"1", default=>["IV", "0"]}, 437 {name=>"d_utimensat", type=>"IV", macro=>"HAS_UTIMENSAT", value=>"1", default=>["IV", "0"]}); 438 439print constant_types(), "\n"; # macro defs 440foreach (C_constant ("Time::HiRes", 'constant', 'IV', $types, undef, 3, @names) ) { 441 print $_, "\n"; # C constant subs 442} 443print "\n#### XS Section:\n"; 444print XS_constant ("Time::HiRes", $types); 445__END__ 446 */ 447 448 switch (len) { 449 case 7: 450 if (memEQ(name, "d_clock", 7)) { 451#ifdef TIME_HIRES_CLOCK 452 *iv_return = 1; 453 return PERL_constant_ISIV; 454#else 455 *iv_return = 0; 456 return PERL_constant_ISIV; 457#endif 458 } 459 break; 460 case 8: 461 /* Names all of length 8. */ 462 /* d_ualarm d_usleep */ 463 /* Offset 7 gives the best switch position. */ 464 switch (name[7]) { 465 case 'm': 466 if (memEQ(name, "d_ualar", 7)) { 467 /* m */ 468#ifdef HAS_UALARM 469 *iv_return = 1; 470 return PERL_constant_ISIV; 471#else 472 *iv_return = 0; 473 return PERL_constant_ISIV; 474#endif 475 } 476 break; 477 case 'p': 478 if (memEQ(name, "d_uslee", 7)) { 479 /* p */ 480#ifdef HAS_USLEEP 481 *iv_return = 1; 482 return PERL_constant_ISIV; 483#else 484 *iv_return = 0; 485 return PERL_constant_ISIV; 486#endif 487 } 488 break; 489 } 490 break; 491 case 10: 492 /* Names all of length 10. */ 493 /* CLOCK_PROF d_futimens */ 494 /* Offset 5 gives the best switch position. */ 495 switch (name[5]) { 496 case '_': 497 if (memEQ(name, "CLOCK_PROF", 10)) { 498 /* ^ */ 499#ifdef CLOCK_PROF 500 *iv_return = CLOCK_PROF; 501 return PERL_constant_ISIV; 502#else 503 return PERL_constant_NOTDEF; 504#endif 505 } 506 break; 507 case 'i': 508 if (memEQ(name, "d_futimens", 10)) { 509 /* ^ */ 510#ifdef HAS_FUTIMENS 511 *iv_return = 1; 512 return PERL_constant_ISIV; 513#else 514 *iv_return = 0; 515 return PERL_constant_ISIV; 516#endif 517 } 518 break; 519 } 520 break; 521 case 11: 522 return constant_11 (aTHX_ name, iv_return); 523 break; 524 case 12: 525 return constant_12 (aTHX_ name, iv_return); 526 break; 527 case 13: 528 return constant_13 (aTHX_ name, iv_return); 529 break; 530 case 14: 531 return constant_14 (aTHX_ name, iv_return); 532 break; 533 case 15: 534 return constant_15 (aTHX_ name, iv_return); 535 break; 536 case 16: 537 if (memEQ(name, "CLOCK_UPTIME_RAW", 16)) { 538#ifdef CLOCK_UPTIME_RAW 539 *iv_return = CLOCK_UPTIME_RAW; 540 return PERL_constant_ISIV; 541#else 542 return PERL_constant_NOTDEF; 543#endif 544 } 545 break; 546 case 17: 547 /* Names all of length 17. */ 548 /* CLOCK_UPTIME_FAST d_clock_nanosleep */ 549 /* Offset 5 gives the best switch position. */ 550 switch (name[5]) { 551 case '_': 552 if (memEQ(name, "CLOCK_UPTIME_FAST", 17)) { 553 /* ^ */ 554#ifdef CLOCK_UPTIME_FAST 555 *iv_return = CLOCK_UPTIME_FAST; 556 return PERL_constant_ISIV; 557#else 558 return PERL_constant_NOTDEF; 559#endif 560 } 561 break; 562 case 'c': 563 if (memEQ(name, "d_clock_nanosleep", 17)) { 564 /* ^ */ 565#ifdef TIME_HIRES_CLOCK_NANOSLEEP 566 *iv_return = 1; 567 return PERL_constant_ISIV; 568#else 569 *iv_return = 0; 570 return PERL_constant_ISIV; 571#endif 572 } 573 break; 574 } 575 break; 576 case 18: 577 if (memEQ(name, "CLOCK_REALTIME_RAW", 18)) { 578#ifdef CLOCK_REALTIME_RAW 579 *iv_return = CLOCK_REALTIME_RAW; 580 return PERL_constant_ISIV; 581#else 582 return PERL_constant_NOTDEF; 583#endif 584 } 585 break; 586 case 19: 587 return constant_19 (aTHX_ name, iv_return); 588 break; 589 case 20: 590 /* Names all of length 20. */ 591 /* CLOCK_MONOTONIC_FAST CLOCK_UPTIME_PRECISE */ 592 /* Offset 7 gives the best switch position. */ 593 switch (name[7]) { 594 case 'O': 595 if (memEQ(name, "CLOCK_MONOTONIC_FAST", 20)) { 596 /* ^ */ 597#ifdef CLOCK_MONOTONIC_FAST 598 *iv_return = CLOCK_MONOTONIC_FAST; 599 return PERL_constant_ISIV; 600#else 601 return PERL_constant_NOTDEF; 602#endif 603 } 604 break; 605 case 'P': 606 if (memEQ(name, "CLOCK_UPTIME_PRECISE", 20)) { 607 /* ^ */ 608#ifdef CLOCK_UPTIME_PRECISE 609 *iv_return = CLOCK_UPTIME_PRECISE; 610 return PERL_constant_ISIV; 611#else 612 return PERL_constant_NOTDEF; 613#endif 614 } 615 break; 616 } 617 break; 618 case 21: 619 if (memEQ(name, "CLOCK_REALTIME_COARSE", 21)) { 620#ifdef CLOCK_REALTIME_COARSE 621 *iv_return = CLOCK_REALTIME_COARSE; 622 return PERL_constant_ISIV; 623#else 624 return PERL_constant_NOTDEF; 625#endif 626 } 627 break; 628 case 22: 629 /* Names all of length 22. */ 630 /* CLOCK_MONOTONIC_COARSE CLOCK_REALTIME_PRECISE */ 631 /* Offset 12 gives the best switch position. */ 632 switch (name[12]) { 633 case 'M': 634 if (memEQ(name, "CLOCK_REALTIME_PRECISE", 22)) { 635 /* ^ */ 636#ifdef CLOCK_REALTIME_PRECISE 637 *iv_return = CLOCK_REALTIME_PRECISE; 638 return PERL_constant_ISIV; 639#else 640 return PERL_constant_NOTDEF; 641#endif 642 } 643 break; 644 case 'N': 645 if (memEQ(name, "CLOCK_MONOTONIC_COARSE", 22)) { 646 /* ^ */ 647#ifdef CLOCK_MONOTONIC_COARSE 648 *iv_return = CLOCK_MONOTONIC_COARSE; 649 return PERL_constant_ISIV; 650#else 651 return PERL_constant_NOTDEF; 652#endif 653 } 654 break; 655 } 656 break; 657 case 23: 658 /* Names all of length 23. */ 659 /* CLOCK_MONOTONIC_PRECISE CLOCK_THREAD_CPUTIME_ID */ 660 /* Offset 22 gives the best switch position. */ 661 switch (name[22]) { 662 case 'D': 663 if (memEQ(name, "CLOCK_THREAD_CPUTIME_I", 22)) { 664 /* D */ 665#ifdef CLOCK_THREAD_CPUTIME_ID 666 *iv_return = CLOCK_THREAD_CPUTIME_ID; 667 return PERL_constant_ISIV; 668#else 669 return PERL_constant_NOTDEF; 670#endif 671 } 672 break; 673 case 'E': 674 if (memEQ(name, "CLOCK_MONOTONIC_PRECIS", 22)) { 675 /* E */ 676#ifdef CLOCK_MONOTONIC_PRECISE 677 *iv_return = CLOCK_MONOTONIC_PRECISE; 678 return PERL_constant_ISIV; 679#else 680 return PERL_constant_NOTDEF; 681#endif 682 } 683 break; 684 } 685 break; 686 case 24: 687 if (memEQ(name, "CLOCK_PROCESS_CPUTIME_ID", 24)) { 688#ifdef CLOCK_PROCESS_CPUTIME_ID 689 *iv_return = CLOCK_PROCESS_CPUTIME_ID; 690 return PERL_constant_ISIV; 691#else 692 return PERL_constant_NOTDEF; 693#endif 694 } 695 break; 696 } 697 return PERL_constant_NOTFOUND; 698} 699 700