αααααΆααααΈααααααααααΆααα½αααααααΆαα’αα·αααααα ααΆαα ααααααΆααααααα LLVM 13.0 ααααΌαααΆααααα αΆα - αααα ααα§ααααααααααααΌαααααΆααΉα GCC (α’αααα ααααα αααααα·ααΈαααααΎαααααα·αααααΆα αα·ααααΆαααΈααααααΎαααΌα) αααα ααααααααααα·ααΈαα ααΆαααΈαααΌαααααα·ααααααααααΆαααααΆααα·αααα·αααΌα RISC (αααΆαααΈααα·αααα·αααααα·αααΆααααααΆα αααααααααααααΎαααααα·αααααΆααα α»ααααα·α) α ααΌααααααααααΆααααααΆααααααΎαα’αΆα ααααΌαααΆαααααααααααααααΎαααααα·ααΈα ααααα JIT αα ααΆααΆαααααΆααααααααΆαααΈααααααααΆαααα αααααααΎαααΆααααααα·ααΈα
ααΆααααααα’αα αααα»α Clang 13.0α
- ααΆαα’αα»ααααααΆαααΆαααααααααΆααααΆαα α ααααα»ααααααΆαααΆαααΆααΆ (α α ααααααααΆααααα α α»ααααα αααααα»αααΆα αααααΎαααΆαα α α‘αΎααα·αααααα»α ααααα·αααΎααααααααΆαααα α αααα½αα―α)α ααΆαααΆαααααααααΆααααΆαα α ααααα»ααααααααΌαααΆαααΆααΆααααΌαααΆααααααααααα»ααααααα "[[clang::musttail]]" αα αααα»α C ++ αα·α "__attribute__((musttail))" αα αααα»α C αααααααΎαααα»αααα ααααΈαααααααΆααα "αααα‘αα" α αα»αααΆααααα’αα»ααααΆαα±ααα’αααα’αα»ααααααΆααααααΎαααααα·αααααΆααααααΆαααΆαααααααΆαααΌααα αααα»αααααααααα ααΎααααΈαααααααΆαααααΎααααΆαααααα
- "ααΆαααααΎααααΆαα" ααα ααααΈαααααΆα αα·αααααααααααα clang αααααααΆαααΆαααααααααΆααααΆαααααααα»ααααααααα ααΆααααα C++ 11 αααααααΎαααααα "[[]]" α
- ααΆαααααααααα "-Wreserved-identifier" ααΎααααΈαααα αΆαααΆααααααΆααα αααα’ααααααααΆααα’ααααααααΆααααααΆαααααα»ααα»ααα αααα»ααααααΌαα’αααααααΎααααΆααα
- ααΆαααααααααα "-Wunused-but-set-parameter" αα·α "-Wunused-but-set-variable" ααΎααααΈαααα αΆαααΆααααααΆα ααααα·αααΎαααΆαααΆαααααα α¬α’αααααααΌαααΆαααααα ααα»αααααα·αααααΌαααΆαααααΎα
- ααΆαααααααααα "-Wnull-pointer-subtraction" ααΎααααΈα ααααΆααααααΆα ααααα·αααΎααΌαα’αΆα ααααΆαα₯αα·ααΆααααααα·αααΆαααααααααααΆαααααΆαααααΎααααΆααααααα·α ααααα αααα»αααααα·ααααα·ααΆαααα
- ααΆαααααααααα "-fstack-usage" ααΎααααΈαααααΎααααααΆααα―αααΆαααΌαααΈαα½αα α―αααΆα ".su" αααααααααααΆαααααααΆαα’αααΈααα αααααα»αααααααααΆαααα»αααΆαααΈαα½αααααααΆαααααααααα»αα―αααΆαααααααα»αααααΎαααΆαα
- ααααααααααααααααΈαα½αααααΌαααΆααααααααα α§ααααααα·ααΆααα·αα·αααα - "sarif-html" αααααΆααα αααααΆααααααΎααααΆαααΆααααααα»ααααααααΆαααααΆαααα»ααααααα HTML αα·α Sarif α ααΆαααααααααΆααααα½ααα·αα·ααα allocClassWithName ααααΈα αα ααααααααΆαααααααΎα "-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β ααααΌαααΆαααααααα
- ααΆαααΆαααααααααΆααααΆαααααΆαα’αααΈααΆααααααααααααα·ααα»α (β#pragma omp unrolβ αα·α β#pragma omp tileβ) αααααΆαααααααα αααα»αααΆααααααΆαααααα OpenMP 5.1 ααααΌαααΆαα’αα»ααααα
- ααΆααααααααααααΎααα α§αααααααααΎααααΆαααααααα clangα SpacesInLineCommentPrefix ααΎααααΈαααααα ααα½αααααααΆαα»αααα·ααααα IndentAccessModifiers LambdaBodyIndentation αα·α PPIndentWidth ααΎααααΈαααααααααααΆααααααΉαααΆαα» αααααα lambda αα·αααΆαααααΆααα»αααααΎαααΆαα ααααααΆαβαααααΆααβααΆαβααααααβααΆαβααΆααβαααβααβα―αααΆαβααααααΆ (SortIncludes) ααααΌαβααΆαβαααααΈαα ααΆαααααααααΆαααΆαααααααααΆααααΆαααααΎαααααααααΆαα―αααΆα JSON α
- αααααααααααΆααααα½ααα·αα·αααααααΈααααΌαααΆααααααααα linter clang-tidy α
ααΆαα αααααααα·αααααΆααααα αααα»α LLVM 13.0α
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«-ehcontguardΒ» Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ CET (Windows Control-flow Enforcement Technology) Π΄Π»Ρ Π·Π°ΡΠΈΡΡ Π½Π° ΡΡΠ°ΠΏΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ ΠΎΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠΎΠ², ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈΡΠΌΠΎΠ² Π²ΠΎΠ·Π²ΡΠ°ΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ROP, Return-Oriented Programming).
- αααααααααααααααΆααααα α»αααααΌαααΆαααααΌααααααααΆααΆαααααΎααααααααααααααα α αΎαααααΌαααΆααα ααΆα‘αΎαααΎααααΈααΆααααααααΆαααΆαα»ααΈαααααααααααα αα·ααααααα ααααααααααΆαααααΆααααα α»ααααααα
- αααααααααα½αααααα»αααααΆαααααααΆαααΆαααααααααΆααααΆααααΆαααΆαα ααα αΆαααΆα αααΎα α§ααΆα ααα αα½αααΆαα½αα§αααααααααΎααααΆαα αα·ααα½ααααααΆαα½ααααααΆααααααααΆααα’αααα’αα·ααααααα
- αα αααα»ααααααααΆαααααααααααΆααααααΆαααααααα AArch64 ααΆαααΆαααααααααΆααααααααααααα Armv9-A RME (Realm Management Extension) αα·α SME (Scalable Matrix Extension) ααααΌαααΆαα’αα»αααααα αααα»αα§αααααααα‘αΎαα
- ααΆαααΆαααααααααΆαα ISA V68/HVX ααααΌαααΆααααααααα αααααααΆαααααααααααΆααααααΆαααααααα Hexagon α
- αααααααΆαααααα x86 ααΆαααααΎα±αααααααΎαα‘αΎαααΌαααΆαααΆαααααααααΆααααααααααααααΎαααΆα AMD Zen 3 α
- ααΆαααααααααΆαααΆαααααααααΆαα GFX1013 RDNA2 APU αα αααααααΆαααααα AMDGPU α
- Π Libc++ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½ΠΎΠ²ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ² C++20 ΠΈ C++2b, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Β«conceptsΒ». ΠΠ»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Windows Π½Π° Π±Π°Π·Π΅ MinGW Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° std::filesystem. Π Π°Π·Π΄Π΅Π»Π΅Π½Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ <algorithm>, <iterator> ΠΈ <utility>. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ±ΠΎΡΠΎΡΠ½Π°Ρ ΠΎΠΏΡΠΈΡ LIBCXX_ENABLE_INCOMPLETE_FEATURES Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡΡ.
- αααααααΆααααα LLD linker ααααΌαααΆααααααΈα ααααααα»ααααααΆαααΆαααααααααΆααααααΎαααΆα Big-endian Aarch64 ααααΌαααΆαα’αα»αααα α αΎααααααααΆαααααα Mach-O ααααΌαααΆαααΆααααα αααααααα’αα»ααααΆαα±ααααααΆαααααααα·ααΈααααααΆα αα½ααααα αΌαααΆααααααα’αααααααΌαααΆαααΎααααΈααααΆαα Glibc αααααααΎ LLD α
- α§αααααααααΎααααΆαα llvm-mca (Machine Code Analyzer) ααΆαααααααααΆαααΆαααααααααΆαα processors αααααααα·ααααα·ααα ααααΈααααΆαααΆαααααΆααααααα (in-order superscalar pipeline) ααΌα ααΆ ARM Cortex-A55 ααΆααΎαα
- αααααα·ααΈααααΆααααα α»α LLDB αααααΆαααααα·ααΆ AArch64 αααααααΌαααΆαααΆαααααααααααααααΆααααΆααααααααααΆααααΆαααααΉαααααΌαααααααααα·α , MTE (MemTag, Memory Tagging Extension) αα·αααΆαα α»αααααα SVE α ααΆαααααααααΆααααααααΆαααα’αα»ααααΆαα±ααα’αααα αααααΆααα ααΉαααααα·ααααα·ααΆααααα ααα’αααα αα αΆαααΈαα½αα αα·ααααα αααΆααα·αα·αααααΎαααααα·α αα αααα αΌαααααΎα’αααα αα αΆα αααααααΌαααααααΆααααΆαα½αααααΆαααααΉαααααΌαα
- αααααα·ααΈααααΆααααα α»α LLDB αα·ααααααααΆααα»ααααααΆααααΆααΆ Fortran - Flang ααααΌαααΆααααααααα αααΆαααααααααααααΈαααααααααΎααααααααααα
ααααα: opennet.ru
