แแฅแแกแแแแแแ แแแแแแแแ แแแแก แจแแแแแ, แฌแแ แแแแแแแแแ แแฅแแ LLVM 15.0 แแ แแแฅแขแแก แแแแแจแแแแ - GCC-แแแ แแแแกแแแแแ แฎแแแกแแฌแงแแแแแก แแแแ แแแ (แแแแแแแแขแแ แแแ, แแแขแแแแแแขแแ แแแ แแ แแแแแก แแแแแ แแขแแ แแแ), แ แแแแแแช แแแ แแแแแก แแ แแแ แแแแแก RISC-แแก แแกแแแแกแ แแแ แขแฃแแแฃแ แ แแแกแขแ แฃแฅแชแแแแแก แจแฃแแแแแฃแ แแแขแแแแจแ (แแแแแแ แแแแแก แแแ แขแฃแแแฃแ แ แแแแฅแแแ แแ แแแแ แแแแแก แแแขแแแแแแชแแแก แกแแกแขแแแ). แแแแแ แแ แแแฃแแ แคแกแแแแแแแแ แจแแแซแแแแ แแแ แแแแฅแแแแก JIT แจแแแแแแแแแแก แแแแแงแแแแแแ แแแแฅแแแแก แแแกแขแ แฃแฅแชแแแแจแ แฃแจแฃแแแแ แแ แแแ แแแแก แจแแกแ แฃแแแแแก แแ แแก.
แซแแ แแแแแ แแแฃแแฏแแแแกแแแแแ Clang 15.0-แจแ:
- x86 แแ แฅแแขแแฅแขแฃแ แแแ แแแคแฃแซแแแแฃแ แกแแกแขแแแแแก แแแแแแขแ แแ แแจแ โ-fzero-call-used-regsโ, แ แแแแแแช แฃแแ แฃแแแแแงแแคแก แคแฃแแฅแชแแแจแ แแแแแงแแแแแฃแแ CPU-แก แงแแแแ แ แแแแกแขแ แแก แแฃแแแแแ แแแแแขแแแ แแแแก แคแฃแแฅแชแแแแแ แแแแขแ แแแแก แแแแ แฃแแแแแแแ. แแก แแแ แแแแขแ แ แกแแจแฃแแแแแแก แแแซแแแแ แแแแชแแแ แคแฃแแฅแชแแแแแกแแแ แแแคแแ แแแชแแแก แแแแแแแแกแแแ แแ แจแแแแชแแ แแ แแแแแแแแก แ แแแแแแแแ, แ แแแแแแแช แจแแกแแคแแ แแกแแ ROP (แแแแ แฃแแแแแแ แแ แแแแขแแ แแแฃแแ แแ แแแ แแแแ แแแแก) แแแฏแแขแแแแก แแกแแจแแแแแแแ แแฅแกแแแแแขแแแจแ แแแแฎแแแแแแ 20%-แแ.
- แแแแฎแแ แชแแแแแ C แแแแแกแแแแก แกแขแ แฃแฅแขแฃแ แแแแก แแแฎแกแแแ แแแแก แแแแแแแกแแแแก แ แแแแแแแแแชแแ, แ แแช แแ แแฃแแแแก แกแขแ แฃแฅแขแฃแ แแแแแแ แแแแแชแแแแแแก แแแแฆแแแแก แแแฌแงแแแแแแแแก แแแแแงแแแแแแก แจแแแแฎแแแแแจแ. แ แแแแแแแแแชแแ แฉแแ แแฃแแแ แแ แแแแแ แแฃแแแ randomize_layout แแ no_randomize_layout แแขแ แแแฃแขแแแแก แแแแแงแแแแแแ, แแ แกแแญแแ แแแแก Seed-แแก แแแงแแแแแแก "-frandomize-layout-seed" แแ "-frandomize-layout-seed-file" แแ แแจแแก แแแแแงแแแแแแ.
- แแแแแขแแแฃแแแ "-fstrict-flex-arrays=" แแ แแจแ ", แ แแแแแแแช แจแแแแซแแแแ แแแแแขแ แแแแ แกแขแ แฃแฅแขแฃแ แแแจแ แแแฅแแแแ แแแกแแแแก แแแแแแแขแแก แกแแแฆแแ แแแ (Flexible Array Members, แแแแฃแกแแแฆแแ แแแ แแแแแก แแแกแแแ แกแขแ แฃแฅแขแฃแ แแก แแแแแก). แ แแแแกแแช แแแงแแแแแฃแแแ 0-แแ (แแแแฃแแแกแฎแแแแ), แกแขแ แฃแฅแขแฃแ แแก แแแแ แแแแแแแขแ แแแกแแแแ แงแแแแแแแแก แแฃแจแแแแแแ แ แแแแ แช แแแฅแแแแ แแแกแแแ, 1 - แแฎแแแแ แแแแแแ [], [0] แแ [1] แแฃแจแแแแแแ แ แแแแ แช แแแฅแแแแ แแแกแแแ, 2 - แแฎแแแแ แแแแแแ. [] แแ [0] แแฃแจแแแแแแ แ แแแแ แช แแแฅแแแแ แแแกแแแ.
- แแแแแขแแแฃแแแ แแฅแกแแแ แแแแแขแฃแแ แแฎแแ แแแญแแ แ C-แแก แแกแแแแกแ แแแแกแแแแก HLSL (High-Level Shader Language), แ แแแแแแช แแแแแแงแแแแแ DirectX-แจแ แฉแ แแแแแแแก แแแกแแฌแแ แแ.
- แแแแแขแแแฃแแแ "-Warray-parameter", แ แแแ แแแแคแ แแฎแแแแก แคแฃแแฅแชแแแแแก แแแแแญแแ แแแแ, แจแแฃแแแแกแแแแแ แแ แแฃแแแแขแแแแก แแแแแแ แแชแแแแแ, แ แแแแแแแช แแแแแแจแแ แแแฃแแแ แคแแฅแกแแ แแแฃแแ แแ แชแแแแแ แกแแแ แซแแก แแแกแแแแแแ.
- แแแฃแแฏแแแแกแแแฃแแ แแแแกแแแแแแแ MSVC-แแแ. แแแแแแขแ แแฎแแ แแแญแแ แ "#pragma แคแฃแแฅแชแแ" (แแแแแแแก แแแแแแแแขแแ แก แแแแแ แแ แแแแก แคแฃแแฅแชแแแก แแแแแซแแฎแแแแก แแแชแแแแ inline แแแคแแ แแแแแแก) แแ "#pragma alloc_text" (แแแแกแแแฆแแ แแแก แกแแฅแชแแแก แกแแฎแแแก แคแฃแแฅแชแแแก แแแแแ) แแแฌแแแแแฃแแ MSVC-แจแ. แแแแแขแแแฃแแแ แแฎแแ แแแญแแ แ MSVC-แแแแกแแแแแ /JMC แแ /JMC แแ แแจแแแแกแแแแก.
- แแฃแจแแแแ แแ แซแแแแแแ แแแแแแแแ C2X แแ C++23 แกแขแแแแแ แขแแแแก แแฎแแ แแแกแแญแแ แแ. C แแแแกแแแแก แแแแแ แแแแแ: noreturn แแขแ แแแฃแขแ, แกแแแแแแซแ แกแแขแงแแแแ false แแ true, _BitInt(N) แขแแแ แแแชแแแฃแแ แแแขแแก แกแแฆแ แแแก แแแแแ แ แแชแฎแแแแแกแแแแก, *_WIDTH แแแแ แแแแ, u8 แแ แแคแแฅแกแ UTF-8 แแแจแแคแ แฃแแ แกแแแแแแแแแแกแแแแก.
C++-แแกแแแแก แแแแแ แแแแแ แจแแแแแแ: แแแแฃแแแก แจแแ แฌแงแแ, แคแฃแแฅแชแแแก แฌแแแ แแแแก ABI แแแแแแชแแ, แแแแฃแแแแจแ แแ แแแแแแแฃแ แ แชแแแแแแแแก แแแฌแแกแ แแแแแฃแแ แแแแแแแฃแ แ แแแแชแแแแแแแชแแ, แแ แแแแแแแแแแแแแแแแแแ แแแแแฅแกแแก แแแแ แแขแแ แแแ, auto(x), แแ แแแแขแแ แแขแฃแ แฃแแ แชแแแแแแแ, goto แแ แแขแแแแขแแแ แคแฃแแฅแชแแแแจแ, แ แแแแแแแช แแแแแชแฎแแแแแฃแแแ constexpr-แแ. , แแแแแแแแแ แแแฅแชแแแแก แแแแแแแแแแ แแแ, แแแแกแแฎแแแ แแแฅแชแแแแก แกแแแแแแแแแ.
- แแแคแแ แแแแแ OpenCL แแ OpenMP แแฎแแ แแแญแแ แแกแแแ แแแแแแจแแ แแแฃแแ แจแแกแแซแแแแแแแแแ. แแแแแขแแแฃแแแ แแฎแแ แแแญแแ แ OpenCL แแแคแแ แแแแแแกแแแแก cl_khr_subgroup_rotate.
- x86 แแ แฅแแขแแฅแขแฃแ แแกแแแแก แแแแแแขแ แแแชแแ แแ แแชแแกแแ แแแจแ แแแฃแชแแแแแแแกแแแ, แ แแแแแแแช แแแแแฌแแแฃแแแ แแแกแขแ แฃแฅแชแแแแแก แกแแแแฃแแแชแแฃแ แ แจแแกแ แฃแแแแแ แฃแแแ แแแ แแแแแฎแขแแแแก แแแแ แแชแแแแแก แจแแแแแ. แแ แแแแแแ แฌแแ แแแแฅแแแแแ แแแกแขแ แฃแฅแชแแแแแก แฌแแแแกแฌแแ แ แแแแฃแจแแแแแแก แแแแ แแแฎแกแแแ แแแแจแ แแแแจแขแแแแแก แแแกแขแ แฃแฅแชแแแก แจแแแแแ (SLS, Straight Line Speculation). แแแชแแแก แฉแแกแแ แแแแแ แจแแแแแแแแแแแฃแแแ แแแ แแแแขแ โ-mharden-sls=[none|all|return|indirect-jmp]โ.
- แแแแขแคแแ แแแแแกแแแแก, แ แแแแแแแช แแฎแแ แก แฃแญแแ แแ SSE2 แแแคแแ แแแแแแก, แแแแแขแแแฃแแแ _Float16 แขแแแ, แ แแแแแแช แแแฃแแแ แแแฃแแแ float แขแแแแก แแแแแงแแแแแแ AVX512-FP16 แแแกแขแ แฃแฅแชแแแแแก แแฎแแ แแแญแแ แแก แแ แแ แกแแแแแแก แจแแแแฎแแแแแจแ.
- แแแแแขแแแฃแแแ "-m[no-]rdpru" แแ แแจแ RDPRU แแแกแขแ แฃแฅแชแแแก แแแแแงแแแแแแก แแแกแแแแแขแ แแแแแแแ, แแฎแแ แแแญแแ แแแ AMD Zen2 แแ แแชแแกแแ แแแแ แแแฌแงแแแฃแแ.
- แแแแแขแแแฃแแแ "-mfunction-return=thunk-extern" แแ แแจแ RETBLEED แแแฃแชแแแแแแแกแแแ แแแกแแชแแแแ, แ แแแแแแช แแฃแจแแแแก แแแกแขแ แฃแฅแชแแแแแก แแแแแแแแแแ แแแแก แแแแแขแแแแ, แ แแแแแแช แแแแแ แแชแฎแแแก แแ แแแแ แแแแแ แ แแแแจแขแแแแแแแก แกแแแแฃแแแชแแฃแ แ แจแแกแ แฃแแแแแก แแแฅแแแแแแแก แฉแแ แแแแก.
แซแแ แแแแแ แแแแแแชแแแแ LLVM 15.0-แจแ:
- แแแแแขแแแฃแแแ Cortex-M85 CPU, Armv9-A, Armv9.1-A แแ Armv9.2-A แแ แฅแแขแแฅแขแฃแ แแแแก แแฎแแ แแแญแแ แ, Armv8.1-M PACBTI-M แแแคแแ แแแแแแแ.
- แแแแแแขแ DirectX-แแก แแฅแกแแแ แแแแแขแฃแแ แแแฅแแแแ, แ แแแแแแช แแฎแแ แก แฃแญแแ แก DXIL (DirectX แจแฃแแแแแฃแ แ แแแ) แคแแ แแแขแก, แ แแแแแแช แแแแแแงแแแแแ DirectX แจแแแแ แแแแกแแแแก. Backend แฉแแ แแฃแแแ แแกแแแแแแแก แแ แแก แแแ แแแแขแ แแก โ-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=DirectXโ แแแแแแแแแ.
- Libc++ แแแ แซแแแแแก C++20 แแ C++2b แกแขแแแแแ แขแแแแก แแฎแแแ แคแฃแแฅแชแแแแแก แแแแแ แแแแก, แแแ แจแแ แแก โแคแแ แแแขแแกโ แแแแแแแแแแแก แแแแฎแแ แชแแแแแแแก แแแกแ แฃแแแแแก แแ โแแแแแแแแแแแแกโ แแแแแแแแแแแก แจแแแแแแแแแแแฃแแ แแฅแกแแแ แแแแแขแฃแแ แแแ แกแแแก แแแกแ แฃแแแแแก.
- แแแฃแแฏแแแแกแแแฃแแ backends x86, PowerPC แแ RISC-V แแ แฅแแขแแฅแขแฃแ แแแแกแแแแก.
- LLD แแแแแแ แแกแ แแ LLDB แแแแแ แแแแก แจแแกแแซแแแแแแแแแ แแแฃแแฏแแแแกแแแฃแแแ.
แฌแงแแ แ: opennet.ru