ื ืึธื ืืขืงืก ืืืฉืื ืคืื ืึทื ืืืืืงืืื ื, ืื ืืขืืืื ื ืคืื ืื LLVM 13.0 ืคึผืจืืืขืงื ืืื ืืขืืืขื ืืขืจืืื ืื - ืึท GCC-ืงืึทืืคึผืึทืืึทืืึทื ืืึธืึธืืงืื (ืงืึทืืคึผืืืืขืจื, ืึธืคึผืืืืืืขืจืก ืืื ืงืึธื ืืขื ืขืจืึทืืึธืจืก) ืืืึธืก ืงืึทืืคึผืืืื ืืืืื ืืื ืื ืืขืจืืืืืื ืืืืงืึธืืข ืคืื โโRISC-ืืื ืืืืจืืืึทื ืื ืกืืจืึทืงืฉืึทื ื (ืึท ื ืืืขืจืืง-ืืืจืื ืืืืจืืืึทื ืืึทืฉืื ืืื ืึท ืืึทืืื-ืืืจืื ืึทืคึผืืึทืืึทืืืืฉืึทื ืกืืกืืขื). ืื ืืืฉืขื ืขืจืืืืึทื ืคึผืกืขืืืืึธืงืึธืืข ืงืขื ืขื ืืืื ืงืึธื ืืืขืจืืขื ืืื ืึท JIT ืงืึทืืคึผืืืืขืจ ืืื ืืึทืฉืื ืืื ืกืืจืืงืฆืืขืก ืืืืึทื ืืื ืืขืจ ืฆืืื ืคืื ืืืจืืคืืจืื ื ืคืื ืื ืคึผืจืึธืืจืึทื.
ืืืคึผืจืืืืืึทื ืฅ ืืื Clang 13.0:
- ืืืคึผืืึทืืขื ืึทื ืฉืืืฆื ืคึฟืึทืจ ืืขืจืึทื ืืื ืขืง ืจืืคื (ืคืึทื ืึท ืกืืืจืืืื ืข ืืื ืื ืกืืฃ ืคืื ืึท ืคึฟืื ืงืฆืืข, ืคืึธืจืืื ื ืึท ืขืง ืจืขืงืืจืกืืึธื ืืืื ืื ืกืืืจืืืื ืข ืจืืคื ืืื). ืฉืืืฆื ืคึฟืึทืจ ืืขืจืึทื ืืื ืขืง ืงืึทืืืก ืืื ืฆืืืขืฉืืขืื ืืืจื ืื "[[clang::musttail]]" ืึทืืจืืืืื ืืื C ++ ืืื "__ืึทืืจืืืืึทืืข__((ืืืกืืืืื))" ืืื C, ืืขื ืืฆื ืืื ืึท "ืฆืืจืืงืงืืืขื" ืืขืจืงืืขืจืื ื. ืืขืจ ืฉืืจืื ืึทืืึทืื ืืืจ ืฆื ืื ืกืืจืืืขื ื ืึธืคึผืืืืืืึทืืืึธื ืก ืืืจื ืืืคึผืืืืื ื ืงืึธื ืืื ืึท ืคืืึทื ืืืขืจืึทืืืึธื ืฆื ืฉืคึผืึธืจื ืกืืึทืง ืงืึทื ืกืึทืืฉืึทื.
- "ื ืืฆื" ืืขืงืืขืจืืืฉืึทื ื ืืื ืงืืึทื ื ืืงืกืืขื ืฉืึทื ื ืฆืืฉืืขืื ืฉืืืฆื ืคึฟืึทืจ ืืืคืืื ืื ื C ++ 11-ื ืืกื ืึทืืจืืืืืฅ ื ืืฆื ืื "[[]]" ืคึฟืึธืจืืึทื.
- ืฆืืืขืืขืื ืื "-Wreserved-identifier" ืคืึธื ืฆื ืืืืึทืื ืึท ืืืืจืขื ืื ื ืืืขื ืืืจ ืกืคึผืขืฆืืคืืฆืืจื ืจืขืืขืจืืืืจื ืืืขื ืืืคืืขืจืก ืืื ืืึทื ืืฆืขืจ ืงืึธื.
- ืฆืืืขืืขืื "-Wunused-but-set-parameter" ืืื "-Wunused-but-set-variable" ืคืืึทืืก ืฆื ืืืืึทืื ืึท ืืืืจืขื ืื ื ืืืื ืึท ืคึผืึทืจืึทืืขืืขืจ ืึธืืขืจ ืืืึทืืขืืืืืง ืืื ืืึทืฉืืืื ืึธืืขืจ ื ืืฉื ืืขืืืืื ื.
- ืฆืืืขืืืืื "-Wnull-pointer-subtraction" ืคืึธื ืฆื ืึทืจืืืกืืขืื ืึท ืืืืจืขื ืื ื ืืืื ืื ืงืึธื ืงืขื ืคืึธืจืฉืืขืื ืึทื ืืืคืืื ื ื ืึทืืืจ ืจืขืื ืฆื ืืขืจ ื ืืฆื ืคืื ืึท ื ืึทื ืืืึทืื ืืื ืืืกืขืจ ืึทืคึผืขืจืืืฉืึทื ื.
- ืฆืืืขืืขืื ืื "-fstack-usage" ืคืึธื ืฆื ืืืฉืขื ืขืจืืื ืคึฟืึทืจ ืืขืืขืจ ืงืึธื ืืขืงืข ืึทื ื ืึธื ".ืกื" ืืขืงืข ืืื ืืื ืคึฟืึธืจืืึทืฆืืข ืืืขืื ืื ืืจืืืก ืคืื ืึธื ืืืืื ืจืึธืืขื ืคึฟืึทืจ ืืขืืขืจ ืคึฟืื ืงืฆืืข ืืืคืืื ื ืืื ืืขืจ ืืขืงืข ืคึผืจืึทืกืขืกื.
- ื ื ืืึทืข ืจืขืืืืืึทื ืืืคึผ ืืื ืฆืืืขืืืืื ืฆื ืื ืกืืึทืืืง ืึทื ืึทืืืืขืจ - "sarif-html", ืืืึธืก ืคืืจื ืฆื ืืขืจ ืืืจ ืคืื ืจืืคึผืึธืจืฅ ืกืืืืึทืืืืื ืืึทืกืื ืืื HTML ืืื Sarif ืคึฟืึธืจืืึทืืืจืื ืืขื. ืฆืืืขืืืืื ื ืืึท ืึทืืึธืึธืงืงืืึทืกืกืืืืืื ืึทืืข ืืฉืขืง. ืืืขื ืกืคึผืขืฆืืคืืฆืืจื ืื "-analyzer-display-progress" ืึธืคึผืฆืืข, ืื ืึทื ืึทืืืกืืก ืฆืืื ืคืื ืืขืืขืจ ืคืื ืงืฆืืข ืืื ืืขืืืืื. ืืขืจ ืงืืื ืืืึทืื ืึทื ืึทืืืืขืจ (alpha.cplusplus.SmartPtr) ืืื ืึผืืขื ืืจืืื.
- ืื ืงืืืคึผืึทืืืืึทืืื ืคึฟืึทืจืืื ืื ืืื OpenCL ืฉืืืฆื ืืึธืื ืฉืืื ืืงืกืคึผืึทื ืืื. ืฆืืืขืืขืื ืฉืืืฆื ืคึฟืึทืจ ื ืืึทืข ืืงืกืืขื ืฉืึทื ื cl_khr_integer_dot_product, cl_khr_extended_bit_ops, __cl_clang_bitfields ืืื __cl_clang_non_portable_kernel_param_types. ืื ืืืคึผืืึทืืขื ืืืืฉืึทื ืคืื ืื OpenCL 3.0 ืืึทืฉืจืืึทืืื ื ืืื ืคืืจืืืืื. ืคึฟืึทืจ C, ืื OpenCL 1.2 ืืึทืฉืจืืึทืืื ื ืืื ืืขื ืืฆื ืืืจื ืคืขืืืงืืึทื ืกืืึทืื ืื ืื ืืขืจ ืืืขืจืกืืข ืืื ืืคืืจืืฉ ืืืืกืืขืงืืืื. ืคึฟืึทืจ C ++, ืฉืืืฆื ืคึฟืึทืจ ืืขืงืขืก ืืื ืื ืคืึทืจืืขื ืืขืจืื ื ".clcpp" ืืื ืฆืืืขืืขืื.
- ืกืืคึผืคึผืึธืจื ืคึฟืึทืจ ืฉืืืืฃ ืืจืึทื ืกืคืึธืจืืึทืฆืืข ืืืืจืขืงืืืืื ("#ืคึผืจืึทืืืึท ืึธืืคึผ ืื ืจืึธื" ืืื "#ืคึผืจืึทืืืึท ืึธืืคึผ ืงืึทืื") ืืืคืืื ื ืืื ืื OpenMP 5.1 ืืึทืฉืจืืึทืืื ื ืืื ืืืคึผืืึทืืขื ืึทื.
- ืฆืืืขืืืืื ืึธืคึผืฆืืขืก ืฆื ืื ืงืืึทื ื ืคึฟืึธืจืืึทื ื ืืฆื: SpacesInLineCommentPrefix ืฆื ืืขืคืื ืืจื ืื ื ืืืขืจ ืคืื ืกืคึผืืืกืึทื ืืืืืขืจ ืืึทืืขืจืงืื ืืขื, IndentAccessModifiers, LambdaBodyIndentation ืืื PPIndentWidth ืฆื ืงืึธื ืืจืึธืืืจื ืื ืึทืืืื ืืึทื ื ืคืื ืืืื ืกื, ืืึทืืืืึท ืืืืกืืจืืงื ืืื ืคึผืจืืคึผืจืึทืกืขืกืขืจ ืืืืจืขืงืืืืื. ืื ืคึผืึทืกืึทืืืืึทืืื ืคึฟืึทืจ ืกืึธืจืืื ื ืื ืื ืืืขืจืืืฉืึทื ืคืื ืืขืืขืจ ืืขืงืขืก (ืกืึธืจืืื ืงืืืืขืก) ืืขื ืขื ืืงืกืคึผืึทื ืืื. ืฆืืืขืืืืื ืฉืืืฆื ืคึฟืึทืจ ืคืึธืจืืึทืืืื ื JSON ืืขืงืขืก.
- ื ืืจืืืก ืืืื ืคืื ื ืืึท ืืฉืขืงืก ืืขื ืขื ืฆืืืขืืืืื ืฆื ืื ืืื ืืขืจ ืงืืึทื ื-ืฆืืืืืง.
ืฉืืืกื ืื ืึธืืืืืืฉืึทื ื ืืื LLVM 13.0:
- ืฆืืืขืืขืื ืื "-ehcontguard" ืึธืคึผืฆืืข ืฆื ื ืืฆื CET (Windows Control-flow Enforcement Technology) ืืขืื ืึธืืึธืืืข ืฆื ืืึทืฉืืฆื ืงืขืื ืื ืืืจืืคืืจืื ื ืคืื ืขืงืกืคึผืืืืฅ ืืขืืืื ืืื ืฆืืจืืง-ืึธืจืืขื ืืื ืคึผืจืึธืืจืึทืืืื ื (ROP) ืืขืงื ืืงืก ืืื ืื ืืืกื ืขื ืืึทื ืืืื ื ืืื ืข.
- ืื ืืขืืืืื ืคืึธ-ืคึผืจืืืืจื ืคึผืจืืืขืงื ืืื ืจืื ืืืื ืงืจืืึทื-ืคึผืจืืืขืงื-ืืขืกืืก ืืื ืืื ืืืืืื ื ืฆื ืคึผืจืืืืจื ืงืึทืืคึผืึธืื ืึทื ืฅ ืคืื ืคืึทืจืฉืืืขื ืข ืคึผืจืึทืืืฉืขืงืก, ื ืื ืืืืืืขื ืฆื ืืืืึทืืื ื ืืื ืคึฟืึธืจืืึทืฆืืข.
- ืื ืคึฟืึทืจืืึทืืืื ื ืกืืกืืขื ืืื ืฉืืืฆื ืคึฟืึทืจ ืื ืื ืขืืืขืืข ืืืกืืจืืืืืฉืึทื ื, ืืืฉื, ืืืื ืขืจ ืืื ืืืืืืึทืืื, ืืื ืื ืื ืืขืจืข ืืื ืืืืืจืขืจืื ืคึฟืึทืจ ืืขืืืขืืึธืคึผืขืจืก.
- ืืื ืื ืืึทืงืขื ื ืคึฟืึทืจ ืื AArch64 ืึทืจืงืึทืืขืงืืฉืขืจ, ืฉืืืฆื ืคึฟืึทืจ ืื Armv9-A RME (Realm Management Extension) ืืื SME (Scalable Matrix Extension) ืืงืกืืขื ืฉืึทื ื ืืื ืืืคึผืืึทืืขื ืึทื ืืื ืื ืึทืกืขืืืึทืืืขืจ.
- ืฉืืืฆื ืคึฟืึทืจ ISA V68 / HVX ืืื ืฆืืืขืืขืื ืฆื ืื ืืึทืงืขื ื ืคึฟืึทืจ ืื ืืขืงืกืึทืืึธื ืึทืจืงืึทืืขืงืืฉืขืจ.
- ืื x86 ืืึทืงืขื ื ืืื ืืืคึผืจืืืื ืฉืืืฆื ืคึฟืึทืจ AMD Zen 3 ืคึผืจืึทืกืขืกืขืจื.
- ืฆืืืขืืืืื ืฉืืืฆื ืคึฟืึทืจ GFX1013 RDNA2 APU ืฆื ืื AMDGPU ืืึทืงืขื ื.
- Libc ++ ืืืื ืฆื ืื ืกืืจืืืขื ื ื ืืึท ืคึฟืขืึดืงืืืื ืคืื ืื C ++ 20 ืืื C ++ 2b ืกืืึทื ืืึทืจืืก, ืึทืจืืึทื ืืขืจืขืื ื ืื ืงืึทืืคึผืืืฉืึทื ืคืื ืื "ืงืึทื ืกืขืคึผืฅ" ืืืืืืึธืืขืง. ืฆืืืขืืืืื ืฉืืืฆื ืคึฟืึทืจ std :: ืคืืืขืกืืกืืขื ืคึฟืึทืจ ืื MinGW-ืืืืืจื Windows ืคึผืืึทืืคืึธืจืืข. ืืขืืขืจ ืืขืงืขืก ืืคืืขืฉืืืื , ืืื . ืฆืืืขืืืืื ืืืืขื ืึธืคึผืฆืืข LIBCXX_ENABLE_INCOMPLETE_FEATURES ืฆื ืืืกืืืืึทื ืืขืืขืจ ืืขืงืขืก ืืื ื ืื ืืึธืจ ืืืคึผืืึทืืขื ืึทื ืคืึทื ืืงืฉืึทื ืึทืืืื.
- ืื ืงืืืคึผืึทืืืืึทืืื ืคืื ืื LLD ืืื ืงืขืจ ืืขื ืขื ืืงืกืคึผืึทื ืืื, ืืื ืืืึธืก ืฉืืืฆื ืคึฟืึทืจ ืืื-ืขื ืืืึทื Aarch64 ืคึผืจืึทืกืขืกืขืจื ืืื ืืืคึผืืึทืืขื ืึทื, ืืื ืื Mach-O ืืึทืงืขื ื ืืื ืืขืืจืืื ืฆื ืึท ืฉืืึทื ืืืึธืก ืึทืืึทืื ืคึฟืึทืจืืื ืืื ื ืจืขืืืืขืจ ืืืืื. ืื ืงืืืืขื ืืืคึผืจืืืืืึทื ืฅ ืืืจืฃ ืฆื ืคึฟืึทืจืืื ืืื ื Glibc ื ืืฆื LLD.
- ืื llvm-mca (ืืึทืฉืื ืงืึธื ืึทื ืึทืืืืขืจ) ื ืืฆื ืืื ืฆืืืขืืืืื ืฉืืืฆื ืคึฟืึทืจ ืคึผืจืึทืกืขืกืขืจื ืืืึธืก ืืืกืคืืจื ืื ืกืืจืึทืงืฉืึทื ื ืืื ืกืืจ (ืืื-ืกืืจ ืกืืคึผืขืจืกืงืึทืืขืจ ืจืขืจื - ืืื ืืข), ืึทืืึท ืืื ืื ARM Cortex-A55.
- ืื LLDB ืืืืืืืขืจ ืคึฟืึทืจ ืื AArch64 ืคึผืืึทืืคืึธืจืืข ืืื ืคืื ืฉืืืฆื ืคึฟืึทืจ ืคึผืืื ืืขืจ ืึธืืขื ืืึทืงืืืฉืึทื, MTE (ืืขืืืื, ืืึผืจืื ืืึทืืื ื ืคืึทืจืืขื ืืขืจืื ื) ืืื SVE ืจืขืืืฉืืกืืขืจื. ืฆืืืขืืืืื ืงืึทืืึทื ืื ืืืึธืก ืืึธืื ืืืจ ืฆื ืืื ืื ืืึทืืก ืฆื ืืขืืขืจ ืืืงืึธืจื ืึทืืึทืงืืืฉืึทื ืึธืคึผืขืจืึทืฆืืข ืืื ืึธืจืืึทื ืืืืจื ืึท ืืฉืขืง ืคืื ืื ืืืึทืื ืืืขื ืึทืงืกืขืก ืืืงืึธืจื, ืืืึธืก ืืืื ืืืื ืคืืจืืื ืื ืืื ืื ืจืืืืืง ืงืืืืื.
- ืื LLDB ืืืืืืืขืจ ืืื ืื ืคืจืึธื ืืขื ื ืคึฟืึทืจ ืื ืคืึธืจืืจืึทื ืฉืคึผืจืึทื - ืคืืึทื ื ืืขื ืขื ืืืกืืฃ ืฆื ืื ืืืื ืขืจื ืึทืกืขืืืืื ืืืฉืขื ืขืจืืืืึทื ืืืจื ืื ืคึผืจืืืขืงื.
ืืงืืจ: opennet.ru