Go to the documentation of this file. 39 #if !defined (PLIBSYS_H_INSIDE) && !defined (PLIBSYS_COMPILATION) 40 # error "Header files shouldn't be included directly, consider using <plibsys.h> instead." 43 #ifndef PLIBSYS_HEADER_PMACROSCPU_H 44 #define PLIBSYS_HEADER_PMACROSCPU_H 464 #if defined(__alpha__) || defined(__alpha) || defined(_M_ALPHA) 466 #elif defined(__arm__) || defined(__TARGET_ARCH_ARM) || defined(_ARM) || \ 467 defined(_M_ARM) || defined(_M_ARM64) || defined(__arm) || defined(__aarch64__) || \ 468 defined(__ARM64__) || defined(__arm64__) || defined(__arm64) 469 # if defined(__aarch64__) || defined(_M_ARM64) || defined(__ARM64__) || \ 470 defined(__arm64__) || defined(__arm64) 471 # define P_CPU_ARM_64 473 # define P_CPU_ARM_32 475 # if defined(__ARM_ARCH) && __ARM_ARCH > 1 476 # define P_CPU_ARM __ARM_ARCH 477 # elif defined(__TARGET_ARCH_ARM) && __TARGET_ARCH_ARM > 1 478 # define P_CPU_ARM __TARGET_ARCH_ARM 479 # elif defined(_M_ARM) && _M_ARM > 1 480 # define P_CPU_ARM _M_ARM 481 # elif defined(__ARM_ARCH_9__) 483 # elif defined(__ARM64_ARCH_8__) || \ 484 defined(__ARM_ARCH_8__) || \ 485 defined(__ARM_ARCH_8A__) || \ 486 defined(__aarch64__) || \ 487 defined(__ARMv8__) || \ 488 defined(__ARMv8_A__) || \ 489 defined(_M_ARM64) || \ 490 defined(__CORE_CORTEXAV8__) 492 # elif defined(__ARM_ARCH_7__) || \ 493 defined(__ARM_ARCH_7A__) || \ 494 defined(__ARM_ARCH_7R__) || \ 495 defined(__ARM_ARCH_7M__) || \ 496 defined(__ARM_ARCH_7S__) || \ 497 defined(_ARM_ARCH_7) || \ 498 defined(__CORE_CORTEXA__) 500 # elif defined(__ARM_ARCH_6__) || \ 501 defined(__ARM_ARCH_6J__) || \ 502 defined(__ARM_ARCH_6T2__) || \ 503 defined(__ARM_ARCH_6Z__) || \ 504 defined(__ARM_ARCH_6K__) || \ 505 defined(__ARM_ARCH_6ZK__) || \ 506 defined(__ARM_ARCH_6M__) 508 # elif defined(__ARM_ARCH_5__) || \ 509 defined(__ARM_ARCH_5E__) || \ 510 defined(__ARM_ARCH_5T__) || \ 511 defined(__ARM_ARCH_5TE__) || \ 512 defined(__ARM_ARCH_5TEJ__) 514 # elif defined(__ARM_ARCH_4__) || \ 515 defined(__ARM_ARCH_4T__) 517 # elif defined(__ARM_ARCH_3__) || \ 518 defined(__ARM_ARCH_3M__) 520 # elif defined(__ARM_ARCH_2__) 526 # define P_CPU_ARM_V9 527 # elif P_CPU_ARM == 8 528 # define P_CPU_ARM_V8 529 # elif P_CPU_ARM == 7 530 # define P_CPU_ARM_V7 531 # elif P_CPU_ARM == 6 532 # define P_CPU_ARM_V6 533 # elif P_CPU_ARM == 5 534 # define P_CPU_ARM_V5 535 # elif P_CPU_ARM == 4 536 # define P_CPU_ARM_V4 537 # elif P_CPU_ARM == 3 538 # define P_CPU_ARM_V3 539 # elif P_CPU_ARM == 2 540 # define P_CPU_ARM_V2 542 # error "ARM architecture is uknown or too old" 544 #elif defined(__i386__) || defined(__i386) || defined(_M_IX86) 545 # define P_CPU_X86_32 546 # if defined(_M_IX86) 547 # if (_M_IX86 >= 300 &&_M_IX86 <= 600) 548 # define P_CPU_X86 (_M_IX86 / 100) 552 # elif defined(__i686__) || defined(__athlon__) || defined(__SSE__) || defined(__pentiumpro__) 554 # elif defined(__i586__) || defined(__k6__) || defined(__pentium__) 556 # elif defined(__i486__) || defined(__80486__) 561 #elif defined(__x86_64__) || defined(__x86_64) || \ 562 defined(__amd64__) || defined(__amd64) || \ 563 defined(_M_X64) || defined(_M_AMD64) 564 # define P_CPU_X86_64 566 #elif defined(__ia64__) || defined(__ia64) || defined(_M_IA64) 568 #elif defined(__mips__) || defined(__mips) || defined(_M_MRX000) 570 # if defined(_M_MRX000) 571 # if (_M_MRX000 >= 10000) 572 # define P_CPU_MIPS_IV 574 # define P_CPU_MIPS_III 577 # if defined(_MIPS_ARCH_MIPS64) || defined(__mips64) || (defined(__mips) && __mips - 0 >= 64) || \ 578 (defined(_MIPS_ISA) && defined(_MIPS_ISA_MIPS64) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS64) 579 # define P_CPU_MIPS_64 580 # elif defined(_MIPS_ARCH_MIPS32) || defined(__mips32) || (defined(__mips) && __mips - 0 >= 32) || \ 581 (defined(_MIPS_ISA) && defined(_MIPS_ISA_MIPS32) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS32) 582 # define P_CPU_MIPS_32 583 # elif defined(_MIPS_ARCH_MIPS5) || (defined(__mips) && __mips - 0 >= 5) || \ 584 (defined(_MIPS_ISA) && defined(_MIPS_ISA_MIPS5) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS5) 585 # define P_CPU_MIPS_V 586 # elif defined(_MIPS_ARCH_MIPS4) || (defined(__mips) && __mips - 0 >= 4) || \ 587 (defined(_MIPS_ISA) && defined(_MIPS_ISA_MIPS4) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS4) 588 # define P_CPU_MIPS_IV 589 # elif defined(_MIPS_ARCH_MIPS3) || (defined(__mips) && __mips - 0 >= 3) || \ 590 (defined(_MIPS_ISA)&& defined(_MIPS_ISA_MIPS3) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS3) 591 # define P_CPU_MIPS_III 592 # elif defined(_MIPS_ARCH_MIPS2) || (defined(__mips) && __mips - 0 >= 2) || \ 593 (defined(_MIPS_ISA) && defined(_MIPS_ISA_MIPS2) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS2) 594 # define P_CPU_MIPS_II 595 # elif defined(_MIPS_ARCH_MIPS1) || (defined(__mips) && __mips - 0 >= 1) || \ 596 (defined(_MIPS_ISA) && defined(_MIPS_ISA_MIPS1) && __MIPS_ISA - 0 >= _MIPS_ISA_MIPS1) 597 # define P_CPU_MIPS_I 599 # if defined(P_CPU_MIPS_64) 600 # define P_CPU_MIPS_V 602 # if defined(P_CPU_MIPS_V) 603 # define P_CPU_MIPS_IV 605 # if defined(P_CPU_MIPS_IV) 606 # define P_CPU_MIPS_III 608 # if defined(P_CPU_MIPS_32) || defined(P_CPU_MIPS_III) 609 # define P_CPU_MIPS_II 611 # if defined(P_CPU_MIPS_II) 612 # define P_CPU_MIPS_I 614 #elif defined(__powerpc__) || defined(__powerpc) || defined(__ppc__) || defined(__ppc) || \ 615 defined(_ARCH_PPC) || defined(_ARCH_PWR) || defined(_ARCH_COM) || \ 616 defined(_M_PPC) || defined(_M_MPPC) 618 # if defined(__powerpc64__) || defined(__powerpc64) || defined(__ppc64__) || defined(__ppc64) || \ 619 defined(__64BIT__) || defined(__LP64__) || defined(_LP64) 620 # define P_CPU_POWER_64 622 # define P_CPU_POWER_32 624 #elif defined(__sparc__) || defined(__sparc) 626 # if defined(__sparc_v9__) || defined(__sparcv9) 627 # define P_CPU_SPARC_V9 628 # elif defined(__sparc_v8__) || defined(__sparcv8) 629 # define P_CPU_SPARC_V8 631 #elif defined(__hppa__) || defined(__hppa) 633 # if defined(_PA_RISC2_0) || defined(__RISC2_0__) || defined(__HPPA20__) || defined(__PA8000__) 634 # define P_CPU_HPPA_64 636 # define P_CPU_HPPA_32 638 #elif defined(__s390__) 640 # if defined(__s390x__) 643 #elif defined(__riscv) || defined(__riscv__) 645 # if defined(__riscv64) || (defined(__riscv_xlen) && (__riscv_xlen == 64)) 646 # define P_CPU_RISCV_64 648 # define P_CPU_RISCV_32 650 #elif defined(__loongarch__) 651 # define P_CPU_LOONGARCH 652 # if defined(__loongarch64) || (__loongarch_grlen == 64) 653 # define P_CPU_LOONGARCH_64 655 # define P_CPU_LOONGARCH_32 668 # ifndef P_CPU_ARM_32 669 # define P_CPU_ARM_32 671 # ifndef P_CPU_ARM_64 672 # define P_CPU_ARM_64 674 # ifndef P_CPU_ARM_V2 675 # define P_CPU_ARM_V2 677 # ifndef P_CPU_ARM_V3 678 # define P_CPU_ARM_V3 680 # ifndef P_CPU_ARM_V4 681 # define P_CPU_ARM_V4 683 # ifndef P_CPU_ARM_V5 684 # define P_CPU_ARM_V5 686 # ifndef P_CPU_ARM_V6 687 # define P_CPU_ARM_V6 689 # ifndef P_CPU_ARM_V7 690 # define P_CPU_ARM_V7 692 # ifndef P_CPU_ARM_V8 693 # define P_CPU_ARM_V8 695 # ifndef P_CPU_ARM_V9 696 # define P_CPU_ARM_V9 701 # ifndef P_CPU_X86_32 702 # define P_CPU_X86_32 704 # ifndef P_CPU_X86_64 705 # define P_CPU_X86_64 713 # ifndef P_CPU_MIPS_I 714 # define P_CPU_MIPS_I 716 # ifndef P_CPU_MIPS_II 717 # define P_CPU_MIPS_II 719 # ifndef P_CPU_MIPS_III 720 # define P_CPU_MIPS_III 722 # ifndef P_CPU_MIPS_IV 723 # define P_CPU_MIPS_IV 725 # ifndef P_CPU_MIPS_V 726 # define P_CPU_MIPS_V 728 # ifndef P_CPU_MIPS_32 729 # define P_CPU_MIPS_32 731 # ifndef P_CPU_MIPS_64 732 # define P_CPU_MIPS_64 737 # ifndef P_CPU_POWER_32 738 # define P_CPU_POWER_32 740 # ifndef P_CPU_POWER_64 741 # define P_CPU_POWER_64 746 # ifndef P_CPU_SPARC_V8 747 # define P_CPU_SPARC_V8 749 # ifndef P_CPU_SPARC_V9 750 # define P_CPU_SPARC_V9 755 # ifndef P_CPU_HPPA_32 756 # define P_CPU_HPPA_32 758 # ifndef P_CPU_HPPA_64 759 # define P_CPU_HPPA_64 770 # ifndef P_CPU_RISCV_32 771 # define P_CPU_RISCV_32 773 # ifndef P_CPU_RISCV_64 774 # define P_CPU_RISCV_64 776 # ifndef P_CPU_LOONGARCH 777 # define P_CPU_LOONGARCH 779 # ifndef P_CPU_LOONGARCH_32 780 # define P_CPU_LOONGARCH_32 782 # ifndef P_CPU_LOONGARCH_64 783 # define P_CPU_LOONGARCH_64