1 /****************************************************************************** 2 Copyright (c) 2007-2011, Intel Corp. 3 All rights reserved. 4 5 Redistribution and use in source and binary forms, with or without 6 modification, are permitted provided that the following conditions are met: 7 8 * Redistributions of source code must retain the above copyright notice, 9 this list of conditions and the following disclaimer. 10 * Redistributions in binary form must reproduce the above copyright 11 notice, this list of conditions and the following disclaimer in the 12 documentation and/or other materials provided with the distribution. 13 * Neither the name of Intel Corporation nor the names of its contributors 14 may be used to endorse or promote products derived from this software 15 without specific prior written permission. 16 17 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 21 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 25 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 27 THE POSSIBILITY OF SUCH DAMAGE. 28 ******************************************************************************/ 29 30 #ifndef DPML_NAMES_H 31 #define DPML_NAMES_H 32 33 /* 34 * If this file is used without dpml_private.h, then DPML_NULL_MACRO_TOKEN will 35 * be undefined. Consequently, many of the following macros will not be 36 * defined as intended. So check for a definintion, if one doesn't exist, 37 * provide one. The only requirement is that DPML_NULL_MACRO_TOKEN have a 38 * non-zero integer value 39 */ 40 41 #if !defined(DPML_NULL_MACRO_TOKEN) 42 # define DPML_NULL_MACRO_TOKEN 1 43 #endif 44 45 /* 46 * Set up platform specific name that over-ride default names 47 */ 48 49 #if (OP_SYSTEM == vms) 50 51 # define __VMS_POW_NAME(name,suf) PASTE_2(__F_SYSTEM_NAME(name),suf) 52 # define __VMS_B_POW_NAME(name,suf) PASTE_2(__B_SYSTEM_NAME(name),suf) 53 # define __VMS_INT_POW_NAME(name) PASTE_2(__USER_NAME(name),_qq) 54 55 56 57 # if !defined(LN_BASE_NAME) 58 # define LN_BASE_NAME ln 59 # endif 60 61 # if !defined(REM_BASE_NAME) 62 # define REM_BASE_NAME rem 63 # endif 64 65 # if !defined(MOD_BASE_NAME) 66 # define MOD_BASE_NAME mod 67 # endif 68 69 # if !defined(POW_E_BASE_NAME) 70 # define POW_E_BASE_NAME pow 71 # endif 72 73 # if !defined(POW_BASE_NAME) 74 # define POW_BASE_NAME pow_o 75 # endif 76 77 # if !defined(POW_Z_BASE_NAME) 78 # define POW_Z_BASE_NAME pow_z 79 # endif 80 81 # if !defined(F_POW_E_NAME) 82 # define F_POW_E_NAME __VMS_POW_NAME(POW_E_BASE_NAME, F_CHAR) 83 # endif 84 85 # if !defined(F_POW_NAME) 86 # define F_POW_NAME __VMS_POW_NAME(POW_BASE_NAME, F_CHAR) 87 # endif 88 89 # if !defined(F_POW_I_NAME) 90 # define F_POW_I_NAME __VMS_POW_NAME(POW_BASE_NAME, q) 91 # endif 92 93 # if !defined(F_POW_I_E_NAME) 94 # define F_POW_I_E_NAME __VMS_POW_NAME(POW_E_BASE_NAME, q) 95 # endif 96 97 # if !defined(F_POW_I_Z_NAME) 98 # define F_POW_I_Z_NAME __VMS_POW_NAME(POW_Z_BASE_NAME, q) 99 # endif 100 101 # if !defined(F_POW_I_II_NAME) 102 # define F_POW_I_II_NAME __VMS_INT_POW_NAME(POW_BASE_NAME) 103 # endif 104 105 # if !defined(F_POW_E_I_II_NAME) 106 # define F_POW_E_I_II_NAME __VMS_INT_POW_NAME(POW_E_BASE_NAME) 107 # endif 108 109 # if !defined(F_CPOWI_NAME) 110 # define F_CPOWI_NAME __VMS_POW_NAME(CPOW_BASE_NAME, q) 111 # endif 112 113 # if !defined(F_FAST_POW_NAME) 114 # define F_FAST_POW_NAME __VMS_POW_NAME(FAST_POW_BASE_NAME, F_CHAR) 115 # endif 116 117 # if !defined(F_FAST_POW_E_NAME) 118 # define F_FAST_POW_E_NAME __VMS_POW_NAME(FAST_POW_E_BASE_NAME, F_CHAR) 119 # endif 120 121 # if !defined(B_POW_NAME) 122 # define B_POW_NAME __VMS_B_POW_NAME(POW_BASE_NAME, B_CHAR) 123 # endif 124 125 # if !defined(B_POW_E_NAME) 126 # define B_POW_E_NAME __VMS_B_POW_NAME(POW_E_BASE_NAME, B_CHAR) 127 # endif 128 129 # if !defined(B_POW_I_NAME) 130 # define B_POW_I_NAME __VMS_B_POW_NAME(POW_BASE_NAME, q) 131 # endif 132 133 # if !defined(B_POW_I_E_NAME) 134 # define B_POW_I_E_NAME __VMS_B_POW_NAME(POW_E_BASE_NAME, q) 135 # endif 136 137 # if !defined(B_POW_I_Z_NAME) 138 # define B_POW_I_Z_NAME __VMS_B_POW_NAME(POW_Z_BASE_NAME, q) 139 # endif 140 141 # if !defined(B_CPOWI_NAME) 142 # define B_CPOWI_NAME __VMS_B_POW_NAME(CPOW_BASE_NAME, q) 143 # endif 144 145 # if !defined(B_FAST_POW_NAME) 146 # define B_FAST_POW_NAME __VMS_B_POW_NAME(FAST_POW_BASE_NAME, B_CHAR) 147 # endif 148 149 # if !defined(B_FAST_POW_E_NAME) 150 # define B_FAST_POW_E_NAME __VMS_B_POW_NAME(FAST_POW_E_BASE_NAME, B_CHAR) 151 # endif 152 153 # define __CVT_NAME(type) __INTERNAL_NAME(PASTE_3(cvt_,type,IEEE_VAX_SUFFIX)) 154 155 # if !defined(F_CVT_IEEE_TO_VAX_NAME) 156 # define F_CVT_FLOAT_IEEE_TO_VAX_NAME __CVT_NAME(float) 157 # endif 158 159 # if !defined(F_CVT_CMPLX_IEEE_TO_VAX_NAME) 160 # define F_CVT_CMPLX_IEEE_TO_VAX_NAME __CVT_NAME(complex) 161 # endif 162 163 # if !defined(F_NAME_PREFIX) 164 # define F_NAME_PREFIX math$ 165 # endif 166 167 # if !defined(F_CVTAS_NAME_PREFIX) 168 # define F_CVTAS_NAME_PREFIX cvtas$ 169 # endif 170 171 # if !defined(F_CVTAS_SUFFIX) 172 # define F_CVTAS_SUFFIX __F_SUFFIX 173 # endif 174 175 # if !defined(F_NAME_SUFFIX) 176 # define F_NAME_SUFFIX __F_SUFFIX 177 # endif 178 179 # if !defined(B_NAME_SUFFIX) 180 # define B_NAME_SUFFIX __B_SUFFIX 181 # endif 182 183 # if !defined(INTERNAL_PREFIX) 184 # define INTERNAL_PREFIX math$ 185 # endif 186 187 #else 188 189 # if !defined(USER_PREFIX) 190 # define USER_PREFIX __ 191 # endif 192 193 # if !defined(INTERNAL_PREFIX) 194 # define INTERNAL_PREFIX __dpml_ 195 # endif 196 197 # if !defined(F_CVTAS_NAME_PREFIX) 198 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 199 # define F_CVTAS_NAME_PREFIX cvtas_ 200 # else 201 # define F_CVTAS_NAME_PREFIX __cvtas_ 202 # endif 203 204 # endif 205 206 #endif 207 208 /* 209 ** Default definitions for the "base" name of each funcion. 210 */ 211 212 213 #ifndef ASIND_BASE_NAME 214 # define ASIND_BASE_NAME asind 215 #endif 216 217 #ifndef ASINH_BASE_NAME 218 # define ASINH_BASE_NAME asinh 219 #endif 220 221 #ifndef ACOSD_BASE_NAME 222 # define ACOSD_BASE_NAME acosd 223 #endif 224 225 #ifndef ACOSH_BASE_NAME 226 # define ACOSH_BASE_NAME acosh 227 #endif 228 229 #ifndef ASIN_BASE_NAME 230 # define ASIN_BASE_NAME asin 231 #endif 232 233 #ifndef ACOS_BASE_NAME 234 # define ACOS_BASE_NAME acos 235 #endif 236 237 #ifndef ATAND_BASE_NAME 238 # define ATAND_BASE_NAME atand 239 #endif 240 241 #ifndef ATAND2_BASE_NAME 242 # define ATAND2_BASE_NAME atand2 243 #endif 244 245 #ifndef ATAN2_BASE_NAME 246 # define ATAN2_BASE_NAME atan2 247 #endif 248 249 #ifndef ATAN_BASE_NAME 250 # define ATAN_BASE_NAME atan 251 #endif 252 253 #ifndef ATANH_BASE_NAME 254 # define ATANH_BASE_NAME atanh 255 #endif 256 257 #ifndef CEIL_BASE_NAME 258 # define CEIL_BASE_NAME ceil 259 #endif 260 261 #ifndef CLASS_BASE_NAME 262 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 263 # define CLASS_BASE_NAME _fpclass 264 # else 265 # define CLASS_BASE_NAME fp_class 266 # endif 267 #endif 268 269 #ifndef COPYSIGN_BASE_NAME 270 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 271 # define COPYSIGN_BASE_NAME _copysign 272 # else 273 # define COPYSIGN_BASE_NAME copysign 274 # endif 275 #endif 276 277 #ifndef ERF_BASE_NAME 278 # define ERF_BASE_NAME erf 279 #endif 280 281 #ifndef ERFC_BASE_NAME 282 # define ERFC_BASE_NAME erfc 283 #endif 284 285 #ifndef ERFCX_BASE_NAME 286 # define ERFCX_BASE_NAME erfcx 287 #endif 288 289 #ifndef EXP_BASE_NAME 290 # define EXP_BASE_NAME exp 291 #endif 292 293 #ifndef EXP2_BASE_NAME 294 # define EXP2_BASE_NAME exp2 295 #endif 296 297 #ifndef EXP10_BASE_NAME 298 # define EXP10_BASE_NAME exp10 299 #endif 300 301 #ifndef EXPM1_BASE_NAME 302 # define EXPM1_BASE_NAME expm1 303 #endif 304 305 #ifndef FABS_BASE_NAME 306 # define FABS_BASE_NAME fabs 307 #endif 308 309 #ifndef FINITE_BASE_NAME 310 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 311 # define FINITE_BASE_NAME _finite 312 # else 313 # define FINITE_BASE_NAME finite 314 # endif 315 #endif 316 317 #ifndef FLOOR_BASE_NAME 318 # define FLOOR_BASE_NAME floor 319 #endif 320 321 #ifndef FREXP_BASE_NAME 322 # define FREXP_BASE_NAME frexp 323 #endif 324 325 #ifndef HYPOT_BASE_NAME 326 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 327 # define HYPOT_BASE_NAME _hypot 328 # else 329 # define HYPOT_BASE_NAME hypot 330 # endif 331 #endif 332 333 #ifndef NT_CABS_BASE_NAME 334 # define NT_CABS_BASE_NAME _cabs 335 #endif 336 337 #ifndef CABS_BASE_NAME 338 # define CABS_BASE_NAME cabs 339 #endif 340 341 #ifndef ISNAN_BASE_NAME 342 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 343 # define ISNAN_BASE_NAME _isnan 344 # else 345 # define ISNAN_BASE_NAME isnan 346 # endif 347 #endif 348 349 #ifndef LDEXP_BASE_NAME 350 # define LDEXP_BASE_NAME ldexp 351 #endif 352 353 #ifndef SCALB_BASE_NAME 354 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 355 # define SCALB_BASE_NAME _scalb 356 # else 357 # define SCALB_BASE_NAME scalb 358 # endif 359 #endif 360 361 #ifndef SCALBN_BASE_NAME 362 # define SCALBN_BASE_NAME scalbn 363 #endif 364 365 #ifndef SCALBLN_BASE_NAME 366 # define SCALBLN_BASE_NAME scalbln 367 #endif 368 369 #ifndef J0_BASE_NAME 370 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 371 # define J0_BASE_NAME _j0 372 # else 373 # define J0_BASE_NAME j0 374 # endif 375 #endif 376 377 #ifndef J1_BASE_NAME 378 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 379 # define J1_BASE_NAME _j1 380 # else 381 # define J1_BASE_NAME j1 382 # endif 383 #endif 384 385 #ifndef JN_BASE_NAME 386 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 387 # define JN_BASE_NAME _jn 388 # else 389 # define JN_BASE_NAME jn 390 # endif 391 #endif 392 393 #ifndef Y0_BASE_NAME 394 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 395 # define Y0_BASE_NAME _y0 396 # else 397 # define Y0_BASE_NAME y0 398 # endif 399 #endif 400 401 #ifndef Y1_BASE_NAME 402 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 403 # define Y1_BASE_NAME _y1 404 # else 405 # define Y1_BASE_NAME y1 406 # endif 407 #endif 408 409 #ifndef YN_BASE_NAME 410 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM ==win64)) 411 # define YN_BASE_NAME _yn 412 # else 413 # define YN_BASE_NAME yn 414 # endif 415 #endif 416 417 #ifndef GAMMA_BASE_NAME 418 # define GAMMA_BASE_NAME gamma 419 #endif 420 421 #ifndef LGAMMA_BASE_NAME 422 # define LGAMMA_BASE_NAME lgamma 423 #endif 424 425 #ifndef TGAMMA_BASE_NAME 426 # define TGAMMA_BASE_NAME tgamma 427 #endif 428 429 #ifndef RT_LGAMMA_BASE_NAME 430 # define RT_LGAMMA_BASE_NAME __lgamma 431 #endif 432 433 #ifndef LOG1P_BASE_NAME 434 # define LOG1P_BASE_NAME log1p 435 #endif 436 437 #ifndef LOG2_BASE_NAME 438 # define LOG2_BASE_NAME log2 439 #endif 440 441 #ifndef LOG10_BASE_NAME 442 # define LOG10_BASE_NAME log10 443 #endif 444 445 #ifndef LN_BASE_NAME 446 # define LN_BASE_NAME log 447 #endif 448 449 #ifndef CMP_BASE_NAME 450 # define CMP_BASE_NAME cmp 451 #endif 452 453 #ifndef LOG_TABLE_BASE_NAME 454 # define LOG_TABLE_BASE_NAME log 455 #endif 456 457 #ifndef LOG2_TABLE_BASE_NAME 458 # define LOG2_TABLE_BASE_NAME log2 459 #endif 460 461 #ifndef LOG10_TABLE_BASE_NAME 462 # define LOG10_TABLE_BASE_NAME log10 463 #endif 464 465 #ifndef F_LOG_TABLE_NAME 466 # define F_LOG_TABLE_NAME __D_TABLE_NAME(LOG_TABLE_BASE_NAME) 467 #endif 468 469 #ifndef F_LOG2_TABLE_NAME 470 # define F_LOG2_TABLE_NAME __D_TABLE_NAME(LOG2_TABLE_BASE_NAME) 471 #endif 472 473 #ifndef F_LOG10_TABLE_NAME 474 # define F_LOG10_TABLE_NAME __D_TABLE_NAME(LOG10_TABLE_BASE_NAME) 475 #endif 476 477 #ifndef F_LOG_BUILD_FILE_NAME 478 # define F_LOG_BUILD_FILE_NAME __D_TABLE_FILE_NAME(LOG_TABLE_BASE_NAME) 479 #endif 480 481 #ifndef F_LOG2_BUILD_FILE_NAME 482 # define F_LOG2_BUILD_FILE_NAME __D_TABLE_FILE_NAME(LOG2_TABLE_BASE_NAME) 483 #endif 484 485 #ifndef F_LOG10_BUILD_FILE_NAME 486 # define F_LOG10_BUILD_FILE_NAME __D_TABLE_FILE_NAME(LOG10_TABLE_BASE_NAME) 487 #endif 488 489 #ifndef LOGB_BASE_NAME 490 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 491 # define LOGB_BASE_NAME _logb 492 # else 493 # define LOGB_BASE_NAME logb 494 # endif 495 #endif 496 497 #ifndef ILOGB_BASE_NAME 498 # define ILOGB_BASE_NAME ilogb 499 #endif 500 501 #ifndef REM_BASE_NAME 502 # define REM_BASE_NAME drem 503 #endif 504 505 #ifndef REMAINDER_BASE_NAME 506 # define REMAINDER_BASE_NAME remainder 507 #endif 508 509 #ifndef REMQUO_BASE_NAME 510 # define REMQUO_BASE_NAME remquo 511 #endif 512 513 #ifndef MOD_BASE_NAME 514 # define MOD_BASE_NAME fmod 515 #endif 516 517 #ifndef MODF_BASE_NAME 518 # define MODF_BASE_NAME modf 519 #endif 520 521 #ifndef NINT_BASE_NAME 522 # define NINT_BASE_NAME nint 523 #endif 524 525 #ifndef NEXTAFTER_BASE_NAME 526 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 527 # define NEXTAFTER_BASE_NAME _nextafter 528 # else 529 # define NEXTAFTER_BASE_NAME nextafter 530 # endif 531 #endif 532 533 #ifndef NEXTTOWARD_BASE_NAME 534 # define NEXTTOWARD_BASE_NAME nexttoward 535 #endif 536 537 #ifndef NXTAFTR_BASE_NAME 538 # define NXTAFTR_BASE_NAME nxtaftr 539 #endif 540 541 #ifndef POW_BASE_NAME 542 # define POW_BASE_NAME pow 543 #endif 544 545 #ifndef POW_E_BASE_NAME 546 # define POW_E_BASE_NAME pow_e 547 #endif 548 549 #ifndef POW_TABLE_BASE_NAME 550 # define POW_TABLE_BASE_NAME pow 551 #endif 552 553 #ifndef RANDOM_BASE_NAME 554 # define RANDOM_BASE_NAME random 555 #endif 556 557 #ifndef RINT_BASE_NAME 558 # define RINT_BASE_NAME rint 559 #endif 560 561 #ifndef LRINT_BASE_NAME 562 # define LRINT_BASE_NAME lrint 563 #endif 564 565 #ifndef LROUND_BASE_NAME 566 # define LROUND_BASE_NAME lround 567 #endif 568 569 #ifndef LLRINT_BASE_NAME 570 # define LLRINT_BASE_NAME llrint 571 #endif 572 573 #ifndef LLROUND_BASE_NAME 574 # define LLROUND_BASE_NAME llround 575 #endif 576 577 #ifndef FMAX_BASE_NAME 578 # define FMAX_BASE_NAME fmax 579 #endif 580 581 #ifndef FMIN_BASE_NAME 582 # define FMIN_BASE_NAME fmin 583 #endif 584 585 #ifndef VMS_RANDOM_BASE_NAME 586 # define VMS_RANDOM_BASE_NAME random_L 587 #endif 588 589 #ifndef SIN_BASE_NAME 590 # define SIN_BASE_NAME sin 591 #endif 592 593 #ifndef SIN_VO_BASE_NAME 594 # define SIN_VO_BASE_NAME sin_vo 595 #endif 596 597 #ifndef COS_BASE_NAME 598 # define COS_BASE_NAME cos 599 #endif 600 601 #ifndef COS_VO_BASE_NAME 602 # define COS_VO_BASE_NAME cos_vo 603 #endif 604 605 #ifndef SINCOS_BASE_NAME 606 # define SINCOS_BASE_NAME sincos 607 #endif 608 609 #ifndef SINCOS_VO_BASE_NAME 610 # define SINCOS_VO_BASE_NAME sincos_vo 611 #endif 612 613 #ifndef SIND_BASE_NAME 614 # define SIND_BASE_NAME sind 615 #endif 616 617 #ifndef COSD_BASE_NAME 618 # define COSD_BASE_NAME cosd 619 #endif 620 621 #ifndef SINCOSD_BASE_NAME 622 # define SINCOSD_BASE_NAME sincosd 623 #endif 624 625 #ifndef SINH_BASE_NAME 626 # define SINH_BASE_NAME sinh 627 #endif 628 629 #ifndef COSH_BASE_NAME 630 # define COSH_BASE_NAME cosh 631 #endif 632 633 #ifndef SQRT_BASE_NAME 634 # define SQRT_BASE_NAME sqrt 635 #endif 636 637 #ifndef RSQRT_BASE_NAME 638 # define RSQRT_BASE_NAME rsqrt 639 #endif 640 641 #ifndef CBRT_BASE_NAME 642 # define CBRT_BASE_NAME cbrt 643 #endif 644 645 #ifndef TAN_BASE_NAME 646 # define TAN_BASE_NAME tan 647 #endif 648 649 #ifndef COT_BASE_NAME 650 # define COT_BASE_NAME cot 651 #endif 652 653 #ifndef TANCOT_BASE_NAME 654 # define TANCOT_BASE_NAME tancot 655 #endif 656 657 #ifndef TAND_BASE_NAME 658 # define TAND_BASE_NAME tand 659 #endif 660 661 #ifndef COTD_BASE_NAME 662 # define COTD_BASE_NAME cotd 663 #endif 664 665 #ifndef TANCOTD_BASE_NAME 666 # define TANCOTD_BASE_NAME tancotd 667 #endif 668 669 #ifndef TANH_BASE_NAME 670 # define TANH_BASE_NAME tanh 671 #endif 672 673 #ifndef TRIG_CONS_BASE_NAME 674 # define TRIG_CONS_BASE_NAME trig_cons 675 #endif 676 677 #ifndef TRIGD_CONS_BASE_NAME 678 # define TRIGD_CONS_BASE_NAME trigd_cons 679 #endif 680 681 #ifndef TRIG_REDUCE_BASE_NAME 682 # define TRIG_REDUCE_BASE_NAME trig_reduce 683 #endif 684 685 #ifndef TRIG_REDUCE_VO_BASE_NAME 686 # define TRIG_REDUCE_VO_BASE_NAME trig_reduce_vo 687 #endif 688 689 #ifndef TRIGD_REDUCE_BASE_NAME 690 # define TRIGD_REDUCE_BASE_NAME trigd_reduce 691 #endif 692 693 #ifndef TRUNC_BASE_NAME 694 # define TRUNC_BASE_NAME trunc 695 #endif 696 697 #ifndef UNORDERED_BASE_NAME 698 # define UNORDERED_BASE_NAME unordered 699 #endif 700 701 #ifndef CCOS_BASE_NAME 702 # define CCOS_BASE_NAME ccos 703 #endif 704 705 #ifndef CDIV_BASE_NAME 706 # define CDIV_BASE_NAME cdiv 707 #endif 708 709 #ifndef CEXP_BASE_NAME 710 # define CEXP_BASE_NAME cexp 711 #endif 712 713 #ifndef CLOG_BASE_NAME 714 # define CLOG_BASE_NAME clog 715 #endif 716 717 #ifndef CMUL_BASE_NAME 718 # define CMUL_BASE_NAME cmul 719 #endif 720 721 #ifndef CPOW_BASE_NAME 722 # define CPOW_BASE_NAME cpow 723 #endif 724 725 #ifndef CPOWI_BASE_NAME 726 # define CPOWI_BASE_NAME cpowi 727 #endif 728 729 #ifndef CSIN_BASE_NAME 730 # define CSIN_BASE_NAME csin 731 #endif 732 733 #ifndef CSQRT_BASE_NAME 734 # define CSQRT_BASE_NAME csqrt 735 #endif 736 737 #ifndef CACOS_BASE_NAME 738 # define CACOS_BASE_NAME cacos 739 #endif 740 741 #ifndef CASIN_BASE_NAME 742 # define CASIN_BASE_NAME casin 743 #endif 744 745 #ifndef CATAN_BASE_NAME 746 # define CATAN_BASE_NAME catan 747 #endif 748 749 #ifndef CTAN_BASE_NAME 750 # define CTAN_BASE_NAME ctan 751 #endif 752 753 #ifndef CCOSH_BASE_NAME 754 # define CCOSH_BASE_NAME ccosh 755 #endif 756 757 #ifndef CSINH_BASE_NAME 758 # define CSINH_BASE_NAME csinh 759 #endif 760 761 #ifndef CTANH_BASE_NAME 762 # define CTANH_BASE_NAME ctanh 763 #endif 764 765 #ifndef CACOSH_BASE_NAME 766 # define CACOSH_BASE_NAME cacosh 767 #endif 768 769 #ifndef CASINH_BASE_NAME 770 # define CASINH_BASE_NAME casinh 771 #endif 772 773 #ifndef CATANH_BASE_NAME 774 # define CATANH_BASE_NAME catanh 775 #endif 776 777 #ifndef CARG_BASE_NAME 778 # define CARG_BASE_NAME carg 779 #endif 780 781 #ifndef CIMAG_BASE_NAME 782 # define CIMAG_BASE_NAME cimag 783 #endif 784 785 #ifndef CREAL_BASE_NAME 786 # define CREAL_BASE_NAME creal 787 #endif 788 789 #ifndef CPROJ_BASE_NAME 790 # define CPROJ_BASE_NAME cproj 791 #endif 792 793 #ifndef CONJ_BASE_NAME 794 # define CONJ_BASE_NAME conj 795 #endif 796 797 #ifndef NAN_BASE_NAME 798 # define NAN_BASE_NAME nan 799 #endif 800 801 #ifndef STRING_TO_NAN_BASE_NAME 802 # define STRING_TO_NAN_BASE_NAME string_to_nan 803 #endif 804 805 #ifndef FDIM_BASE_NAME 806 # define FDIM_BASE_NAME fdim 807 #endif 808 809 #ifndef FMA_BASE_NAME 810 # define FMA_BASE_NAME fma 811 #endif 812 813 #ifndef SIGNIFICAND_BASE_NAME 814 # define SIGNIFICAND_BASE_NAME significand 815 #endif 816 817 #ifndef POW_I_BASE_NAME 818 # define POW_I_BASE_NAME powi 819 #endif 820 821 #ifndef POW_I_E_BASE_NAME 822 # define POW_I_E_BASE_NAME powi_e 823 #endif 824 825 #ifndef POW_I_Z_BASE_NAME 826 # define POW_I_Z_BASE_NAME powi_z 827 #endif 828 829 #ifndef POW_I_II_BASE_NAME 830 # define POW_I_II_BASE_NAME powii 831 #endif 832 833 #ifndef POW_E_I_II_BASE_NAME 834 # define POW_E_I_II_BASE_NAME powii_e 835 #endif 836 837 #ifndef SINHCOSH_BASE_NAME 838 # define SINHCOSH_BASE_NAME sinhcosh 839 #endif 840 841 #ifndef MUL_BASE_NAME 842 # define MUL_BASE_NAME mul 843 #endif 844 845 #ifndef DIV_BASE_NAME 846 # define DIV_BASE_NAME div 847 #endif 848 849 #ifndef ADD_BASE_NAME 850 # define ADD_BASE_NAME add 851 #endif 852 853 #ifndef SUB_BASE_NAME 854 # define SUB_BASE_NAME sub 855 #endif 856 857 #ifndef NEG_BASE_NAME 858 # define NEG_BASE_NAME neg 859 #endif 860 861 #ifndef ITOF_BASE_NAME 862 # define ITOF_BASE_NAME itof 863 #endif 864 865 #ifndef CMP_BASE_NAME 866 # define CMP_BASE_NAME cmp 867 #endif 868 /* 869 ** Default base names for the fast routines. 870 */ 871 872 #ifndef FAST_ACOS_BASE_NAME 873 # define FAST_ACOS_BASE_NAME __FAST_NAME(ACOS_BASE_NAME) 874 #endif 875 876 #ifndef FAST_ASIN_BASE_NAME 877 # define FAST_ASIN_BASE_NAME __FAST_NAME(ASIN_BASE_NAME) 878 #endif 879 880 #ifndef FAST_ATAN_BASE_NAME 881 # define FAST_ATAN_BASE_NAME __FAST_NAME(ATAN_BASE_NAME) 882 #endif 883 884 #ifndef FAST_EXP_BASE_NAME 885 # define FAST_EXP_BASE_NAME __FAST_NAME(EXP_BASE_NAME) 886 #endif 887 888 #ifndef FAST_LN_BASE_NAME 889 # define FAST_LN_BASE_NAME __FAST_NAME(LN_BASE_NAME) 890 #endif 891 892 #ifndef FAST_LOG10_BASE_NAME 893 # define FAST_LOG10_BASE_NAME __FAST_NAME(LOG10_BASE_NAME) 894 #endif 895 896 #ifndef FAST_SINCOS_BASE_NAME 897 # define FAST_SINCOS_BASE_NAME __FAST_NAME(SINCOS_BASE_NAME) 898 #endif 899 900 #ifndef FAST_SIN_BASE_NAME 901 # define FAST_SIN_BASE_NAME __FAST_NAME(SIN_BASE_NAME) 902 #endif 903 904 #ifndef FAST_COS_BASE_NAME 905 # define FAST_COS_BASE_NAME __FAST_NAME(COS_BASE_NAME) 906 #endif 907 908 #ifndef FAST_SINCOSD_BASE_NAME 909 # define FAST_SINCOSD_BASE_NAME __FAST_NAME(SINCOSD_BASE_NAME) 910 #endif 911 912 #ifndef FAST_SIND_BASE_NAME 913 # define FAST_SIND_BASE_NAME __FAST_NAME(SIND_BASE_NAME) 914 #endif 915 916 #ifndef FAST_COSD_BASE_NAME 917 # define FAST_COSD_BASE_NAME __FAST_NAME(COSD_BASE_NAME) 918 #endif 919 920 #ifndef FAST_TAN_BASE_NAME 921 # define FAST_TAN_BASE_NAME __FAST_NAME(TAN_BASE_NAME) 922 #endif 923 924 #ifndef FAST_ATAN2_BASE_NAME 925 # define FAST_ATAN2_BASE_NAME __FAST_NAME(ATAN2_BASE_NAME) 926 #endif 927 928 #ifndef FAST_HYPOT_BASE_NAME 929 # if ((OP_SYSTEM == wnt) || (OP_SYSTEM == win64)) 930 # define FAST_HYPOT_BASE_NAME __FAST_NAME(hypot) 931 # else 932 # define FAST_HYPOT_BASE_NAME __FAST_NAME(HYPOT_BASE_NAME) 933 # endif 934 #endif 935 936 #ifndef FAST_POW_BASE_NAME 937 # define FAST_POW_BASE_NAME __FAST_NAME(POW_BASE_NAME) 938 #endif 939 940 #ifndef FAST_POW_E_BASE_NAME 941 # define FAST_POW_E_BASE_NAME __FAST_NAME(POW_E_BASE_NAME) 942 #endif 943 944 #ifndef FAST_SQRT_BASE_NAME 945 # define FAST_SQRT_BASE_NAME __FAST_NAME(SQRT_BASE_NAME) 946 #endif 947 948 #ifndef FAST_POW_TABLE_BASE_NAME 949 # define FAST_POW_TABLE_BASE_NAME F_pow 950 #endif 951 952 /* 953 ** Default definitions for the entry point name of each dpml function. 954 */ 955 956 #ifndef F_ASIND_NAME 957 # define F_ASIND_NAME __F_SYSTEM_NAME(ASIND_BASE_NAME) 958 #endif 959 960 #ifndef F_ASINH_NAME 961 # define F_ASINH_NAME __F_SYSTEM_NAME(ASINH_BASE_NAME) 962 #endif 963 964 #ifndef F_ACOSD_NAME 965 # define F_ACOSD_NAME __F_SYSTEM_NAME(ACOSD_BASE_NAME) 966 #endif 967 968 #ifndef F_ACOSH_NAME 969 # define F_ACOSH_NAME __F_SYSTEM_NAME(ACOSH_BASE_NAME) 970 #endif 971 972 #ifndef F_ASIN_NAME 973 # define F_ASIN_NAME __F_SYSTEM_NAME(ASIN_BASE_NAME) 974 #endif 975 976 #ifndef F_ACOS_NAME 977 # define F_ACOS_NAME __F_SYSTEM_NAME(ACOS_BASE_NAME) 978 #endif 979 980 #ifndef F_ATAND_NAME 981 # define F_ATAND_NAME __F_SYSTEM_NAME(ATAND_BASE_NAME) 982 #endif 983 984 #ifndef F_ATAND2_NAME 985 # define F_ATAND2_NAME __F_SYSTEM_NAME(ATAND2_BASE_NAME) 986 #endif 987 988 #ifndef F_ATAN2_NAME 989 # define F_ATAN2_NAME __F_SYSTEM_NAME(ATAN2_BASE_NAME) 990 #endif 991 992 #ifndef F_ATAN_NAME 993 # define F_ATAN_NAME __F_SYSTEM_NAME(ATAN_BASE_NAME) 994 #endif 995 996 #ifndef F_ATANH_NAME 997 # define F_ATANH_NAME __F_SYSTEM_NAME(ATANH_BASE_NAME) 998 #endif 999 1000 #ifndef F_CEIL_NAME 1001 # define F_CEIL_NAME __F_SYSTEM_NAME(CEIL_BASE_NAME) 1002 #endif 1003 1004 #ifndef F_CLASS_NAME 1005 # define F_CLASS_NAME __F_SYSTEM_NAME(CLASS_BASE_NAME) 1006 #endif 1007 1008 #ifndef F_COPYSIGN_NAME 1009 # define F_COPYSIGN_NAME __F_SYSTEM_NAME(COPYSIGN_BASE_NAME) 1010 #endif 1011 1012 #ifndef F_ERF_NAME 1013 # define F_ERF_NAME __F_SYSTEM_NAME(ERF_BASE_NAME) 1014 #endif 1015 1016 #ifndef F_ERFC_NAME 1017 # define F_ERFC_NAME __F_SYSTEM_NAME(ERFC_BASE_NAME) 1018 #endif 1019 1020 #ifndef F_ERFCX_NAME 1021 # define F_ERFCX_NAME __F_SYSTEM_NAME(ERFCX_BASE_NAME) 1022 #endif 1023 1024 #ifndef F_EXP_NAME 1025 # define F_EXP_NAME __F_SYSTEM_NAME(EXP_BASE_NAME) 1026 #endif 1027 1028 #ifndef F_EXP2_NAME 1029 # define F_EXP2_NAME __F_SYSTEM_NAME(EXP2_BASE_NAME) 1030 #endif 1031 1032 #ifndef F_EXP10_NAME 1033 # define F_EXP10_NAME __F_SYSTEM_NAME(EXP10_BASE_NAME) 1034 #endif 1035 1036 #ifndef F_EXP_TABLE_NAME 1037 # define F_EXP_TABLE_NAME __D_TABLE_NAME(EXP_BASE_NAME) 1038 #endif 1039 1040 #ifndef F_EXP_BUILD_FILE_NAME 1041 # define F_EXP_BUILD_FILE_NAME __D_TABLE_FILE_NAME(EXP_BASE_NAME) 1042 #endif 1043 1044 #ifndef F_EXP_SPECIAL_ENTRY_NAME 1045 # define F_EXP_SPECIAL_ENTRY_NAME \ 1046 PASTE_2(__F_INTERNAL_NAME(EXP_BASE_NAME), _special_entry_point) 1047 #endif 1048 1049 #ifndef F_EXPM1_NAME 1050 # define F_EXPM1_NAME __F_SYSTEM_NAME(EXPM1_BASE_NAME) 1051 #endif 1052 1053 #ifndef F_FABS_NAME 1054 # define F_FABS_NAME __F_SYSTEM_NAME(FABS_BASE_NAME) 1055 #endif 1056 1057 #ifndef F_FINITE_NAME 1058 # define F_FINITE_NAME __F_SYSTEM_NAME(FINITE_BASE_NAME) 1059 #endif 1060 1061 #ifndef F_FLOOR_NAME 1062 # define F_FLOOR_NAME __F_SYSTEM_NAME(FLOOR_BASE_NAME) 1063 #endif 1064 1065 #ifndef F_FREXP_NAME 1066 # define F_FREXP_NAME __F_SYSTEM_NAME(FREXP_BASE_NAME) 1067 #endif 1068 1069 #ifndef F_HYPOT_NAME 1070 # define F_HYPOT_NAME __F_SYSTEM_NAME(HYPOT_BASE_NAME) 1071 #endif 1072 1073 #ifndef F_NT_CABS_NAME 1074 # define F_NT_CABS_NAME __F_SYSTEM_NAME( NT_CABS_BASE_NAME ) 1075 #endif 1076 1077 #ifndef F_CABS_NAME 1078 # define F_CABS_NAME __F_SYSTEM_NAME(CABS_BASE_NAME ) 1079 #endif 1080 1081 #ifndef F_ISNAN_NAME 1082 # define F_ISNAN_NAME __F_SYSTEM_NAME(ISNAN_BASE_NAME) 1083 #endif 1084 1085 #ifndef F_LDEXP_NAME 1086 # define F_LDEXP_NAME __F_SYSTEM_NAME(LDEXP_BASE_NAME) 1087 #endif 1088 1089 #ifndef F_SCALB_NAME 1090 # define F_SCALB_NAME __F_SYSTEM_NAME(SCALB_BASE_NAME) 1091 #endif 1092 1093 #ifndef F_SCALBN_NAME 1094 # define F_SCALBN_NAME __F_SYSTEM_NAME(SCALBN_BASE_NAME) 1095 #endif 1096 1097 #ifndef F_SCALBLN_NAME 1098 # define F_SCALBLN_NAME __F_SYSTEM_NAME(SCALBLN_BASE_NAME) 1099 #endif 1100 1101 #ifndef F_J0_NAME 1102 # define F_J0_NAME __F_SYSTEM_NAME(J0_BASE_NAME) 1103 #endif 1104 1105 #ifndef F_J1_NAME 1106 # define F_J1_NAME __F_SYSTEM_NAME(J1_BASE_NAME) 1107 #endif 1108 1109 #ifndef F_JN_NAME 1110 # define F_JN_NAME __F_SYSTEM_NAME(JN_BASE_NAME) 1111 #endif 1112 1113 #ifndef F_Y0_NAME 1114 # define F_Y0_NAME __F_SYSTEM_NAME(Y0_BASE_NAME) 1115 #endif 1116 1117 #ifndef F_Y1_NAME 1118 # define F_Y1_NAME __F_SYSTEM_NAME(Y1_BASE_NAME) 1119 #endif 1120 1121 #ifndef F_YN_NAME 1122 # define F_YN_NAME __F_SYSTEM_NAME(YN_BASE_NAME) 1123 #endif 1124 1125 #ifndef F_GAMMA_NAME 1126 # define F_GAMMA_NAME __F_SYSTEM_NAME(GAMMA_BASE_NAME) 1127 #endif 1128 1129 #ifndef F_LGAMMA_NAME 1130 # define F_LGAMMA_NAME __F_SYSTEM_NAME(LGAMMA_BASE_NAME) 1131 #endif 1132 1133 #ifndef F_TGAMMA_NAME 1134 # define F_TGAMMA_NAME __F_SYSTEM_NAME(TGAMMA_BASE_NAME) 1135 #endif 1136 1137 #ifndef F_RT_LGAMMA_NAME 1138 # define F_RT_LGAMMA_NAME __F_SYSTEM_NAME(RT_LGAMMA_BASE_NAME) 1139 #endif 1140 1141 #ifndef F_LOG1P_NAME 1142 # define F_LOG1P_NAME __F_SYSTEM_NAME(LOG1P_BASE_NAME) 1143 #endif 1144 1145 #ifndef F_LOG2_NAME 1146 # define F_LOG2_NAME __F_SYSTEM_NAME(LOG2_BASE_NAME) 1147 #endif 1148 1149 #ifndef F_LOG10_NAME 1150 # define F_LOG10_NAME __F_SYSTEM_NAME(LOG10_BASE_NAME) 1151 #endif 1152 1153 #ifndef F_LN_NAME 1154 # define F_LN_NAME __F_SYSTEM_NAME(LN_BASE_NAME) 1155 #endif 1156 1157 #ifndef F_LOGB_NAME 1158 # define F_LOGB_NAME __F_SYSTEM_NAME(LOGB_BASE_NAME) 1159 #endif 1160 1161 #ifndef F_ILOGB_NAME 1162 # define F_ILOGB_NAME __F_SYSTEM_NAME(ILOGB_BASE_NAME) 1163 #endif 1164 1165 #ifndef F_REM_NAME 1166 # define F_REM_NAME __F_SYSTEM_NAME(REM_BASE_NAME) 1167 #endif 1168 1169 #ifndef F_REMAINDER_NAME 1170 # define F_REMAINDER_NAME __F_SYSTEM_NAME(REMAINDER_BASE_NAME) 1171 #endif 1172 1173 #ifndef F_REMQUO_NAME 1174 # define F_REMQUO_NAME __F_SYSTEM_NAME(REMQUO_BASE_NAME) 1175 #endif 1176 1177 #ifndef F_MOD_NAME 1178 # define F_MOD_NAME __F_SYSTEM_NAME(MOD_BASE_NAME) 1179 #endif 1180 1181 #ifndef F_MODF_NAME 1182 # define F_MODF_NAME __F_SYSTEM_NAME(MODF_BASE_NAME) 1183 #endif 1184 1185 #ifndef F_NINT_NAME 1186 # define F_NINT_NAME __F_SYSTEM_NAME(NINT_BASE_NAME) 1187 #endif 1188 1189 #ifndef F_NEXTAFTER_NAME 1190 # define F_NEXTAFTER_NAME __F_SYSTEM_NAME(NEXTAFTER_BASE_NAME) 1191 #endif 1192 1193 #ifndef F_NEXTTOWARD_NAME 1194 # define F_NEXTTOWARD_NAME __F_SYSTEM_NAME(NEXTTOWARD_BASE_NAME) 1195 #endif 1196 1197 #ifndef F_NXTAFTR_NAME 1198 # define F_NXTAFTR_NAME __F_USER_NAME(NXTAFTR_BASE_NAME) 1199 #endif 1200 1201 #ifndef F_POW_NAME 1202 # define F_POW_NAME __F_SYSTEM_NAME(POW_BASE_NAME) 1203 #endif 1204 1205 #ifndef F_POW_E_NAME 1206 # define F_POW_E_NAME __F_USER_NAME(POW_E_BASE_NAME) 1207 #endif 1208 1209 #ifndef F_POW_TABLE_NAME 1210 # define F_POW_TABLE_NAME __F_TABLE_NAME(POW_TABLE_BASE_NAME) 1211 #endif 1212 1213 #ifndef F_POW_BUILD_FILE_NAME 1214 # if defined(ONE_TYPE) 1215 # define F_POW_BUILD_FILE_NAME __F_TABLE_FILE_NAME(POW_TABLE_BASE_NAME) 1216 # else 1217 # define F_POW_BUILD_FILE_NAME __B_TABLE_FILE_NAME(POW_TABLE_BASE_NAME) 1218 # endif 1219 #endif 1220 1221 #if !defined(SPECIAL_EXP_HEADER) 1222 # define SPECIAL_EXP_HEADER ADD_EXTENSION(ADD_BUILD_PREFIX(special_exp),h) 1223 #endif 1224 1225 #ifndef F_RANDOM_NAME 1226 # define F_RANDOM_NAME __F_SYSTEM_NAME(RANDOM_BASE_NAME) 1227 #endif 1228 1229 #ifndef F_VMS_RANDOM_NAME 1230 # define F_VMS_RANDOM_NAME __F_SYSTEM_NAME(VMS_RANDOM_BASE_NAME) 1231 #endif 1232 1233 #ifndef F_RINT_NAME 1234 # define F_RINT_NAME __F_SYSTEM_NAME(RINT_BASE_NAME) 1235 #endif 1236 1237 #ifndef F_LRINT_NAME 1238 # define F_LRINT_NAME __F_SYSTEM_NAME(LRINT_BASE_NAME) 1239 #endif 1240 1241 #ifndef F_LROUND_NAME 1242 # define F_LROUND_NAME __F_SYSTEM_NAME(LROUND_BASE_NAME) 1243 #endif 1244 1245 #ifndef F_LLRINT_NAME 1246 # define F_LLRINT_NAME __F_SYSTEM_NAME(LLRINT_BASE_NAME) 1247 #endif 1248 1249 #ifndef F_LLROUND_NAME 1250 # define F_LLROUND_NAME __F_SYSTEM_NAME(LLROUND_BASE_NAME) 1251 #endif 1252 1253 #ifndef F_SIN_NAME 1254 # define F_SIN_NAME __F_SYSTEM_NAME(SIN_BASE_NAME) 1255 #endif 1256 1257 #ifndef F_SIN_VO_NAME 1258 # define F_SIN_VO_NAME __F_USER_NAME(SIN_VO_BASE_NAME) 1259 #endif 1260 1261 #ifndef F_COS_NAME 1262 # define F_COS_NAME __F_SYSTEM_NAME(COS_BASE_NAME) 1263 #endif 1264 1265 #ifndef F_COS_VO_NAME 1266 # define F_COS_VO_NAME __F_USER_NAME(COS_VO_BASE_NAME) 1267 #endif 1268 1269 #ifndef F_SINCOS_NAME 1270 # define F_SINCOS_NAME __F_SYSTEM_NAME(SINCOS_BASE_NAME) 1271 #endif 1272 1273 #ifndef F_SINCOS_VO_NAME 1274 # define F_SINCOS_VO_NAME __F_USER_NAME(SINCOS_VO_BASE_NAME) 1275 #endif 1276 1277 #ifndef F_SIND_NAME 1278 # define F_SIND_NAME __F_SYSTEM_NAME(SIND_BASE_NAME) 1279 #endif 1280 1281 #ifndef F_COSD_NAME 1282 # define F_COSD_NAME __F_SYSTEM_NAME(COSD_BASE_NAME) 1283 #endif 1284 1285 #ifndef F_SINCOSD_NAME 1286 # define F_SINCOSD_NAME __F_SYSTEM_NAME(SINCOSD_BASE_NAME) 1287 #endif 1288 1289 #ifndef F_SINH_NAME 1290 # define F_SINH_NAME __F_SYSTEM_NAME(SINH_BASE_NAME) 1291 #endif 1292 1293 #ifndef F_COSH_NAME 1294 # define F_COSH_NAME __F_SYSTEM_NAME(COSH_BASE_NAME) 1295 #endif 1296 1297 #ifndef F_SQRT_NAME 1298 # define F_SQRT_NAME __F_SYSTEM_NAME(SQRT_BASE_NAME) 1299 #endif 1300 1301 #ifndef F_SQRT_TABLE_NAME 1302 # define F_SQRT_TABLE_NAME __F_TABLE_NAME(SQRT_BASE_NAME) 1303 #endif 1304 1305 #ifndef F_RSQRT_NAME 1306 # define F_RSQRT_NAME __F_USER_NAME(RSQRT_BASE_NAME) 1307 #endif 1308 1309 #ifndef F_RSQRT_TABLE_NAME 1310 # define F_RSQRT_TABLE_NAME __F_TABLE_NAME(RSQRT_BASE_NAME) 1311 #endif 1312 1313 #ifndef F_CBRT_NAME 1314 # define F_CBRT_NAME __F_SYSTEM_NAME(CBRT_BASE_NAME) 1315 #endif 1316 1317 #ifndef F_CBRT_TABLE_NAME 1318 # define F_CBRT_TABLE_NAME __F_TABLE_NAME(CBRT_BASE_NAME) 1319 #endif 1320 1321 #ifndef F_TAN_NAME 1322 # define F_TAN_NAME __F_SYSTEM_NAME(TAN_BASE_NAME) 1323 #endif 1324 1325 #ifndef F_COT_NAME 1326 # define F_COT_NAME __F_SYSTEM_NAME(COT_BASE_NAME) 1327 #endif 1328 1329 #ifndef F_TANCOT_NAME 1330 # define F_TANCOT_NAME __F_SYSTEM_NAME(TANCOT_BASE_NAME) 1331 #endif 1332 1333 #ifndef F_TAND_NAME 1334 # define F_TAND_NAME __F_SYSTEM_NAME(TAND_BASE_NAME) 1335 #endif 1336 1337 #ifndef F_COTD_NAME 1338 # define F_COTD_NAME __F_SYSTEM_NAME(COTD_BASE_NAME) 1339 #endif 1340 1341 #ifndef F_TANCOTD_NAME 1342 # define F_TANCOTD_NAME __F_SYSTEM_NAME(TANCOTD_BASE_NAME) 1343 #endif 1344 1345 #ifndef F_TANH_NAME 1346 # define F_TANH_NAME __F_SYSTEM_NAME(TANH_BASE_NAME) 1347 #endif 1348 1349 #ifndef F_TRIG_CONS_NAME 1350 # define F_TRIG_CONS_NAME __F_USER_NAME(TRIG_CONS_BASE_NAME) 1351 #endif 1352 1353 #ifndef F_TRIGD_CONS_NAME 1354 # define F_TRIGD_CONS_NAME __F_USER_NAME(TRIGD_CONS_BASE_NAME) 1355 #endif 1356 1357 #ifndef F_TRIG_REDUCE_NAME 1358 # define F_TRIG_REDUCE_NAME __F_USER_NAME(TRIG_REDUCE_BASE_NAME) 1359 #endif 1360 1361 #ifndef F_TRIG_REDUCE_VO_NAME 1362 # define F_TRIG_REDUCE_VO_NAME __F_USER_NAME(TRIG_REDUCE_VO_BASE_NAME) 1363 #endif 1364 1365 #ifndef F_TRIGD_REDUCE_NAME 1366 # define F_TRIGD_REDUCE_NAME __F_USER_NAME(TRIGD_REDUCE_BASE_NAME) 1367 #endif 1368 1369 #ifndef F_TRUNC_NAME 1370 # define F_TRUNC_NAME __F_SYSTEM_NAME(TRUNC_BASE_NAME) 1371 #endif 1372 1373 #ifndef F_UNORDERED_NAME 1374 # define F_UNORDERED_NAME __F_SYSTEM_NAME(UNORDERED_BASE_NAME) 1375 #endif 1376 1377 #ifndef F_CCOS_NAME 1378 # define F_CCOS_NAME __F_SYSTEM_NAME(CCOS_BASE_NAME) 1379 #endif 1380 1381 #ifndef F_CDIV_NAME 1382 # define F_CDIV_NAME __F_SYSTEM_NAME(CDIV_BASE_NAME) 1383 #endif 1384 1385 #ifndef F_CEXP_NAME 1386 # define F_CEXP_NAME __F_SYSTEM_NAME(CEXP_BASE_NAME) 1387 #endif 1388 1389 #ifndef F_CLOG_NAME 1390 # define F_CLOG_NAME __F_SYSTEM_NAME(CLOG_BASE_NAME) 1391 #endif 1392 1393 #ifndef F_CMUL_NAME 1394 # define F_CMUL_NAME __F_SYSTEM_NAME(CMUL_BASE_NAME) 1395 #endif 1396 1397 #ifndef F_CPOW_NAME 1398 # define F_CPOW_NAME __F_SYSTEM_NAME(CPOW_BASE_NAME) 1399 #endif 1400 1401 #ifndef F_CPOWI_NAME 1402 # define F_CPOWI_NAME __F_SYSTEM_NAME(CPOWI_BASE_NAME) 1403 #endif 1404 1405 #ifndef F_CSIN_NAME 1406 # define F_CSIN_NAME __F_SYSTEM_NAME(CSIN_BASE_NAME) 1407 #endif 1408 1409 #ifndef F_CSQRT_NAME 1410 # define F_CSQRT_NAME __F_SYSTEM_NAME(CSQRT_BASE_NAME) 1411 #endif 1412 1413 #ifndef F_CACOS_NAME 1414 # define F_CACOS_NAME __F_SYSTEM_NAME(CACOS_BASE_NAME) 1415 #endif 1416 1417 #ifndef F_CASIN_NAME 1418 # define F_CASIN_NAME __F_SYSTEM_NAME(CASIN_BASE_NAME) 1419 #endif 1420 1421 #ifndef F_CATAN_NAME 1422 # define F_CATAN_NAME __F_SYSTEM_NAME(CATAN_BASE_NAME) 1423 #endif 1424 1425 #ifndef F_CTAN_NAME 1426 # define F_CTAN_NAME __F_SYSTEM_NAME(CTAN_BASE_NAME) 1427 #endif 1428 1429 #ifndef F_CCOSH_NAME 1430 # define F_CCOSH_NAME __F_SYSTEM_NAME(CCOSH_BASE_NAME) 1431 #endif 1432 1433 #ifndef F_CSINH_NAME 1434 # define F_CSINH_NAME __F_SYSTEM_NAME(CSINH_BASE_NAME) 1435 #endif 1436 1437 #ifndef F_CTANH_NAME 1438 # define F_CTANH_NAME __F_SYSTEM_NAME(CTANH_BASE_NAME) 1439 #endif 1440 1441 #ifndef F_CACOSH_NAME 1442 # define F_CACOSH_NAME __F_SYSTEM_NAME(CACOSH_BASE_NAME) 1443 #endif 1444 1445 #ifndef F_CASINH_NAME 1446 # define F_CASINH_NAME __F_SYSTEM_NAME(CASINH_BASE_NAME) 1447 #endif 1448 1449 #ifndef F_CATANH_NAME 1450 # define F_CATANH_NAME __F_SYSTEM_NAME(CATANH_BASE_NAME) 1451 #endif 1452 1453 #ifndef F_CARG_NAME 1454 # define F_CARG_NAME __F_SYSTEM_NAME(CARG_BASE_NAME) 1455 #endif 1456 1457 #ifndef F_CIMAG_NAME 1458 # define F_CIMAG_NAME __F_SYSTEM_NAME(CIMAG_BASE_NAME) 1459 #endif 1460 1461 #ifndef F_CREAL_NAME 1462 # define F_CREAL_NAME __F_SYSTEM_NAME(CREAL_BASE_NAME) 1463 #endif 1464 1465 #ifndef F_CPROJ_NAME 1466 # define F_CPROJ_NAME __F_SYSTEM_NAME(CPROJ_BASE_NAME) 1467 #endif 1468 1469 #ifndef F_CONJ_NAME 1470 # define F_CONJ_NAME __F_SYSTEM_NAME(CONJ_BASE_NAME) 1471 #endif 1472 1473 #ifndef F_NAN_NAME 1474 # define F_NAN_NAME __F_SYSTEM_NAME(NAN_BASE_NAME) 1475 #endif 1476 1477 #ifndef F_CVTAS_NAN_NAME 1478 # define F_CVTAS_NAN_NAME \ 1479 PASTE_3(F_CVTAS_NAME_PREFIX, STRING_TO_NAN_BASE_NAME, F_CVTAS_SUFFIX) 1480 #endif 1481 1482 #ifndef F_FDIM_NAME 1483 # define F_FDIM_NAME __F_SYSTEM_NAME(FDIM_BASE_NAME) 1484 #endif 1485 1486 #ifndef F_FMAX_NAME 1487 # define F_FMAX_NAME __F_SYSTEM_NAME(FMAX_BASE_NAME) 1488 #endif 1489 1490 #ifndef F_FMIN_NAME 1491 # define F_FMIN_NAME __F_SYSTEM_NAME(FMIN_BASE_NAME) 1492 #endif 1493 1494 #ifndef F_FMA_NAME 1495 # define F_FMA_NAME __F_SYSTEM_NAME(FMA_BASE_NAME) 1496 #endif 1497 1498 #ifndef F_SIGNIFICAND_NAME 1499 # define F_SIGNIFICAND_NAME __F_SYSTEM_NAME(SIGNIFICAND_BASE_NAME) 1500 #endif 1501 1502 #ifndef F_POW_I_NAME 1503 # define F_POW_I_NAME __F_SYSTEM_NAME(POW_I_BASE_NAME) 1504 #endif 1505 1506 #ifndef F_POW_I_Z_NAME 1507 # define F_POW_I_Z_NAME __F_SYSTEM_NAME(POW_I_Z_BASE_NAME) 1508 #endif 1509 1510 #ifndef F_POW_I_E_NAME 1511 # define F_POW_I_E_NAME __F_USER_NAME(POW_I_E_BASE_NAME) 1512 #endif 1513 1514 #ifndef F_POW_I_II_NAME 1515 # define F_POW_I_II_NAME __SYSTEM_NAME(POW_I_II_BASE_NAME) 1516 #endif 1517 1518 #ifndef F_POW_E_I_II_NAME 1519 # define F_POW_E_I_II_NAME __USER_NAME(POW_E_I_II_BASE_NAME) 1520 #endif 1521 1522 #ifndef F_SINHCOSH_NAME 1523 # define F_SINHCOSH_NAME __F_SYSTEM_NAME(SINHCOSH_BASE_NAME) 1524 #endif 1525 1526 #ifndef F_MUL_NAME 1527 # define F_MUL_NAME __F_SYSTEM_NAME(MUL_BASE_NAME) 1528 #endif 1529 1530 #ifndef F_DIV_NAME 1531 # define F_DIV_NAME __F_SYSTEM_NAME(DIV_BASE_NAME) 1532 #endif 1533 1534 #ifndef F_ADD_NAME 1535 # define F_ADD_NAME __F_SYSTEM_NAME(ADD_BASE_NAME) 1536 #endif 1537 1538 #ifndef F_SUB_NAME 1539 # define F_SUB_NAME __F_SYSTEM_NAME(SUB_BASE_NAME ) 1540 #endif 1541 1542 #ifndef F_NEG_NAME 1543 # define F_NEG_NAME __F_SYSTEM_NAME(NEG_BASE_NAME) 1544 #endif 1545 1546 #ifndef F_ITOF_NAME 1547 # define F_ITOF_NAME __F_SYSTEM_NAME(ITOF_BASE_NAME) 1548 #endif 1549 1550 #ifndef F_CMP_NAME 1551 # define F_CMP_NAME __F_SYSTEM_NAME(CMP_BASE_NAME) 1552 #endif 1553 1554 /* 1555 ** Default definitions for the fast entry points. 1556 */ 1557 1558 #ifndef F_FAST_ACOS_NAME 1559 # define F_FAST_ACOS_NAME __F_SYSTEM_NAME(FAST_ACOS_BASE_NAME) 1560 #endif 1561 1562 #ifndef F_FAST_ASIN_NAME 1563 # define F_FAST_ASIN_NAME __F_SYSTEM_NAME(FAST_ASIN_BASE_NAME) 1564 #endif 1565 1566 #ifndef F_FAST_ATAN_NAME 1567 # define F_FAST_ATAN_NAME __F_SYSTEM_NAME(FAST_ATAN_BASE_NAME) 1568 #endif 1569 1570 #ifndef F_FAST_EXP_NAME 1571 # define F_FAST_EXP_NAME __F_SYSTEM_NAME(FAST_EXP_BASE_NAME) 1572 #endif 1573 1574 #ifndef F_FAST_EXP_TABLE_NAME 1575 # define F_FAST_EXP_TABLE_NAME __D_TABLE_NAME(FAST_EXP_BASE_NAME) 1576 #endif 1577 1578 #ifndef F_FAST_EXP_BUILD_FILE_NAME 1579 # define F_FAST_EXP_BUILD_FILE_NAME __D_TABLE_FILE_NAME(FAST_EXP_BASE_NAME) 1580 #endif 1581 1582 #ifndef F_FAST_LN_NAME 1583 # define F_FAST_LN_NAME __F_SYSTEM_NAME(FAST_LN_BASE_NAME) 1584 #endif 1585 1586 #ifndef F_FAST_LOG10_NAME 1587 # define F_FAST_LOG10_NAME __F_SYSTEM_NAME(FAST_LOG10_BASE_NAME) 1588 #endif 1589 1590 #ifndef F_FAST_SINCOS_NAME 1591 # define F_FAST_SINCOS_NAME __F_SYSTEM_NAME(FAST_SINCOS_BASE_NAME) 1592 #endif 1593 1594 #ifndef F_FAST_SIN_NAME 1595 # define F_FAST_SIN_NAME __F_SYSTEM_NAME(FAST_SIN_BASE_NAME) 1596 #endif 1597 1598 #ifndef F_FAST_COS_NAME 1599 # define F_FAST_COS_NAME __F_SYSTEM_NAME(FAST_COS_BASE_NAME) 1600 #endif 1601 1602 #ifndef F_FAST_SINCOSD_NAME 1603 # define F_FAST_SINCOSD_NAME __F_SYSTEM_NAME(FAST_SINCOSD_BASE_NAME) 1604 #endif 1605 1606 #ifndef F_FAST_SIND_NAME 1607 # define F_FAST_SIND_NAME __F_SYSTEM_NAME(FAST_SIND_BASE_NAME) 1608 #endif 1609 1610 #ifndef F_FAST_COSD_NAME 1611 # define F_FAST_COSD_NAME __F_SYSTEM_NAME(FAST_COSD_BASE_NAME) 1612 #endif 1613 1614 #ifndef F_FAST_TAN_NAME 1615 # define F_FAST_TAN_NAME __F_SYSTEM_NAME(FAST_TAN_BASE_NAME) 1616 #endif 1617 1618 #ifndef F_FAST_ATAN2_NAME 1619 # define F_FAST_ATAN2_NAME __F_SYSTEM_NAME(FAST_ATAN2_BASE_NAME) 1620 #endif 1621 1622 #ifndef F_FAST_HYPOT_NAME 1623 # define F_FAST_HYPOT_NAME __F_SYSTEM_NAME(FAST_HYPOT_BASE_NAME) 1624 #endif 1625 1626 #ifndef F_FAST_POW_NAME 1627 # define F_FAST_POW_NAME __F_SYSTEM_NAME(FAST_POW_BASE_NAME) 1628 #endif 1629 1630 #ifndef F_FAST_POW_E_NAME 1631 # define F_FAST_POW_E_NAME __F_USER_NAME(FAST_POW_E_BASE_NAME) 1632 #endif 1633 1634 #ifndef F_FAST_POW_TABLE_NAME 1635 # define F_FAST_POW_TABLE_NAME __B_TABLE_NAME(FAST_POW_TABLE_BASE_NAME) 1636 #endif 1637 1638 #ifndef F_FAST_POW_BUILD_FILE_NAME 1639 # define F_FAST_POW_BUILD_FILE_NAME F_POW_BUILD_FILE_NAME 1640 #endif 1641 1642 #ifndef F_FAST_SQRT_NAME 1643 # define F_FAST_SQRT_NAME __F_SYSTEM_NAME(FAST_SQRT_BASE_NAME) 1644 #endif 1645 1646 1647 /* 1648 ** Backup function name definitions 1649 */ 1650 1651 #ifdef B_TYPE 1652 1653 1654 #ifndef B_ASIND_NAME 1655 # define B_ASIND_NAME __B_SYSTEM_NAME(ASIND_BASE_NAME) 1656 #endif 1657 1658 #ifndef B_ASINH_NAME 1659 # define B_ASINH_NAME __B_SYSTEM_NAME(ASINH_BASE_NAME) 1660 #endif 1661 1662 #ifndef B_ACOSD_NAME 1663 # define B_ACOSD_NAME __B_SYSTEM_NAME(ACOSD_BASE_NAME) 1664 #endif 1665 1666 #ifndef B_ACOSH_NAME 1667 # define B_ACOSH_NAME __B_SYSTEM_NAME(ACOSH_BASE_NAME) 1668 #endif 1669 1670 #ifndef B_ASIN_NAME 1671 # define B_ASIN_NAME __B_SYSTEM_NAME(ASIN_BASE_NAME) 1672 #endif 1673 1674 #ifndef B_ACOS_NAME 1675 # define B_ACOS_NAME __B_SYSTEM_NAME(ACOS_BASE_NAME) 1676 #endif 1677 1678 #ifndef B_ATAND_NAME 1679 # define B_ATAND_NAME __B_SYSTEM_NAME(ATAND_BASE_NAME) 1680 #endif 1681 1682 #ifndef B_ATAND2_NAME 1683 # define B_ATAND2_NAME __B_SYSTEM_NAME(ATAND2_BASE_NAME) 1684 #endif 1685 1686 #ifndef B_ATAN2_NAME 1687 # define B_ATAN2_NAME __B_SYSTEM_NAME(ATAN2_BASE_NAME) 1688 #endif 1689 1690 #ifndef B_ATAN_NAME 1691 # define B_ATAN_NAME __B_SYSTEM_NAME(ATAN_BASE_NAME) 1692 #endif 1693 1694 #ifndef B_ATANH_NAME 1695 # define B_ATANH_NAME __B_SYSTEM_NAME(ATANH_BASE_NAME) 1696 #endif 1697 1698 #ifndef B_CEIL_NAME 1699 # define B_CEIL_NAME __B_SYSTEM_NAME(CEIL_BASE_NAME) 1700 #endif 1701 1702 #ifndef B_CLASS_NAME 1703 # define B_CLASS_NAME __B_SYSTEM_NAME(CLASS_BASE_NAME) 1704 #endif 1705 1706 #ifndef B_COPYSIGN_NAME 1707 # define B_COPYSIGN_NAME __B_SYSTEM_NAME(COPYSIGN_BASE_NAME) 1708 #endif 1709 1710 #ifndef B_ERF_NAME 1711 # define B_ERF_NAME __B_SYSTEM_NAME(ERF_BASE_NAME) 1712 #endif 1713 1714 #ifndef B_ERFC_NAME 1715 # define B_ERFC_NAME __B_SYSTEM_NAME(ERFC_BASE_NAME) 1716 #endif 1717 1718 #ifndef B_ERFCX_NAME 1719 # define B_ERFCX_NAME __B_SYSTEM_NAME(ERFCX_BASE_NAME) 1720 #endif 1721 1722 #ifndef B_EXP_NAME 1723 # define B_EXP_NAME __B_SYSTEM_NAME(EXP_BASE_NAME) 1724 #endif 1725 1726 #ifndef B_EXP2_NAME 1727 # define B_EXP2_NAME __B_SYSTEM_NAME(EXP2_BASE_NAME) 1728 #endif 1729 1730 #ifndef B_EXP_SPECIAL_ENTRY_NAME 1731 # define B_EXP_SPECIAL_ENTRY_NAME \ 1732 PASTE_2(__B_INTERNAL_NAME(EXP_BASE_NAME), _special_entry_point) 1733 #endif 1734 1735 #ifndef B_EXPM1_NAME 1736 # define B_EXPM1_NAME __B_SYSTEM_NAME(EXPM1_BASE_NAME) 1737 #endif 1738 1739 #ifndef B_FABS_NAME 1740 # define B_FABS_NAME __B_SYSTEM_NAME(FABS_BASE_NAME) 1741 #endif 1742 1743 #ifndef B_FINITE_NAME 1744 # define B_FINITE_NAME __B_SYSTEM_NAME(FINITE_BASE_NAME) 1745 #endif 1746 1747 #ifndef B_FLOOR_NAME 1748 # define B_FLOOR_NAME __B_SYSTEM_NAME(FLOOR_BASE_NAME) 1749 #endif 1750 1751 #ifndef B_FREXP_NAME 1752 # define B_FREXP_NAME __B_SYSTEM_NAME(FREXP_BASE_NAME) 1753 #endif 1754 1755 #ifndef B_HYPOT_NAME 1756 # define B_HYPOT_NAME __B_SYSTEM_NAME(HYPOT_BASE_NAME) 1757 #endif 1758 1759 #ifndef B_CABS_NAME 1760 # define B_CABS_NAME __B_SYSTEM_NAME(CABS_BASE_NAME) 1761 #endif 1762 1763 #ifndef B_ISNAN_NAME 1764 # define B_ISNAN_NAME __B_SYSTEM_NAME(ISNAN_BASE_NAME) 1765 #endif 1766 1767 #ifndef B_LDEXP_NAME 1768 # define B_LDEXP_NAME __B_SYSTEM_NAME(LDEXP_BASE_NAME) 1769 #endif 1770 1771 #ifndef B_SCALB_NAME 1772 # define B_SCALB_NAME __B_SYSTEM_NAME(SCALB_BASE_NAME) 1773 #endif 1774 1775 #ifndef B_SCALBN_NAME 1776 # define B_SCALBN_NAME __B_SYSTEM_NAME(SCALBN_BASE_NAME) 1777 #endif 1778 1779 #ifndef B_SCALBLN_NAME 1780 # define B_SCALBLN_NAME __B_SYSTEM_NAME(SCALBLN_BASE_NAME) 1781 #endif 1782 1783 #ifndef B_J0_NAME 1784 # define B_J0_NAME __B_SYSTEM_NAME(J0_BASE_NAME) 1785 #endif 1786 1787 #ifndef B_J1_NAME 1788 # define B_J1_NAME __B_SYSTEM_NAME(J1_BASE_NAME) 1789 #endif 1790 1791 #ifndef B_JN_NAME 1792 # define B_JN_NAME __B_SYSTEM_NAME(JN_BASE_NAME) 1793 #endif 1794 1795 #ifndef B_Y0_NAME 1796 # define B_Y0_NAME __B_SYSTEM_NAME(Y0_BASE_NAME) 1797 #endif 1798 1799 #ifndef B_Y1_NAME 1800 # define B_Y1_NAME __B_SYSTEM_NAME(Y1_BASE_NAME) 1801 #endif 1802 1803 #ifndef B_YN_NAME 1804 # define B_YN_NAME __B_SYSTEM_NAME(YN_BASE_NAME) 1805 #endif 1806 1807 #ifndef B_GAMMA_NAME 1808 # define B_GAMMA_NAME __B_SYSTEM_NAME(GAMMA_BASE_NAME) 1809 #endif 1810 1811 #ifndef B_LGAMMA_NAME 1812 # define B_LGAMMA_NAME __B_SYSTEM_NAME(LGAMMA_BASE_NAME) 1813 #endif 1814 1815 #ifndef B_TGAMMA_NAME 1816 # define B_TGAMMA_NAME __B_SYSTEM_NAME(TGAMMA_BASE_NAME) 1817 #endif 1818 1819 #ifndef B_RT_LGAMMA_NAME 1820 # define B_RT_LGAMMA_NAME __B_SYSTEM_NAME(RT_LGAMMA_BASE_NAME) 1821 #endif 1822 1823 #ifndef B_LOG1P_NAME 1824 # define B_LOG1P_NAME __B_SYSTEM_NAME(LOG1P_BASE_NAME) 1825 #endif 1826 1827 #ifndef B_LOG2_NAME 1828 # define B_LOG2_NAME __B_SYSTEM_NAME(LOG2_BASE_NAME) 1829 #endif 1830 1831 #ifndef B_LOG10_NAME 1832 # define B_LOG10_NAME __B_SYSTEM_NAME(LOG10_BASE_NAME) 1833 #endif 1834 1835 #ifndef B_LN_NAME 1836 # define B_LN_NAME __B_SYSTEM_NAME(LN_BASE_NAME) 1837 #endif 1838 1839 #ifndef B_LOGB_NAME 1840 # define B_LOGB_NAME __B_SYSTEM_NAME(LOGB_BASE_NAME) 1841 #endif 1842 1843 #ifndef B_ILOGB_NAME 1844 # define B_ILOGB_NAME __B_SYSTEM_NAME(ILOGB_BASE_NAME) 1845 #endif 1846 1847 #ifndef B_REM_NAME 1848 # define B_REM_NAME __B_SYSTEM_NAME(REM_BASE_NAME) 1849 #endif 1850 1851 #ifndef B_REMAINDER_NAME 1852 # define B_REMAINDER_NAME __B_SYSTEM_NAME(REMAINDER_BASE_NAME) 1853 #endif 1854 1855 #ifndef B_REMQUO_NAME 1856 # define B_REMQUO_NAME __B_SYSTEM_NAME(REMQUO_BASE_NAME) 1857 #endif 1858 1859 #ifndef B_MOD_NAME 1860 # define B_MOD_NAME __B_SYSTEM_NAME(MOD_BASE_NAME) 1861 #endif 1862 1863 #ifndef B_MODF_NAME 1864 # define B_MODF_NAME __B_SYSTEM_NAME(MODF_BASE_NAME) 1865 #endif 1866 1867 #ifndef B_NINT_NAME 1868 # define B_NINT_NAME __B_SYSTEM_NAME(NINT_BASE_NAME) 1869 #endif 1870 1871 #ifndef B_NEXTAFTER_NAME 1872 # define B_NEXTAFTER_NAME __B_SYSTEM_NAME(NEXTAFTER_BASE_NAME) 1873 #endif 1874 1875 #ifndef B_NEXTTOWARD_NAME 1876 # define B_NEXTTOWARD_NAME __B_SYSTEM_NAME(NEXTTOWARD_BASE_NAME) 1877 #endif 1878 1879 #ifndef B_NXTAFTR_NAME 1880 # define B_NXTAFTR_NAME __B_USER_NAME(NXTAFTR_BASE_NAME) 1881 #endif 1882 1883 1884 #ifndef B_POW_NAME 1885 # define B_POW_NAME __B_SYSTEM_NAME(POW_BASE_NAME) 1886 #endif 1887 1888 #ifndef B_POW_E_NAME 1889 # define B_POW_E_NAME __B_USER_NAME(POW_E_BASE_NAME) 1890 #endif 1891 1892 #ifndef B_RANDOM_NAME 1893 # define B_RANDOM_NAME __B_SYSTEM_NAME(RANDOM_BASE_NAME) 1894 #endif 1895 1896 #ifndef B_VMS_RANDOM_NAME 1897 # define B_VMS_RANDOM_NAME __B_SYSTEM_NAME(VMS_RANDOM_BASE_NAME) 1898 #endif 1899 1900 #ifndef B_RINT_NAME 1901 # define B_RINT_NAME __B_SYSTEM_NAME(RINT_BASE_NAME) 1902 #endif 1903 1904 #ifndef B_LRINT_NAME 1905 # define B_LRINT_NAME __B_SYSTEM_NAME(LRINT_BASE_NAME) 1906 #endif 1907 1908 #ifndef B_LROUND_NAME 1909 # define B_LROUND_NAME __B_SYSTEM_NAME(LROUND_BASE_NAME) 1910 #endif 1911 1912 #ifndef B_LLRINT_NAME 1913 # define B_LLRINT_NAME __B_SYSTEM_NAME(LLRINT_BASE_NAME) 1914 #endif 1915 1916 #ifndef B_LLROUND_NAME 1917 # define B_LLROUND_NAME __B_SYSTEM_NAME(LLROUND_BASE_NAME) 1918 #endif 1919 1920 #ifndef B_SIN_NAME 1921 # define B_SIN_NAME __B_SYSTEM_NAME(SIN_BASE_NAME) 1922 #endif 1923 1924 #ifndef B_SIN_VO_NAME 1925 # define B_SIN_VO_NAME __B_SYSTEM_NAME(SIN_VO_BASE_NAME) 1926 #endif 1927 1928 #ifndef B_COS_NAME 1929 # define B_COS_NAME __B_SYSTEM_NAME(COS_BASE_NAME) 1930 #endif 1931 1932 #ifndef B_COS_VO_NAME 1933 # define B_COS_VO_NAME __B_SYSTEM_NAME(COS_VO_BASE_NAME) 1934 #endif 1935 1936 #ifndef B_SINCOS_NAME 1937 # define B_SINCOS_NAME __B_SYSTEM_NAME(SINCOS_BASE_NAME) 1938 #endif 1939 1940 #ifndef B_SINCOS_VO_NAME 1941 # define B_SINCOS_VO_NAME __B_SYSTEM_NAME(SINCOS_VO_BASE_NAME) 1942 #endif 1943 1944 #ifndef B_SIND_NAME 1945 # define B_SIND_NAME __B_SYSTEM_NAME(SIND_BASE_NAME) 1946 #endif 1947 1948 #ifndef B_COSD_NAME 1949 # define B_COSD_NAME __B_SYSTEM_NAME(COSD_BASE_NAME) 1950 #endif 1951 1952 #ifndef B_SINCOSD_NAME 1953 # define B_SINCOSD_NAME __B_SYSTEM_NAME(SINCOSD_BASE_NAME) 1954 #endif 1955 1956 #ifndef B_SINH_NAME 1957 # define B_SINH_NAME __B_SYSTEM_NAME(SINH_BASE_NAME) 1958 #endif 1959 1960 #ifndef B_COSH_NAME 1961 # define B_COSH_NAME __B_SYSTEM_NAME(COSH_BASE_NAME) 1962 #endif 1963 1964 #ifndef B_SQRT_NAME 1965 # define B_SQRT_NAME __B_SYSTEM_NAME(SQRT_BASE_NAME) 1966 #endif 1967 1968 #ifndef B_SQRT_TABLE_NAME 1969 # define B_SQRT_TABLE_NAME __B_TABLE_NAME(SQRT_BASE_NAME) 1970 #endif 1971 1972 #ifndef B_RSQRT_NAME 1973 # define B_RSQRT_NAME __B_USER_NAME(RSQRT_BASE_NAME) 1974 #endif 1975 1976 #ifndef B_RSQRT_TABLE_NAME 1977 # define B_RSQRT_TABLE_NAME __B_TABLE_NAME(RSQRT_BASE_NAME) 1978 #endif 1979 1980 #ifndef B_CBRT_NAME 1981 # define B_CBRT_NAME __B_SYSTEM_NAME(CBRT_BASE_NAME) 1982 #endif 1983 1984 #ifndef B_CBRT_TABLE_NAME 1985 # define B_CBRT_TABLE_NAME __B_TABLE_NAME(CBRT_BASE_NAME) 1986 #endif 1987 1988 #ifndef B_TAN_NAME 1989 # define B_TAN_NAME __B_SYSTEM_NAME(TAN_BASE_NAME) 1990 #endif 1991 1992 #ifndef B_COT_NAME 1993 # define B_COT_NAME __B_SYSTEM_NAME(COT_BASE_NAME) 1994 #endif 1995 1996 #ifndef B_TANCOT_NAME 1997 # define B_TANCOT_NAME __B_SYSTEM_NAME(TANCOT_BASE_NAME) 1998 #endif 1999 2000 #ifndef B_TAND_NAME 2001 # define B_TAND_NAME __B_SYSTEM_NAME(TAND_BASE_NAME) 2002 #endif 2003 2004 #ifndef B_COTD_NAME 2005 # define B_COTD_NAME __B_SYSTEM_NAME(COTD_BASE_NAME) 2006 #endif 2007 2008 #ifndef B_TANCOTD_NAME 2009 # define B_TANCOTD_NAME __B_SYSTEM_NAME(TANCOTD_BASE_NAME) 2010 #endif 2011 2012 #ifndef B_TANH_NAME 2013 # define B_TANH_NAME __B_SYSTEM_NAME(TANH_BASE_NAME) 2014 #endif 2015 2016 #ifndef B_TRIG_CONS_NAME 2017 # define B_TRIG_CONS_NAME __B_USER_NAME(TRIG_CONS_BASE_NAME) 2018 #endif 2019 2020 #ifndef B_TRIGD_CONS_NAME 2021 # define B_TRIGD_CONS_NAME __B_USER_NAME(TRIGD_CONS_BASE_NAME) 2022 #endif 2023 2024 #ifndef B_TRIG_REDUCE_NAME 2025 # define B_TRIG_REDUCE_NAME __B_USER_NAME(TRIG_REDUCE_BASE_NAME) 2026 #endif 2027 2028 #ifndef B_TRIG_REDUCE_VO_NAME 2029 # define B_TRIG_REDUCE_VO_NAME __B_USER_NAME(TRIG_REDUCE_VO_BASE_NAME) 2030 #endif 2031 2032 #ifndef B_TRIGD_REDUCE_NAME 2033 # define B_TRIGD_REDUCE_NAME __B_USER_NAME(TRIGD_REDUCE_BASE_NAME) 2034 #endif 2035 2036 #ifndef B_TRUNC_NAME 2037 # define B_TRUNC_NAME __B_SYSTEM_NAME(TRUNC_BASE_NAME) 2038 #endif 2039 2040 #ifndef B_UNORDERED_NAME 2041 # define B_UNORDERED_NAME __B_SYSTEM_NAME(UNORDERED_BASE_NAME) 2042 #endif 2043 2044 #ifndef B_CCOS_NAME 2045 # define B_CCOS_NAME __B_SYSTEM_NAME(CCOS_BASE_NAME) 2046 #endif 2047 2048 #ifndef B_CDIV_NAME 2049 # define B_CDIV_NAME __B_SYSTEM_NAME(CDIV_BASE_NAME) 2050 #endif 2051 2052 #ifndef B_CEXP_NAME 2053 # define B_CEXP_NAME __B_SYSTEM_NAME(CEXP_BASE_NAME) 2054 #endif 2055 2056 #ifndef B_CLOG_NAME 2057 # define B_CLOG_NAME __B_SYSTEM_NAME(CLOG_BASE_NAME) 2058 #endif 2059 2060 #ifndef B_CMUL_NAME 2061 # define B_CMUL_NAME __B_SYSTEM_NAME(CMUL_BASE_NAME) 2062 #endif 2063 2064 #ifndef B_CPOW_NAME 2065 # define B_CPOW_NAME __B_SYSTEM_NAME(CPOW_BASE_NAME) 2066 #endif 2067 2068 #ifndef B_CPOWI_NAME 2069 # define B_CPOWI_NAME __B_SYSTEM_NAME(CPOWI_BASE_NAME) 2070 #endif 2071 2072 #ifndef B_CSIN_NAME 2073 # define B_CSIN_NAME __B_SYSTEM_NAME(CSIN_BASE_NAME) 2074 #endif 2075 2076 #ifndef B_CSQRT_NAME 2077 # define B_CSQRT_NAME __B_SYSTEM_NAME(CSQRT_BASE_NAME) 2078 #endif 2079 2080 #ifndef B_CACOS_NAME 2081 # define B_CACOS_NAME __B_SYSTEM_NAME(CACOS_BASE_NAME) 2082 #endif 2083 2084 #ifndef B_CASIN_NAME 2085 # define B_CASIN_NAME __B_SYSTEM_NAME(CASIN_BASE_NAME) 2086 #endif 2087 2088 #ifndef B_CATAN_NAME 2089 # define B_CATAN_NAME __B_SYSTEM_NAME(CATAN_BASE_NAME) 2090 #endif 2091 2092 #ifndef B_CTAN_NAME 2093 # define B_CTAN_NAME __B_SYSTEM_NAME(CTAN_BASE_NAME) 2094 #endif 2095 2096 #ifndef B_CCOSH_NAME 2097 # define B_CCOSH_NAME __B_SYSTEM_NAME(CCOSH_BASE_NAME) 2098 #endif 2099 2100 #ifndef B_CSINH_NAME 2101 # define B_CSINH_NAME __B_SYSTEM_NAME(CSINH_BASE_NAME) 2102 #endif 2103 2104 #ifndef B_CTANH_NAME 2105 # define B_CTANH_NAME __B_SYSTEM_NAME(CTANH_BASE_NAME) 2106 #endif 2107 2108 2109 #ifndef B_CACOSH_NAME 2110 # define B_CACOSH_NAME __B_SYSTEM_NAME(CACOSH_BASE_NAME) 2111 #endif 2112 2113 #ifndef B_CASINH_NAME 2114 # define B_CASINH_NAME __B_SYSTEM_NAME(CASINH_BASE_NAME) 2115 #endif 2116 2117 #ifndef B_CATANH_NAME 2118 # define B_CATANH_NAME __B_SYSTEM_NAME(CATANH_BASE_NAME) 2119 #endif 2120 2121 #ifndef B_CARG_NAME 2122 # define B_CARG_NAME __B_SYSTEM_NAME(CARG_BASE_NAME) 2123 #endif 2124 2125 #ifndef B_CIMAG_NAME 2126 # define B_CIMAG_NAME __B_SYSTEM_NAME(CIMAG_BASE_NAME) 2127 #endif 2128 2129 #ifndef B_CREAL_NAME 2130 # define B_CREAL_NAME __B_SYSTEM_NAME(CREAL_BASE_NAME) 2131 #endif 2132 2133 #ifndef B_CPROJ_NAME 2134 # define B_CPROJ_NAME __B_SYSTEM_NAME(CPROJ_BASE_NAME) 2135 #endif 2136 2137 #ifndef B_CONJ_NAME 2138 # define B_CONJ_NAME __B_SYSTEM_NAME(CONJ_BASE_NAME) 2139 #endif 2140 2141 #ifndef B_NAN_NAME 2142 # define B_NAN_NAME __B_SYSTEM_NAME(NAN_BASE_NAME) 2143 #endif 2144 2145 #ifndef B_FDIM_NAME 2146 # define B_FDIM_NAME __B_SYSTEM_NAME(FDIM_BASE_NAME) 2147 #endif 2148 2149 #ifndef B_FMAX_NAME 2150 # define B_FMAX_NAME __B_SYSTEM_NAME(FMAX_BASE_NAME) 2151 #endif 2152 2153 #ifndef B_FMIN_NAME 2154 # define B_FMIN_NAME __B_SYSTEM_NAME(FMIN_BASE_NAME) 2155 #endif 2156 2157 #ifndef B_SIGNIFICAND_NAME 2158 # define B_SIGNIFICAND_NAME __B_SYSTEM_NAME(SIGNIFICAND_BASE_NAME) 2159 #endif 2160 2161 #ifndef B_FMA_NAME 2162 # define B_FMA_NAME __B_SYSTEM_NAME(FMA_BASE_NAME) 2163 #endif 2164 2165 #ifndef B_POW_I_NAME 2166 # define B_POW_I_NAME __B_SYSTEM_NAME(POW_I_BASE_NAME) 2167 #endif 2168 2169 #ifndef B_POW_I_II_NAME 2170 # define B_POW_I_II_NAME __B_SYSTEM_NAME(POW_I_II_BASE_NAME) 2171 #endif 2172 2173 #ifndef B_SINHCOSH_NAME 2174 # define B_SINHCOSH_NAME __B_SYSTEM_NAME(SINHCOSH_BASE_NAME) 2175 #endif 2176 2177 #ifndef B_MUL_NAME 2178 # define B_MUL_NAME __B_SYSTEM_NAME(MUL_BASE_NAME) 2179 #endif 2180 2181 #ifndef B_DIV_NAME 2182 # define B_DIV_NAME __B_SYSTEM_NAME(DIV_BASE_NAME) 2183 #endif 2184 2185 #ifndef B_ADD_NAME 2186 # define B_ADD_NAME __B_SYSTEM_NAME(ADD_BASE_NAME) 2187 #endif 2188 2189 #ifndef B_SUB_NAME 2190 # define B_SUB_NAME __B_SYSTEM_NAME(SUB_BASE_NAME ) 2191 #endif 2192 2193 #ifndef B_NEG_NAME 2194 # define B_NEG_NAME __B_SYSTEM_NAME(NEG_BASE_NAME) 2195 #endif 2196 2197 #ifndef B_ITOF_NAME 2198 # define B_ITOF_NAME __B_SYSTEM_NAME(ITOF_BASE_NAME) 2199 #endif 2200 2201 #ifndef B_CMP_NAME 2202 # define B_CMP_NAME __B_SYSTEM_NAME(CMP_BASE_NAME) 2203 #endif 2204 2205 /* 2206 ** Default definitions for the fast backup entry points. 2207 */ 2208 2209 #ifndef B_FAST_ACOS_NAME 2210 # define B_FAST_ACOS_NAME __B_SYSTEM_NAME(FAST_ACOS_BASE_NAME) 2211 #endif 2212 2213 #ifndef B_FAST_ASIN_NAME 2214 # define B_FAST_ASIN_NAME __B_SYSTEM_NAME(FAST_ASIN_BASE_NAME) 2215 #endif 2216 2217 #ifndef B_FAST_ATAN_NAME 2218 # define B_FAST_ATAN_NAME __B_SYSTEM_NAME(FAST_ATAN_BASE_NAME) 2219 #endif 2220 2221 #ifndef B_FAST_EXP_NAME 2222 # define B_FAST_EXP_NAME __B_SYSTEM_NAME(FAST_EXP_BASE_NAME) 2223 #endif 2224 2225 #ifndef B_FAST_LN_NAME 2226 # define B_FAST_LN_NAME __B_SYSTEM_NAME(FAST_LN_BASE_NAME) 2227 #endif 2228 2229 #ifndef B_FAST_LOG10_NAME 2230 # define B_FAST_LOG10_NAME __B_SYSTEM_NAME(FAST_LOG10_BASE_NAME) 2231 #endif 2232 2233 #ifndef B_FAST_SINCOS_NAME 2234 # define B_FAST_SINCOS_NAME __B_SYSTEM_NAME(FAST_SINCOS_BASE_NAME) 2235 #endif 2236 2237 #ifndef B_FAST_SIN_NAME 2238 # define B_FAST_SIN_NAME __B_SYSTEM_NAME(FAST_SIN_BASE_NAME) 2239 #endif 2240 2241 #ifndef B_FAST_COS_NAME 2242 # define B_FAST_COS_NAME __B_SYSTEM_NAME(FAST_COS_BASE_NAME) 2243 #endif 2244 2245 #ifndef B_FAST_SINCOSD_NAME 2246 # define B_FAST_SINCOSD_NAME __B_SYSTEM_NAME(FAST_SINCOSD_BASE_NAME) 2247 #endif 2248 2249 #ifndef B_FAST_SIND_NAME 2250 # define B_FAST_SIND_NAME __B_SYSTEM_NAME(FAST_SIND_BASE_NAME) 2251 #endif 2252 2253 #ifndef B_FAST_COSD_NAME 2254 # define B_FAST_COSD_NAME __B_SYSTEM_NAME(FAST_COSD_BASE_NAME) 2255 #endif 2256 2257 #ifndef B_FAST_TAN_NAME 2258 # define B_FAST_TAN_NAME __B_SYSTEM_NAME(FAST_TAN_BASE_NAME) 2259 #endif 2260 2261 #ifndef B_FAST_ATAN2_NAME 2262 # define B_FAST_ATAN2_NAME __B_SYSTEM_NAME(FAST_ATAN2_BASE_NAME) 2263 #endif 2264 2265 #ifndef B_FAST_HYPOT_NAME 2266 # define B_FAST_HYPOT_NAME __B_SYSTEM_NAME(FAST_HYPOT_BASE_NAME) 2267 #endif 2268 2269 #ifndef B_FAST_POW_NAME 2270 # define B_FAST_POW_NAME __B_SYSTEM_NAME(FAST_POW_BASE_NAME) 2271 #endif 2272 2273 #ifndef B_FAST_POW_E_NAME 2274 # define B_FAST_POW_E_NAME __B_USER_NAME(FAST_POW_E_BASE_NAME) 2275 #endif 2276 2277 #ifndef B_FAST_SQRT_NAME 2278 # define B_FAST_SQRT_NAME __B_SYSTEM_NAME(FAST_SQRT_BASE_NAME) 2279 #endif 2280 2281 2282 2283 #endif /* B_TYPE */ 2284 2285 2286 2287 /* 2288 ** Special names for 128 bits. 2289 */ 2290 2291 2292 #ifndef D_SQRT_TABLE_NAME 2293 # define D_SQRT_TABLE_NAME __D_TABLE_NAME(SQRT_BASE_NAME) 2294 #endif 2295 2296 #ifndef D_RSQRT_TABLE_NAME 2297 # define D_RSQRT_TABLE_NAME __D_TABLE_NAME(RSQRT_BASE_NAME) 2298 #endif 2299 2300 2301 2302 /* 2303 ** Default names for include files which need to be globally visible within 2304 ** the DPML. 2305 */ 2306 2307 #ifndef F_TRIG_CONS_BUILD_FILE_NAME 2308 # define F_TRIG_CONS_BUILD_FILE_NAME __BUILD_FILE_NAME_C(TRIG_CONS_BASE_NAME) 2309 #endif 2310 2311 #ifndef F_TRIGD_CONS_BUILD_FILE_NAME 2312 # define F_TRIGD_CONS_BUILD_FILE_NAME __BUILD_FILE_NAME_C(TRIGD_CONS_BASE_NAME) 2313 #endif 2314 2315 #ifndef F_SINCOS_BUILD_FILE_NAME 2316 # define F_SINCOS_BUILD_FILE_NAME __BUILD_FILE_NAME_C(SINCOS_BASE_NAME) 2317 #endif 2318 2319 #ifndef F_TANCOT_BUILD_FILE_NAME 2320 # define F_TANCOT_BUILD_FILE_NAME __F_TABLE_FILE_NAME(TANCOT_BASE_NAME) 2321 #endif 2322 2323 #ifndef FOUR_OVER_PI_TABLE_NAME 2324 # define FOUR_OVER_PI_TABLE_NAME __TABLE_NAME(four_over_pi) 2325 #endif 2326 2327 #ifndef FOUR_OVER_PI_BUILD_FILE_NAME 2328 # define FOUR_OVER_PI_BUILD_FILE_NAME \ 2329 ADD_EXTENSION(ADD_BUILD_PREFIX(four_over_pi),c) 2330 #endif 2331 2332 #ifndef POW_ANSI_C_ERROR_BUILD_FILE_NAME 2333 # define POW_ANSI_C_ERROR_BUILD_FILE_NAME \ 2334 ADD_EXTENSION(ADD_BUILD_PREFIX(pow_ansi_c_error),c) 2335 #endif 2336 2337 #ifndef POW_FORTRAN_ERROR_BUILD_FILE_NAME 2338 # define POW_FORTRAN_ERROR_BUILD_FILE_NAME \ 2339 ADD_EXTENSION(ADD_BUILD_PREFIX(pow_fortran_error),c) 2340 #endif 2341 2342 #ifndef POW_ANSI_C_ERROR_TABLE_NAME 2343 # define POW_ANSI_C_ERROR_TABLE_NAME __TABLE_NAME(pow_ansi_c_error) 2344 #endif 2345 2346 #ifndef POW_FORTRAN_ERROR_TABLE_NAME 2347 # define POW_FORTRAN_ERROR_TABLE_NAME __TABLE_NAME(pow_fortran_error) 2348 #endif 2349 2350 2351 /* 2352 ** Establish default prefixes, suffixes and file extensions. 2353 */ 2354 2355 2356 #ifndef F_NAME_PREFIX 2357 # define F_NAME_PREFIX DPML_NULL_MACRO_TOKEN 2358 #endif 2359 2360 #ifndef BUILD_PREFIX 2361 # define BUILD_PREFIX dpml_ 2362 #endif 2363 2364 #ifndef USER_PREFIX 2365 # define USER_PREFIX F_NAME_PREFIX 2366 #endif 2367 2368 #ifndef TABLE_PREFIX 2369 # define TABLE_PREFIX USER_PREFIX 2370 #endif 2371 2372 2373 #ifndef INTERNAL_PREFIX 2374 # define INTERNAL_PREFIX dpml_ 2375 #endif 2376 2377 #ifndef __F_SUFFIX 2378 # define __F_SUFFIX PASTE_2(_, F_CHAR) 2379 #endif 2380 2381 #if !defined(F_CVTAS_SUFFIX) 2382 # define F_CVTAS_SUFFIX __F_SUFFIX 2383 #endif 2384 2385 #ifndef F_NAME_SUFFIX 2386 # if SINGLE_PRECISION 2387 # define F_NAME_SUFFIX f 2388 # elif QUAD_PRECISION 2389 # define F_NAME_SUFFIX l 2390 # else 2391 # define F_NAME_SUFFIX DPML_NULL_MACRO_TOKEN 2392 # endif 2393 #endif 2394 2395 #ifndef BUILD_SUFFIX 2396 # define BUILD_SUFFIX __F_SUFFIX 2397 #endif 2398 2399 #ifndef D_BUILD_SUFFIX 2400 # define D_BUILD_SUFFIX __D_SUFFIX 2401 #endif 2402 2403 #ifndef TABLE_SUFFIX 2404 # if (__F_SUFFIX == DPML_NULL_MACRO_TOKEN) 2405 # define TABLE_SUFFIX _table 2406 # else 2407 # define TABLE_SUFFIX PASTE_2(__F_SUFFIX, _table) 2408 # endif 2409 #endif 2410 2411 #ifndef F_TABLE_SUFFIX 2412 # if (__F_SUFFIX == DPML_NULL_MACRO_TOKEN) 2413 # define F_TABLE_SUFFIX _table 2414 # else 2415 # define F_TABLE_SUFFIX PASTE_2(__F_SUFFIX, _table) 2416 # endif 2417 #endif 2418 2419 #ifndef BUILD_FILE_EXTENSION 2420 # if defined(MAKE_COMMON) 2421 # define BUILD_FILE_EXTENSION c 2422 # else 2423 # define BUILD_FILE_EXTENSION h 2424 # endif 2425 #endif 2426 2427 2428 2429 #ifdef B_TYPE 2430 2431 #ifndef __B_SUFFIX 2432 # define __B_SUFFIX PASTE_2(_, B_CHAR) 2433 #endif 2434 2435 #ifndef B_NAME_SUFFIX 2436 # if QUAD_PRECISION 2437 # define B_NAME_SUFFIX Q_CHAR 2438 # else 2439 # define B_NAME_SUFFIX DPML_NULL_MACRO_TOKEN 2440 # endif 2441 #endif 2442 2443 #ifndef B_TABLE_SUFFIX 2444 # if (__B_SUFFIX == DPML_NULL_MACRO_TOKEN) 2445 # define B_TABLE_SUFFIX _table 2446 # else 2447 # define B_TABLE_SUFFIX PASTE_2(__B_SUFFIX, _table) 2448 # endif 2449 #endif 2450 2451 #endif /* B_TYPE */ 2452 2453 2454 2455 /* 2456 ** Macros for D tables (128 bits). 2457 */ 2458 2459 2460 #ifndef __D_SUFFIX 2461 # define __D_SUFFIX PASTE_2(_, D_CHAR) 2462 #endif 2463 2464 #ifndef D_TABLE_SUFFIX 2465 # if (__D_SUFFIX == DPML_NULL_MACRO_TOKEN) 2466 # define D_TABLE_SUFFIX _table 2467 # else 2468 # define D_TABLE_SUFFIX PASTE_2(__D_SUFFIX, _table) 2469 # endif 2470 #endif 2471 2472 2473 2474 /* 2475 ** Macros for constructing file names. 2476 */ 2477 2478 #define ADD_EXTENSION(filename,ext) filename.ext 2479 2480 /* 2481 ** The following code is designed to test for "null" macros before choosing 2482 ** an appropriate PASTE macro. The ANSI C standard does not define how macros 2483 ** should behave when given null arguments and some compilers signal errors 2484 ** under these conditions (e.g. at the time of this writing, HP's ANSI C 2485 ** compiler under HP/UX). 2486 ** 2487 ** First define macro for adding prefixes 2488 */ 2489 2490 #if (F_NAME_PREFIX == DPML_NULL_MACRO_TOKEN) 2491 # define __SYSTEM_NAME(base) base 2492 #else 2493 # define __SYSTEM_NAME(base) PASTE_2(F_NAME_PREFIX, base) 2494 #endif 2495 2496 #if (USER_PREFIX == DPML_NULL_MACRO_TOKEN) 2497 # define __USER_NAME(base) base 2498 #else 2499 # define __USER_NAME(base) PASTE_2(USER_PREFIX, base) 2500 #endif 2501 2502 #if (TABLE_PREFIX == DPML_NULL_MACRO_TOKEN) 2503 # define __TABLE_NAME(base) base 2504 #else 2505 # define __TABLE_NAME(base) PASTE_2(TABLE_PREFIX, base) 2506 #endif 2507 2508 #if (INTERNAL_PREFIX == DPML_NULL_MACRO_TOKEN) 2509 # define __INTERNAL_NAME(base) base 2510 #else 2511 # define __INTERNAL_NAME(base) PASTE_2(INTERNAL_PREFIX, base) 2512 #endif 2513 2514 #if (BUILD_PREFIX == DPML_NULL_MACRO_TOKEN) 2515 # define ADD_BUILD_PREFIX(base) base 2516 #else 2517 # define ADD_BUILD_PREFIX(base) PASTE_2(BUILD_PREFIX, base) 2518 #endif 2519 2520 /* 2521 ** Define macros for adding suffixes 2522 */ 2523 2524 #if (F_NAME_SUFFIX == DPML_NULL_MACRO_TOKEN) 2525 # define ADD_F_SUFFIX(base) base 2526 #else 2527 # define ADD_F_SUFFIX(base) PASTE_2(base, F_NAME_SUFFIX) 2528 #endif 2529 2530 #if (B_NAME_SUFFIX == DPML_NULL_MACRO_TOKEN) 2531 # define ADD_B_SUFFIX(base) base 2532 #else 2533 # define ADD_B_SUFFIX(base) PASTE_2(base, B_NAME_SUFFIX) 2534 #endif 2535 2536 #if (D_NAME_SUFFIX == DPML_NULL_MACRO_TOKEN) 2537 # define ADD_D_SUFFIX(base) base 2538 #else 2539 # define ADD_D_SUFFIX(base) PASTE_2(base, D_NAME_SUFFIX) 2540 #endif 2541 2542 #if (BUILD_SUFFIX == DPML_NULL_MACRO_TOKEN) 2543 # define __BUILD_NAME(base) ADD_BUILD_PREFIX(base) 2544 #else 2545 # define __BUILD_NAME(base) PASTE_2(ADD_BUILD_PREFIX(base), BUILD_SUFFIX) 2546 #endif 2547 2548 #define __F_USER_NAME(base) ADD_F_SUFFIX(__USER_NAME(base)) 2549 #define __F_INTERNAL_NAME(base) ADD_F_SUFFIX(__INTERNAL_NAME(base)) 2550 #define __F_SYSTEM_NAME(base) ADD_F_SUFFIX(__SYSTEM_NAME(base)) 2551 #define __F_TABLE_NAME(base) PASTE_2(__TABLE_NAME(base), TABLE_SUFFIX) 2552 #define __F_TABLE_FILE_ROOT(base) PASTE_2(ADD_BUILD_PREFIX(base),F_TABLE_SUFFIX) 2553 #define __F_TABLE_FILE_NAME(base) ADD_EXTENSION(__F_TABLE_FILE_ROOT(base),BUILD_FILE_EXTENSION) 2554 2555 #define __B_USER_NAME(base) ADD_B_SUFFIX(__USER_NAME(base)) 2556 #define __B_INTERNAL_NAME(base) ADD_B_SUFFIX(__INTERNAL_NAME(base)) 2557 #define __B_SYSTEM_NAME(base) ADD_B_SUFFIX(__SYSTEM_NAME(base)) 2558 #define __B_TABLE_NAME(base) PASTE_2(__TABLE_NAME(base), B_TABLE_SUFFIX) 2559 #define __B_TABLE_FILE_ROOT(base) PASTE_2(ADD_BUILD_PREFIX(base),B_TABLE_SUFFIX) 2560 #define __B_TABLE_FILE_NAME(base) ADD_EXTENSION(__B_TABLE_FILE_ROOT(base),BUILD_FILE_EXTENSION) 2561 2562 #ifndef __FAST_NAME 2563 # define __FAST_NAME(base) PASTE_2(F_, base) 2564 #endif 2565 2566 #define __D_TABLE_NAME(base) PASTE_2(__TABLE_NAME(base), D_TABLE_SUFFIX) 2567 #define __D_BUILD_FILE_NAME(base) ADD_EXTENSION(__D_BUILD_NAME(base),BUILD_FILE_EXTENSION) 2568 #define __D_TABLE_FILE_ROOT(base) PASTE_2(ADD_BUILD_PREFIX(base),D_TABLE_SUFFIX) 2569 #define __D_TABLE_FILE_NAME(base) ADD_EXTENSION(__D_TABLE_FILE_ROOT(base),BUILD_FILE_EXTENSION) 2570 2571 2572 #define __BUILD_FILE_NAME(base) ADD_EXTENSION(__BUILD_NAME(base),BUILD_FILE_EXTENSION) 2573 #define __MP_FILE_NAME(base) ADD_EXTENSION(__BUILD_NAME(base),mp) 2574 #define __BUILD_FILE_NAME_C(base) ADD_EXTENSION(__BUILD_NAME(base),c) 2575 #define __BUILD_FILE_NAME_H(base) ADD_EXTENSION(__BUILD_NAME(base),h) 2576 2577 2578 /* 2579 ** Macros defining "generic" file names. 2580 */ 2581 2582 2583 #if !defined(TABLE_NAME) && !DONT_DEFAULT_TABLE_NAME 2584 # define TABLE_NAME __F_TABLE_NAME(BASE_NAME) 2585 #endif 2586 2587 #ifndef BUILD_NAME 2588 # define BUILD_NAME __BUILD_NAME(BASE_NAME) 2589 #endif 2590 2591 #ifndef BUILD_FILE_NAME 2592 # define BUILD_FILE_NAME __BUILD_FILE_NAME(BASE_NAME) 2593 #endif 2594 2595 #ifndef TMP_FILE 2596 # define TMP_FILE ADD_EXTENSION(BUILD_FILE_NAME,tmp) 2597 #endif 2598 2599 #ifndef MP_FILE_NAME 2600 # define MP_FILE_NAME __MP_FILE_NAME(BASE_NAME) 2601 #endif 2602 2603 #endif /* DPML_NAMES_H */ 2604