| ... | @@ -681,18 +681,6 @@ void ZigLLVMParseCommandLineOptions(size_t argc, const char *const *argv) { | ... | @@ -681,18 +681,6 @@ void ZigLLVMParseCommandLineOptions(size_t argc, const char *const *argv) { |
| 681 | } | 681 | } |
| 682 | | 682 | |
| 683 | | 683 | |
| 684 | static_assert((Triple::ArchType)ZigLLVM_LastArchType == Triple::LastArchType, ""); | | |
| 685 | static_assert((Triple::VendorType)ZigLLVM_LastVendorType == Triple::LastVendorType, ""); | | |
| 686 | static_assert((Triple::OSType)ZigLLVM_LastOSType == Triple::LastOSType, ""); | | |
| 687 | static_assert((Triple::EnvironmentType)ZigLLVM_LastEnvironmentType == Triple::LastEnvironmentType, ""); | | |
| 688 | static_assert((Triple::SubArchType)ZigLLVM_KalimbaSubArch_v5 == Triple::KalimbaSubArch_v5, ""); | | |
| 689 | | | |
| 690 | static_assert((Triple::ObjectFormatType)ZigLLVM_UnknownObjectFormat == Triple::UnknownObjectFormat, ""); | | |
| 691 | static_assert((Triple::ObjectFormatType)ZigLLVM_COFF == Triple::COFF, ""); | | |
| 692 | static_assert((Triple::ObjectFormatType)ZigLLVM_ELF == Triple::ELF, ""); | | |
| 693 | static_assert((Triple::ObjectFormatType)ZigLLVM_MachO == Triple::MachO, ""); | | |
| 694 | static_assert((Triple::ObjectFormatType)ZigLLVM_Wasm == Triple::Wasm, ""); | | |
| 695 | | | |
| 696 | const char *ZigLLVMGetArchTypeName(ZigLLVM_ArchType arch) { | 684 | const char *ZigLLVMGetArchTypeName(ZigLLVM_ArchType arch) { |
| 697 | return (const char*)Triple::getArchTypeName((Triple::ArchType)arch).bytes_begin(); | 685 | return (const char*)Triple::getArchTypeName((Triple::ArchType)arch).bytes_begin(); |
| 698 | } | 686 | } |
| ... | @@ -919,3 +907,166 @@ bool ZigLLDLink(ZigLLVM_ObjectFormatType oformat, const char **args, size_t arg_ | ... | @@ -919,3 +907,166 @@ bool ZigLLDLink(ZigLLVM_ObjectFormatType oformat, const char **args, size_t arg_ |
| 919 | assert(false); // unreachable | 907 | assert(false); // unreachable |
| 920 | abort(); | 908 | abort(); |
| 921 | } | 909 | } |
| | 910 | |
| | 911 | static_assert((Triple::ArchType)ZigLLVM_UnknownArch == Triple::UnknownArch, ""); |
| | 912 | static_assert((Triple::ArchType)ZigLLVM_arm == Triple::arm, ""); |
| | 913 | static_assert((Triple::ArchType)ZigLLVM_armeb == Triple::armeb, ""); |
| | 914 | static_assert((Triple::ArchType)ZigLLVM_aarch64 == Triple::aarch64, ""); |
| | 915 | static_assert((Triple::ArchType)ZigLLVM_aarch64_be == Triple::aarch64_be, ""); |
| | 916 | static_assert((Triple::ArchType)ZigLLVM_arc == Triple::arc, ""); |
| | 917 | static_assert((Triple::ArchType)ZigLLVM_avr == Triple::avr, ""); |
| | 918 | static_assert((Triple::ArchType)ZigLLVM_bpfel == Triple::bpfel, ""); |
| | 919 | static_assert((Triple::ArchType)ZigLLVM_bpfeb == Triple::bpfeb, ""); |
| | 920 | static_assert((Triple::ArchType)ZigLLVM_hexagon == Triple::hexagon, ""); |
| | 921 | static_assert((Triple::ArchType)ZigLLVM_mips == Triple::mips, ""); |
| | 922 | static_assert((Triple::ArchType)ZigLLVM_mipsel == Triple::mipsel, ""); |
| | 923 | static_assert((Triple::ArchType)ZigLLVM_mips64 == Triple::mips64, ""); |
| | 924 | static_assert((Triple::ArchType)ZigLLVM_mips64el == Triple::mips64el, ""); |
| | 925 | static_assert((Triple::ArchType)ZigLLVM_msp430 == Triple::msp430, ""); |
| | 926 | static_assert((Triple::ArchType)ZigLLVM_nios2 == Triple::nios2, ""); |
| | 927 | static_assert((Triple::ArchType)ZigLLVM_ppc == Triple::ppc, ""); |
| | 928 | static_assert((Triple::ArchType)ZigLLVM_ppc64 == Triple::ppc64, ""); |
| | 929 | static_assert((Triple::ArchType)ZigLLVM_ppc64le == Triple::ppc64le, ""); |
| | 930 | static_assert((Triple::ArchType)ZigLLVM_r600 == Triple::r600, ""); |
| | 931 | static_assert((Triple::ArchType)ZigLLVM_amdgcn == Triple::amdgcn, ""); |
| | 932 | static_assert((Triple::ArchType)ZigLLVM_riscv32 == Triple::riscv32, ""); |
| | 933 | static_assert((Triple::ArchType)ZigLLVM_riscv64 == Triple::riscv64, ""); |
| | 934 | static_assert((Triple::ArchType)ZigLLVM_sparc == Triple::sparc, ""); |
| | 935 | static_assert((Triple::ArchType)ZigLLVM_sparcv9 == Triple::sparcv9, ""); |
| | 936 | static_assert((Triple::ArchType)ZigLLVM_sparcel == Triple::sparcel, ""); |
| | 937 | static_assert((Triple::ArchType)ZigLLVM_systemz == Triple::systemz, ""); |
| | 938 | static_assert((Triple::ArchType)ZigLLVM_tce == Triple::tce, ""); |
| | 939 | static_assert((Triple::ArchType)ZigLLVM_tcele == Triple::tcele, ""); |
| | 940 | static_assert((Triple::ArchType)ZigLLVM_thumb == Triple::thumb, ""); |
| | 941 | static_assert((Triple::ArchType)ZigLLVM_thumbeb == Triple::thumbeb, ""); |
| | 942 | static_assert((Triple::ArchType)ZigLLVM_x86 == Triple::x86, ""); |
| | 943 | static_assert((Triple::ArchType)ZigLLVM_x86_64 == Triple::x86_64, ""); |
| | 944 | static_assert((Triple::ArchType)ZigLLVM_xcore == Triple::xcore, ""); |
| | 945 | static_assert((Triple::ArchType)ZigLLVM_nvptx == Triple::nvptx, ""); |
| | 946 | static_assert((Triple::ArchType)ZigLLVM_nvptx64 == Triple::nvptx64, ""); |
| | 947 | static_assert((Triple::ArchType)ZigLLVM_le32 == Triple::le32, ""); |
| | 948 | static_assert((Triple::ArchType)ZigLLVM_le64 == Triple::le64, ""); |
| | 949 | static_assert((Triple::ArchType)ZigLLVM_amdil == Triple::amdil, ""); |
| | 950 | static_assert((Triple::ArchType)ZigLLVM_amdil64 == Triple::amdil64, ""); |
| | 951 | static_assert((Triple::ArchType)ZigLLVM_hsail == Triple::hsail, ""); |
| | 952 | static_assert((Triple::ArchType)ZigLLVM_hsail64 == Triple::hsail64, ""); |
| | 953 | static_assert((Triple::ArchType)ZigLLVM_spir == Triple::spir, ""); |
| | 954 | static_assert((Triple::ArchType)ZigLLVM_spir64 == Triple::spir64, ""); |
| | 955 | static_assert((Triple::ArchType)ZigLLVM_kalimba == Triple::kalimba, ""); |
| | 956 | static_assert((Triple::ArchType)ZigLLVM_shave == Triple::shave, ""); |
| | 957 | static_assert((Triple::ArchType)ZigLLVM_lanai == Triple::lanai, ""); |
| | 958 | static_assert((Triple::ArchType)ZigLLVM_wasm32 == Triple::wasm32, ""); |
| | 959 | static_assert((Triple::ArchType)ZigLLVM_wasm64 == Triple::wasm64, ""); |
| | 960 | static_assert((Triple::ArchType)ZigLLVM_renderscript32 == Triple::renderscript32, ""); |
| | 961 | static_assert((Triple::ArchType)ZigLLVM_renderscript64 == Triple::renderscript64, ""); |
| | 962 | // Uncomment this when testing LLVM 8.0.0 |
| | 963 | //static_assert((Triple::ArchType)ZigLLVM_LastArchType == Triple::LastArchType, ""); |
| | 964 | |
| | 965 | static_assert((Triple::SubArchType)ZigLLVM_NoSubArch == Triple::NoSubArch, ""); |
| | 966 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8_4a == Triple::ARMSubArch_v8_4a, ""); |
| | 967 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8_3a == Triple::ARMSubArch_v8_3a, ""); |
| | 968 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8_2a == Triple::ARMSubArch_v8_2a, ""); |
| | 969 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8_1a == Triple::ARMSubArch_v8_1a, ""); |
| | 970 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8 == Triple::ARMSubArch_v8, ""); |
| | 971 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8r == Triple::ARMSubArch_v8r, ""); |
| | 972 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8m_baseline == Triple::ARMSubArch_v8m_baseline, ""); |
| | 973 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v8m_mainline == Triple::ARMSubArch_v8m_mainline, ""); |
| | 974 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v7 == Triple::ARMSubArch_v7, ""); |
| | 975 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v7em == Triple::ARMSubArch_v7em, ""); |
| | 976 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v7m == Triple::ARMSubArch_v7m, ""); |
| | 977 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v7s == Triple::ARMSubArch_v7s, ""); |
| | 978 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v7k == Triple::ARMSubArch_v7k, ""); |
| | 979 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v7ve == Triple::ARMSubArch_v7ve, ""); |
| | 980 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v6 == Triple::ARMSubArch_v6, ""); |
| | 981 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v6m == Triple::ARMSubArch_v6m, ""); |
| | 982 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v6k == Triple::ARMSubArch_v6k, ""); |
| | 983 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v6t2 == Triple::ARMSubArch_v6t2, ""); |
| | 984 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v5 == Triple::ARMSubArch_v5, ""); |
| | 985 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v5te == Triple::ARMSubArch_v5te, ""); |
| | 986 | static_assert((Triple::SubArchType)ZigLLVM_ARMSubArch_v4t == Triple::ARMSubArch_v4t, ""); |
| | 987 | static_assert((Triple::SubArchType)ZigLLVM_KalimbaSubArch_v3 == Triple::KalimbaSubArch_v3, ""); |
| | 988 | static_assert((Triple::SubArchType)ZigLLVM_KalimbaSubArch_v4 == Triple::KalimbaSubArch_v4, ""); |
| | 989 | static_assert((Triple::SubArchType)ZigLLVM_KalimbaSubArch_v5 == Triple::KalimbaSubArch_v5, ""); |
| | 990 | |
| | 991 | static_assert((Triple::VendorType)ZigLLVM_UnknownVendor == Triple::UnknownVendor, ""); |
| | 992 | static_assert((Triple::VendorType)ZigLLVM_Apple == Triple::Apple, ""); |
| | 993 | static_assert((Triple::VendorType)ZigLLVM_PC == Triple::PC, ""); |
| | 994 | static_assert((Triple::VendorType)ZigLLVM_SCEI == Triple::SCEI, ""); |
| | 995 | static_assert((Triple::VendorType)ZigLLVM_BGP == Triple::BGP, ""); |
| | 996 | static_assert((Triple::VendorType)ZigLLVM_BGQ == Triple::BGQ, ""); |
| | 997 | static_assert((Triple::VendorType)ZigLLVM_Freescale == Triple::Freescale, ""); |
| | 998 | static_assert((Triple::VendorType)ZigLLVM_IBM == Triple::IBM, ""); |
| | 999 | static_assert((Triple::VendorType)ZigLLVM_ImaginationTechnologies == Triple::ImaginationTechnologies, ""); |
| | 1000 | static_assert((Triple::VendorType)ZigLLVM_MipsTechnologies == Triple::MipsTechnologies, ""); |
| | 1001 | static_assert((Triple::VendorType)ZigLLVM_NVIDIA == Triple::NVIDIA, ""); |
| | 1002 | static_assert((Triple::VendorType)ZigLLVM_CSR == Triple::CSR, ""); |
| | 1003 | static_assert((Triple::VendorType)ZigLLVM_Myriad == Triple::Myriad, ""); |
| | 1004 | static_assert((Triple::VendorType)ZigLLVM_AMD == Triple::AMD, ""); |
| | 1005 | static_assert((Triple::VendorType)ZigLLVM_Mesa == Triple::Mesa, ""); |
| | 1006 | static_assert((Triple::VendorType)ZigLLVM_SUSE == Triple::SUSE, ""); |
| | 1007 | static_assert((Triple::VendorType)ZigLLVM_OpenEmbedded == Triple::OpenEmbedded, ""); |
| | 1008 | // Uncomment this when testing LLVM 8.0.0 |
| | 1009 | //static_assert((Triple::VendorType)ZigLLVM_LastVendorType == Triple::LastVendorType, ""); |
| | 1010 | |
| | 1011 | static_assert((Triple::OSType)ZigLLVM_UnknownOS == Triple::UnknownOS, ""); |
| | 1012 | static_assert((Triple::OSType)ZigLLVM_Ananas == Triple::Ananas, ""); |
| | 1013 | static_assert((Triple::OSType)ZigLLVM_CloudABI == Triple::CloudABI, ""); |
| | 1014 | static_assert((Triple::OSType)ZigLLVM_Darwin == Triple::Darwin, ""); |
| | 1015 | static_assert((Triple::OSType)ZigLLVM_DragonFly == Triple::DragonFly, ""); |
| | 1016 | static_assert((Triple::OSType)ZigLLVM_FreeBSD == Triple::FreeBSD, ""); |
| | 1017 | static_assert((Triple::OSType)ZigLLVM_Fuchsia == Triple::Fuchsia, ""); |
| | 1018 | static_assert((Triple::OSType)ZigLLVM_IOS == Triple::IOS, ""); |
| | 1019 | static_assert((Triple::OSType)ZigLLVM_KFreeBSD == Triple::KFreeBSD, ""); |
| | 1020 | static_assert((Triple::OSType)ZigLLVM_Linux == Triple::Linux, ""); |
| | 1021 | static_assert((Triple::OSType)ZigLLVM_Lv2 == Triple::Lv2, ""); |
| | 1022 | static_assert((Triple::OSType)ZigLLVM_MacOSX == Triple::MacOSX, ""); |
| | 1023 | static_assert((Triple::OSType)ZigLLVM_NetBSD == Triple::NetBSD, ""); |
| | 1024 | static_assert((Triple::OSType)ZigLLVM_OpenBSD == Triple::OpenBSD, ""); |
| | 1025 | static_assert((Triple::OSType)ZigLLVM_Solaris == Triple::Solaris, ""); |
| | 1026 | static_assert((Triple::OSType)ZigLLVM_Win32 == Triple::Win32, ""); |
| | 1027 | static_assert((Triple::OSType)ZigLLVM_Haiku == Triple::Haiku, ""); |
| | 1028 | static_assert((Triple::OSType)ZigLLVM_Minix == Triple::Minix, ""); |
| | 1029 | static_assert((Triple::OSType)ZigLLVM_RTEMS == Triple::RTEMS, ""); |
| | 1030 | static_assert((Triple::OSType)ZigLLVM_NaCl == Triple::NaCl, ""); |
| | 1031 | static_assert((Triple::OSType)ZigLLVM_CNK == Triple::CNK, ""); |
| | 1032 | static_assert((Triple::OSType)ZigLLVM_AIX == Triple::AIX, ""); |
| | 1033 | static_assert((Triple::OSType)ZigLLVM_CUDA == Triple::CUDA, ""); |
| | 1034 | static_assert((Triple::OSType)ZigLLVM_NVCL == Triple::NVCL, ""); |
| | 1035 | static_assert((Triple::OSType)ZigLLVM_AMDHSA == Triple::AMDHSA, ""); |
| | 1036 | static_assert((Triple::OSType)ZigLLVM_PS4 == Triple::PS4, ""); |
| | 1037 | static_assert((Triple::OSType)ZigLLVM_ELFIAMCU == Triple::ELFIAMCU, ""); |
| | 1038 | static_assert((Triple::OSType)ZigLLVM_TvOS == Triple::TvOS, ""); |
| | 1039 | static_assert((Triple::OSType)ZigLLVM_WatchOS == Triple::WatchOS, ""); |
| | 1040 | static_assert((Triple::OSType)ZigLLVM_Mesa3D == Triple::Mesa3D, ""); |
| | 1041 | static_assert((Triple::OSType)ZigLLVM_Contiki == Triple::Contiki, ""); |
| | 1042 | static_assert((Triple::OSType)ZigLLVM_AMDPAL == Triple::AMDPAL, ""); |
| | 1043 | // Uncomment this when testing LLVM 8.0.0 |
| | 1044 | //static_assert((Triple::OSType)ZigLLVM_LastOSType == Triple::LastOSType, ""); |
| | 1045 | |
| | 1046 | static_assert((Triple::EnvironmentType)ZigLLVM_UnknownEnvironment == Triple::UnknownEnvironment, ""); |
| | 1047 | static_assert((Triple::EnvironmentType)ZigLLVM_GNU == Triple::GNU, ""); |
| | 1048 | static_assert((Triple::EnvironmentType)ZigLLVM_GNUABIN32 == Triple::GNUABIN32, ""); |
| | 1049 | static_assert((Triple::EnvironmentType)ZigLLVM_GNUABI64 == Triple::GNUABI64, ""); |
| | 1050 | static_assert((Triple::EnvironmentType)ZigLLVM_GNUEABI == Triple::GNUEABI, ""); |
| | 1051 | static_assert((Triple::EnvironmentType)ZigLLVM_GNUEABIHF == Triple::GNUEABIHF, ""); |
| | 1052 | static_assert((Triple::EnvironmentType)ZigLLVM_GNUX32 == Triple::GNUX32, ""); |
| | 1053 | static_assert((Triple::EnvironmentType)ZigLLVM_CODE16 == Triple::CODE16, ""); |
| | 1054 | static_assert((Triple::EnvironmentType)ZigLLVM_EABI == Triple::EABI, ""); |
| | 1055 | static_assert((Triple::EnvironmentType)ZigLLVM_EABIHF == Triple::EABIHF, ""); |
| | 1056 | static_assert((Triple::EnvironmentType)ZigLLVM_Android == Triple::Android, ""); |
| | 1057 | static_assert((Triple::EnvironmentType)ZigLLVM_Musl == Triple::Musl, ""); |
| | 1058 | static_assert((Triple::EnvironmentType)ZigLLVM_MuslEABI == Triple::MuslEABI, ""); |
| | 1059 | static_assert((Triple::EnvironmentType)ZigLLVM_MuslEABIHF == Triple::MuslEABIHF, ""); |
| | 1060 | static_assert((Triple::EnvironmentType)ZigLLVM_MSVC == Triple::MSVC, ""); |
| | 1061 | static_assert((Triple::EnvironmentType)ZigLLVM_Itanium == Triple::Itanium, ""); |
| | 1062 | static_assert((Triple::EnvironmentType)ZigLLVM_Cygnus == Triple::Cygnus, ""); |
| | 1063 | static_assert((Triple::EnvironmentType)ZigLLVM_CoreCLR == Triple::CoreCLR, ""); |
| | 1064 | static_assert((Triple::EnvironmentType)ZigLLVM_Simulator == Triple::Simulator, ""); |
| | 1065 | // Uncomment this when testing LLVM 8.0.0 |
| | 1066 | //static_assert((Triple::EnvironmentType)ZigLLVM_LastEnvironmentType == Triple::LastEnvironmentType, ""); |
| | 1067 | |
| | 1068 | static_assert((Triple::ObjectFormatType)ZigLLVM_UnknownObjectFormat == Triple::UnknownObjectFormat, ""); |
| | 1069 | static_assert((Triple::ObjectFormatType)ZigLLVM_COFF == Triple::COFF, ""); |
| | 1070 | static_assert((Triple::ObjectFormatType)ZigLLVM_ELF == Triple::ELF, ""); |
| | 1071 | static_assert((Triple::ObjectFormatType)ZigLLVM_MachO == Triple::MachO, ""); |
| | 1072 | static_assert((Triple::ObjectFormatType)ZigLLVM_Wasm == Triple::Wasm, ""); |