αααααΆααααΈααααααααααΆααα½αααααααΆαα’αα·αααααα ααΆαα ααααααΆααααααα LLVM 12.0 ααααΌαααΆααααα αΆα - αααα ααα§ααααααααααααΌαααααΆααΉα GCC (α’αααα ααααα αααααα·ααΈαααααΎαααααα·αααααΆα αα·ααααΆαααΈααααααΎαααΌα) αααα ααααααααααα·ααΈαα ααΆαααΈαααΌαααααα·ααααααααααΆαααααΆααα·αααα·αααΌα RISC (αααΆαααΈααα·αααα·αααααα·αααΆααααααΆα αααααααααααααΎαααααα·αααααΆααα α»ααααα·α) α ααΌααααααααααΆααααααΆααααααΎαα’αΆα ααααΌαααΆαααααααααααααααΎαααααα·ααΈα ααααα JIT αα ααΆααΆαααααΆααααααααΆαααΈααααααααΆαααα αααααααΎαααΆααααααα·ααΈα
ααΆααααααα’αα αααα»α Clang 12.0α
- ααΆαααΆαααααααααΆαααα»ααααααα "αααα" αα·α "αα·ααααα" αααααααΎα‘αΎααααα»ααααααααΆα C ++ 20 ααααΌαααΆαα’αα»αααα αα·αααΎαααααΎαααΆαααΆαααααΆαααΎα αααα’αα»ααααΆαα±ααα’ααααααααΎαααααα·αααααΆαααααΌαααΆαααΌαααααΉαα’αααΈααααΌααΆαααΈααΈααααααΆαααΆααααααΆαααααααααααααααα»αααααΌαααΆαααα (α§ααΆα ααα "[[αααα ]] ααααα·αααΎ (α ααααα > 0) {β)α
- ααΆαααααααααΆαααΆαααααααααΆαα AMD Zen 3 (-march=znver3), Intel Alder Lake (-march=alderlake) αα·α Intel Sapphire Rapids (-march=sapphirerapids) processors α
- ααΆαααααααααΆαααΆαααααααααΆααααα "-march=x86-64-v[234]" ααΎααααΈααααΎαααΎαααααα·αααααΆαααααααα x86-64 (v2 - ααααααααααααααααααααα SSE4.2, SSSE3, POPCNT αα·α CMPXCHG16B; v3 - AVX2 αα·α MOVBE; v4 - AVX-512 ) α
- ααΆαααααααααΆαααΆαααααααααΆαα Arm Cortex-A78C (cortex-a78c), Arm Cortex-R82 (cortex-r82), Arm Neoverse V1 (neoverse-v1), Arm Neoverse N2 (neoverse-n2) αα·αααααααααααααΎαααΆα Fujitsu A64FX (a64fx) α α§ααΆα ααα ααΎααααΈααΎαααΆααααααΎαααααα·αααααΆααααααΆαααααΈααΈααΌ Neoverse-V1 α’αααα’αΆα αααααΆαα β-mcpu=neoverse-v1β α
- αααααΆααααααΆαααααααα AArch64 αααα αααααααααΈ "-moutline-atomics" αα·α "-mno-outline-atomics" ααααΌαααΆααααααα ααΎααααΈααΎα α¬αα·ααα»αααΆααααα½αααααα·ααααα·ααΆαα’αΆααΌα ααΌα ααΆ "__aarch64_cas8_relax" ααΆααΎαα αα»αααΆαααααααααααΎααα αααααααΎαααΆαααΆααΎααΆαααΆαααΆαααα LSE (ααααααααααααααααααααα) α αΎαααααΎααΆαααααΆαα’αααΈααααΎαααΆαα’αΆααΌαα·ααααααΆαααααα α¬αααααααα ααααΎααΆαααααΆα LL/SC (Load-link/store-conditional) αααααΆααααΆαααααΎααααΆαααααα
- ααΆααααααααααααΎα "-fbinutils-version" ααΎααααΈααααΎαααΎαααααααααα αααα»α binutils αααααΆααααΆαααααααΆααΆαα½ααααααααΆααα αΆαα αα·αα₯αα·ααΆααα’αααααα‘αΎαα
- αααααΆααα―αααΆααααα’αΆα ααααα·ααααα·ααΆα ELF αα ααααααααα "-gz" ααααΌαααΆααααααΆαα ααΆααααα αΆααααααααΆαααααΆααααα α»ααααααααΎαααααΆααα zlib ααααΌαααΆαααΎαααΆαααααΆαααΎα (gz=zlib) α ααΆαααααΆααα―αααΆαααααα»αααααααααααΌαα±αα lld α¬ GNU binutils 2.26+ α ααΎααααΈααααΆαααΆαααααααΆααΆαα½αααααα αΆαααα binutils α’αααα’αΆα αααααΆαα "-gz=zlib-gnu" α
- ααααα·α 'ααα' α₯α‘αΌααααααααΌαααΆαααααΎαααΆαααΆαα½αααΉαααΆααααα½ααα·αα·ααα nonnull αα·α dereferenceable(N)α ααΎααααΈαα»ααα»ααααααα nonnnull αα ααααααα’αααααααΌαααΆαααααΎααααα NULL α’αααα’αΆα ααααΎαααααΎα "-fdelete-null-pointer-checks" α
- αα ααΎαααα·ααΆααΈαα»α αααα "-fasynchronous-unwind-tables" ααααΌαααΆαααΎααααααΆααααααΆαααααααα AArch64 αα·α PowerPC ααΎααααΈαααααΎαααΆααΆαααΆαα α ααΌαααααααααα·αααααΎαααΆα ααΌα ααΆαα αααα»α GCC ααΆααΎαα
- αα αααα»α "#pragma clang loop vectorize_width" ααΆααααααααααααααΆααααα»αααΆααααααΆαααααααΎα "ααα" (ααααΆαααΎα) αα·α "α’αΆα ααααΎααΆαααααααΆαααΆα" ααΎααααΈααααΎαααΎααα·ααΈααΆαααααααα·α αααα αααα "α’αΆα ααααΎααΆαααααααΆαααΆα" α―αααΆαααααααααααααα·α ααα ααΊααΆααΆααα·ααα α αΎαα’αΆα ααααΎαα ααΎαααααααΉααααααΆαααααα·α ααααααα’αΆα ααααΎααΆαααααααΆαααΆαα
- ααΆααααααΉαααΆαααΆαααααααααΆαααααα·ααΆααΈαααΌα ααΆααα½αααααα»ααααααααααααααΈαααααΌαααΆααααααΆααααΈαααΌαα ααΎαααααααα Arm64 ααααΌαααΆααααα α αα½αααΆαααααααα·ααΈα ααααα Clang αααααααΆαα LLD αα·ααααααΆααααααααααΎαααΆα compiler-rt α αα ααααααααΎααααααΆαααααα·ααΆααααα MinGW αα αα αα .exe ααααΌαααΆααααααα ααΌααααΈαααα αααα αααααααααααΆαααααααα
- αααααααΆααααααΆααααααΉαααΆαααΆαααααααααΆαα OpenCL, OpenMP αα·α CUDA ααααΌαααΆααααααΈαα ααΆααααααααααααΎα "-cl-std=CL3.0" αα·α "-cl-std=CL1.0" ααΎααααΈααααΎαααΎααααααΎααααΆααααΌαααααΆαα OpenCL 3.0 αα·α OpenCL 1.0 α α§ααααααα·αα·α ααααααααΌαααΆααααααΈαα
- ααΆαααααααααΆαααΆαααααααααΆααααΆαααααΆα HRESET, UINTR αα·α AVXVNNI αααααΆαα’αα»αααααα αααα»αααααααααααααΎαααΆααααααΆαααΌαααααΆαααΎ x86 αα½αα ααα½αα
- αα ααΎαααααααα x86 ααΆαααΆαααααααααΆαααααααΎα "-mtune=" ααααΌαααΆαααΎα " αααααααΎα±ααααΆααααααΎαααααα·αααααΆαααΈααααΌααααΆαααααααααααααΆαααααΎαααΎα ααααα·ααα·αααΈααααααα "-march= "
- α§ααααααα·ααΆααα·αα·ααααααΆαααααΎα±αααααααΎαα‘αΎαααΌαααααΎαααΆααααα»αααΆα POSIX αα½αα ααα½α αα·αααααΎα±αααααααΎαα‘αΎααααΆαααααΆααααΌαααΆααααααααααααααααααα·ααααα·ααΆαααΆααααααααααα ααααααααΆαααααααα·αα·ααααααααΆααΆα αααΎααα αααα»αααΆαααααααααα ααΆααααα½ααα·αα·αααααααΈααααΌαααΆαααααααα fuchia.HandleChecker (αααααα ααα»α ααΆααα αααα»ααα ααΆαααααααα) webkit.UncountedLambdaCapturesChecker webkit αα·α alpha.webkit.UncountedLocalVarsChecker (αα·αααΌαααΈααΆαααΆααααααααΆαααααΎααΆαααΆαα½αααααα·α αα αααα»αααΌααααΆαααΈα WebKit)α
- αα αααα»ααααααααααααααΎαααα»αααα·ααααααα ααΆαααααΎααααΆαααα»αααΆααααααααΆααααααΆαα½α __builtin_bitreverse*, __builtin_rotateleft*, __builtin_rotateright*, _mm_popcnt*, _bit_scan_forward, __bsfd, __bsfq, _bs_rbit, _bs_b, ap, __bswapd, __bswap64, ααααΌαααΆαα’αα»ααααΆαα __bswapq , _castf*, __rol* αα·α __ror* α
- ααΆααααααααααααΎα BitFieldColonSpacing αα α§αααααααααΎααααΆαααααααα clang ααΎααααΈααααΎαααΎααααααΆααα»ααα·αααΆααααααα’ααααααααΆα αα½ααα αα·ααα·αααααααΆαα
- αααΆαααΈααααααΎααααΆαααααααΆαα clangd (Clang Server) αα ααΎαααα·ααΆααΈαα»α ααΆαααΆαααααααααΆαααααΎααααΆααα’αααα αα αΆααααΆαααααΆαααααα»αα’αα‘α»ααααααααα·ααααα·ααΆαααααααααα (ααΆαα α ααΆαααΆαααααααα malloc_trim ααααΌαααΆααααααααΌαααΎααααΈαααα‘αααααααα’αααα αα αΆαα₯ααα·ααααααα ααααααααααααα·ααααα·ααΆα) α
ααΆαα αααααααα·αααααΆααααα αααα»α LLVM 12.0α
- ααΆαααΆαααααααααΆααα§αααααααΆαααα llvm-build αααααααααααα»α Python ααααΌαααΆααααααα α αΎααααα»ααα αα·α αααααααααααΆαααααΌαααΆαααααα»ααα ααααΎααααΆαααααααααα CMake build α
- αα αααα»ααααααααΆαααααααααααΆααααααΆαααααααα AArch64 ααΆαααΆαααααααααΆααααααααααααααα·ααααα·ααΆα Windows ααααΌαααΆααααααα’α ααΆααααααΎααα·αααααα§αααααααα‘αΎαααααΉαααααΌααααααΆααααααααααααΈαααΌααααα ααααΌαααΆαααΆααΆ ααΆααααααΎααα·αααααααα ααΎααΆαα α α ααααααΌαααΆαααααΎα±αααααααΎα (ααα ααααα·ααααααααααααααααΌαααΆαααΆαααααααα ααα½α 60 %) αααααααΆααααα»αααΆααααααΎααα·αααααα unwind αααααααΎ assembler ααααΌαααΆαααααααααΆαααααΆα .seh_*α
- αααααααΆαααααααααααΆααααααΆαααααααα PowerPC ααΆαααΆααααααΎαααααα·αααααΆαααααΈαααααΆααααααα·ααα»α αα·αααΆαααΆαααααααΆααααα»ααα½α ααΆαααΆαααααααααΆααααααΈααααααΆααααααΎαααΆα Power10 ααααααααΆαααΆαααααααααΆααααΆαααααΆα MMA αααααΆααααΆααααα ααααΆααααΈα αα·αααΆαααΆαααααααααΎαα‘αΎααααααΆααααααααααααααα·ααααα·ααΆα AIX α
- αααααααΆαααααα x86 ααααααααΆαααΆαααααααααΆαα AMD Zen 3, Intel Alder Lake αα·α Intel Sapphire Rapids processors ααααΌα ααΆααΆαααααΆαα’αααΈααααΎαααΆα HRESET, UINTR αα·α AVXVNNI α ααΆαααΆαααααααααΆαα MPX (αααααααααααααΆαααΆαα’αααα αα αΆα) αααααΆαααα·αα·αααααααα·α ααΎααααΈααΆααΆααΆαααααααααααΆαα αα αΆααα·αααααΌαααΆαααΆααααααααα (αα αα αααα·ααααΆααααα·αααΈαααΆαααΆααα α αΎαααααΌαααΆαααα ααααΈ GCC αα·α clang αα½α α αΎα)α ααΆαααααααααΆαααΆαααααααα§αααααααα‘αΎααααααΆαααα»ααααα {disp32} αα·α {disp8} αα·ααα αα αα .d32 αα·α .d8 ααΎααααΈαααααααααααα αααααααΎαααΆαα’α»α αααα·α αα·αααΆααααα ααΆααααααααα»αααααααααααΈ "tune-cpu" ααΎααααΈαααααααααααΆαααΆαααααα αΌαααΆααααααΎαααααα·αααααΆαααααΆααααααααααααΆαααΌα α
- ααααααααΈ β-fsanitize=unsigned-shift-baseβ ααααΌαααΆααααααααα α§αααααα αΆαααααα αΆα ααα½αααα (integer sanitizer, β-fsanitize=integerβ) ααΎααααΈααααΎαα ααα½αααΎαααα ααα½ααααααααα·αααΆαα α»αα αααααααΆ αααααΆααααΈααΆαααααΆααααααΌαααααα·α αα ααΆααααααα
- αα αααα»αα§αααααααΆααααααααα (asan, cfi, lsan, msan, tsan, ubsan sanitizer) ααΆαααΆαααααααααΆααααΆαα ααα αΆαααΈαα»α ααΆαα½αααΉααααααΆααα Musl αααααααΆαααααΌαααΆαααααααα
- αααααααΆααααα LLD linker ααααΌαααΆααααααΈαα ααααΎα±αααααααΎαα‘αΎαααΌαααΆαααΆαααααααααΆαααααααα ELF αα½αααΆαααααααΎααααααα "--dependency-file", "-error-handling-script", "-lto-pseudo-probe-for-profiling", "-no-lto-whole-program - ααΆαααΎαααΎα "" ααΆαααΆαααα MinGW αααααΎαα‘αΎαα αααααΆαααααααααααΆα Mach-O (macOS) ααΆαααΆαααααααααΆααααααΆαααααααα arm64, arm, αα·α i386, ααΆααααααΎαααααα·αααααΆααααααααΆααααΆαα (LTO) αα·α stack unwinding αααααΆααααΆααααααααΆαααααΈααΎααααααααΌαααΆαα’αα»ααααα
- Libc ++ α’αα»αααααα»αααΆαααααΈαααααααααΆα C ++ 20 α αΎαααΆαα αΆααααααΎαα’αα·αααααααααααα·αααααααΆααααααΆαα C ++ 2b α ααΆαααααααααΆαααΆαααααααααΆααααΆαααΆααααααΆαα½αααΉαααΆααα·αααΆαααΆααααααΆαααααΎααΌαααααΆααΈααααα (β-DLIBCXX_ENABLE_LOCALIZATION=OFFβ) αα·αα§ααααααααααΆαααααααΎααααα ααααα (β-DLIBCXX_ENABLE_RANDOM_DEVICE=OFFβ) α
ααααα: opennet.ru