@@ -537,24 +537,18 @@ if( LLVM_NATIVE_ARCH STREQUAL "host" )
537
537
string (REGEX MATCH "^[^-]*" LLVM_NATIVE_ARCH ${LLVM_HOST_TRIPLE} )
538
538
endif ()
539
539
540
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 8 )
541
-
542
540
if (LLVM_NATIVE_ARCH MATCHES "i[2-6]86" )
543
541
set (LLVM_NATIVE_ARCH X86 )
544
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
545
542
elseif (LLVM_NATIVE_ARCH STREQUAL "x86" )
546
543
set (LLVM_NATIVE_ARCH X86 )
547
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
548
544
elseif (LLVM_NATIVE_ARCH STREQUAL "amd64" )
549
545
set (LLVM_NATIVE_ARCH X86 )
550
546
elseif (LLVM_NATIVE_ARCH STREQUAL "x86_64" )
551
547
set (LLVM_NATIVE_ARCH X86 )
552
548
elseif (LLVM_NATIVE_ARCH MATCHES "sparc" )
553
549
set (LLVM_NATIVE_ARCH Sparc )
554
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
555
550
elseif (LLVM_NATIVE_ARCH MATCHES "powerpc" )
556
551
set (LLVM_NATIVE_ARCH PowerPC )
557
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
558
552
elseif (LLVM_NATIVE_ARCH MATCHES "ppc64le" )
559
553
set (LLVM_NATIVE_ARCH PowerPC )
560
554
elseif (LLVM_NATIVE_ARCH MATCHES "aarch64" )
@@ -563,40 +557,30 @@ elseif (LLVM_NATIVE_ARCH MATCHES "arm64")
563
557
set (LLVM_NATIVE_ARCH AArch64 )
564
558
elseif (LLVM_NATIVE_ARCH MATCHES "arm" )
565
559
set (LLVM_NATIVE_ARCH ARM )
566
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
567
560
elseif (LLVM_NATIVE_ARCH MATCHES "avr" )
568
561
set (LLVM_NATIVE_ARCH AVR )
569
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 2 )
570
562
elseif (LLVM_NATIVE_ARCH MATCHES "mips" )
571
563
set (LLVM_NATIVE_ARCH Mips )
572
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
573
564
elseif (LLVM_NATIVE_ARCH MATCHES "xcore" )
574
565
set (LLVM_NATIVE_ARCH XCore )
575
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
576
566
elseif (LLVM_NATIVE_ARCH MATCHES "msp430" )
577
567
set (LLVM_NATIVE_ARCH MSP430 )
578
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 2 )
579
568
elseif (LLVM_NATIVE_ARCH MATCHES "hexagon" )
580
569
set (LLVM_NATIVE_ARCH Hexagon )
581
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
582
570
elseif (LLVM_NATIVE_ARCH MATCHES "s390x" )
583
571
set (LLVM_NATIVE_ARCH SystemZ )
584
572
elseif (LLVM_NATIVE_ARCH MATCHES "wasm32" )
585
573
set (LLVM_NATIVE_ARCH WebAssembly )
586
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
587
574
elseif (LLVM_NATIVE_ARCH MATCHES "wasm64" )
588
575
set (LLVM_NATIVE_ARCH WebAssembly )
589
576
elseif (LLVM_NATIVE_ARCH MATCHES "riscv32" )
590
577
set (LLVM_NATIVE_ARCH RISCV )
591
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
592
578
elseif (LLVM_NATIVE_ARCH MATCHES "riscv64" )
593
579
set (LLVM_NATIVE_ARCH RISCV )
594
580
elseif (LLVM_NATIVE_ARCH STREQUAL "m68k" )
595
581
set (LLVM_NATIVE_ARCH M68k )
596
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
597
582
elseif (LLVM_NATIVE_ARCH MATCHES "loongarch32" )
598
583
set (LLVM_NATIVE_ARCH LoongArch )
599
- set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4 )
600
584
elseif (LLVM_NATIVE_ARCH MATCHES "loongarch64" )
601
585
set (LLVM_NATIVE_ARCH LoongArch )
602
586
else ()
@@ -634,6 +618,21 @@ else ()
634
618
endif ()
635
619
endif ()
636
620
621
+ foreach (i IN ITEMS 8 4 )
622
+ try_compile (SIZEOF_UINTPTR_T_IS_${i}
623
+ SOURCE_FROM_CONTENT
624
+ "test-sizeof-uintptr_t.cpp"
625
+ "#include <cstdint>\n
626
+ static_assert(sizeof(uintptr_t) == ${i} ); int main(){}"
627
+ CXX_STANDARD 17
628
+ LOG_DESCRIPTION "testing sizeof(uintptr_t)" )
629
+
630
+ if (SIZEOF_UINTPTR_T_IS_${i} )
631
+ set (LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T ${i} )
632
+ break ()
633
+ endif ()
634
+ endforeach ()
635
+
637
636
if ( MSVC )
638
637
set (SHLIBEXT ".lib" )
639
638
set (stricmp "_stricmp" )
0 commit comments