āĻāĻ¯āĻŧ āĻŽāĻžāĻ¸ āĻŦāĻŋāĻāĻžāĻļā§āĻ° āĻĒāĻ°, LLVM 13.0 āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ - āĻāĻāĻāĻŋ GCC- āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻā§āĻ˛āĻāĻŋāĻ (āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ°, āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻāĻžāĻ° āĻāĻŦāĻ āĻā§āĻĄ āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ°) āĻ¯āĻž RISC-āĻāĻ° āĻŽāĻ¤ā§ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§ āĻŦāĻŋāĻāĻā§āĻĄā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻāĻāĻ˛āĻ¨ āĻāĻ°ā§ (āĻāĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻšā§-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻžāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ)āĨ¤ āĻā§āĻ¨āĻžāĻ°ā§āĻ āĻāĻ°āĻž āĻ¸āĻŋāĻāĻĄā§āĻā§āĻĄāĻā§ āĻāĻāĻāĻŋ JIT āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ¨āĻžāĻ¯āĻŧ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻā§āĻ˛ā§āĻ¯āĻžāĻ 13.0-āĻ¤ā§ āĻāĻ¨ā§āĻ¨āĻ¤āĻŋ:
- āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻā§āĻāĻ˛ āĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ (āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻāĻā§āĻŦāĻžāĻ°ā§ āĻļā§āĻˇā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻ˛ āĻāĻ°āĻž, āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¨āĻŋāĻā§āĻ āĻāĻ˛ āĻāĻ°ā§ āĻ¤āĻŦā§ āĻāĻāĻāĻŋ āĻā§āĻ˛ āĻ°āĻŋāĻāĻžāĻ°āĻļāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§)āĨ¤ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋāĻ¯ā§āĻā§āĻ¤ āĻā§āĻāĻ˛ āĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ C++-āĻ "[[āĻā§āĻ˛ā§āĻ¯āĻžāĻ::musttail]]" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻŦāĻ C-āĻ¤ā§ "__attribute__((musttail))" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ "āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨" āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻāĻ°āĻ āĻŦāĻžāĻāĻāĻžāĻ¤ā§ āĻāĻāĻāĻŋ āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻ¤ā§ āĻā§āĻĄ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻžāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤
- "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ°" āĻā§āĻˇāĻŖāĻž āĻāĻŦāĻ āĻā§āĻ˛ā§āĻ¯āĻžāĻ āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨āĻā§āĻ˛āĻŋ "[[]]" āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ C++11-āĻļā§āĻ˛ā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
- āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻā§āĻĄā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻ¨ āĻ¤āĻāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ "-āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤-āĻĒāĻ°āĻŋāĻāĻ¯āĻŧāĻāĻžāĻ°ā§" āĻĒāĻ¤āĻžāĻāĻž āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻŦāĻž āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ˛ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°āĻž āĻšāĻ˛ā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ "-Wunused-but-set-parameter" āĻāĻŦāĻ "-Wunused-but-set-variable" āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻŦāĻŋāĻ¯āĻŧā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§ āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻžāĻ°āĻŖā§ āĻā§āĻĄāĻāĻŋ āĻ¯āĻĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻāĻāĻ°āĻŖ āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¤āĻŦā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻžāĻ°āĻŋ āĻāĻ°āĻ¤ā§ "-Wnull-pointer-subtraction" āĻĒāĻ¤āĻžāĻāĻž āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻĄ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ ".su" āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ "-fstack-usage" āĻĒāĻ¤āĻžāĻāĻž āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻžāĻ¤ā§ āĻĢāĻžāĻāĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻā§āĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻĢā§āĻ°ā§āĻŽā§āĻ° āĻāĻāĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
- āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻ ā§āĻ¯āĻžāĻ¨āĻžāĻ˛āĻžāĻāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻāĻāĻāĻĒā§āĻ āĻāĻžāĻāĻĒ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ - "āĻ¸āĻžāĻ°āĻŋāĻĢ-āĻāĻāĻāĻāĻŋāĻāĻŽāĻāĻ˛", āĻ¯āĻž āĻāĻāĻ āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻāĻŋāĻāĻŽāĻāĻ˛ āĻāĻŦāĻ āĻ¸āĻ°āĻŋāĻĢ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻ¤ā§āĻ°āĻŋāĻ° āĻĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ¨āĻ¤ā§āĻ¨ allocClassWithName āĻā§āĻ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ "-āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻ-āĻĄāĻŋāĻ¸āĻĒā§āĻ˛ā§-āĻĒā§āĻ°āĻāĻ¤āĻŋ" āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻ (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 āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ˛ā§āĻĒ āĻā§āĻ°āĻžāĻ¨ā§āĻ¸āĻĢāĻ°āĻŽā§āĻļāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ ("#pragma omp unrol" āĻāĻŦāĻ "#pragma omp āĻāĻžāĻāĻ˛") āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻā§āĻ˛ā§āĻ¯āĻžāĻ-āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋāĻ¤ā§ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§: āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§āĻ° āĻāĻā§ āĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ SpacesInLineCommentPrefix, IndentAccessModifiers, LambdaBodyIndentation āĻāĻŦāĻ PPIndentWidth āĻāĻ¨ā§āĻā§āĻ°āĻŋ, āĻ˛ā§āĻ¯āĻžāĻŽā§āĻŦāĻĄāĻž āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻāĻŦāĻ āĻĒā§āĻ°āĻŋāĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§āĨ¤ āĻšā§āĻĄāĻžāĻ° āĻĢāĻžāĻāĻ˛ (SortIncludes) āĻāĻ° āĻāĻŖāĻ¨āĻž āĻŦāĻžāĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ JSON āĻĢāĻžāĻāĻ˛ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻ āĻāĻļ āĻ˛āĻŋāĻ¨ā§āĻāĻžāĻ° āĻāĻ¨āĻāĻ¨-āĻĒāĻ°āĻŋāĻĒāĻžāĻāĻŋ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§.
LLVM 13.0-āĻ āĻŽā§āĻ˛ āĻāĻĻā§āĻāĻžāĻŦāĻ¨:
- āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻŋāĻ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨-āĻāĻ°āĻŋāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻĄ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ (ROP) āĻā§āĻļāĻ˛āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻļā§āĻˇāĻŖā§āĻ° āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ā§āĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻžāĻ° āĻāĻ¨ā§āĻ¯ CET (āĻāĻāĻ¨ā§āĻĄā§āĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛-āĻĢā§āĻ˛ā§ āĻāĻ¨āĻĢā§āĻ°ā§āĻ¸āĻŽā§āĻ¨ā§āĻ āĻā§āĻāĻ¨ā§āĻ˛āĻāĻŋ) āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ "-ehcontguard" āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻĄāĻŋāĻŦāĻžāĻāĻŋāĻ¨āĻĢā§-āĻā§āĻ¸ā§āĻ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻāĻŋāĻ° āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ āĻā§āĻ°āĻ¸-āĻĒā§āĻ°āĻā§āĻā§āĻ-āĻā§āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻĄāĻŋāĻŦāĻžāĻāĻŋāĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ¨āĻ¯āĻŧ, āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻ ā§āĻ¯āĻžāĻ¸ā§āĻŽā§āĻŦāĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻļāĻ¨ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻš, āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻāĻŋ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§āĨ¤
- AArch64 āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§, āĻ ā§āĻ¯āĻžāĻ¸ā§āĻŽā§āĻŦāĻ˛āĻžāĻ°ā§ Armv9-A RME (Realm Management Extension) āĻāĻŦāĻ SME (Scalable Matrix Extension) āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
- āĻšā§āĻā§āĻ¸āĻžāĻāĻ¨ āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ ISA V68/HVX-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- x86 āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ AMD Zen 3 āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨ā§āĻ¨āĻ¤ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĻā§āĨ¤
- AMDGPU āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ GFX1013 RDNA2 APU-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- Libc++ C++20 āĻāĻŦāĻ C++2b āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄā§āĻ° āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻāĻ˛ā§āĻā§, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ°āĻ¯āĻŧā§āĻā§ âāĻ§āĻžāĻ°āĻŖāĻžâ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻ¸āĻŽāĻžāĻĒā§āĻ¤āĻŋāĨ¤ MinGW-āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻāĻāĻ¨ā§āĻĄā§āĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ std::filesystem-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻšā§āĻĄāĻžāĻ° āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ , āĻāĻŦāĻ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ¸āĻš āĻšā§āĻĄāĻžāĻ° āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻ¨āĻŋāĻˇā§āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻ¤ā§ āĻŦāĻŋāĻ˛ā§āĻĄ āĻŦāĻŋāĻāĻ˛ā§āĻĒ LIBCXX_ENABLE_INCOMPLETE_FEATURES āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
- āĻāĻ˛āĻāĻ˛āĻĄāĻŋ āĻ˛āĻŋāĻā§āĻāĻžāĻ°ā§āĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻŦāĻŋāĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ Aarch64 āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŦāĻ Mach-O āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻāĻŽāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻāĻ¨āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋāĻā§ āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤ LLD āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ Glibc āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻ¨ā§āĻ¨āĻ¤āĻŋ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤āĨ¤
- llvm-mca (āĻŽā§āĻļāĻŋāĻ¨ āĻā§āĻĄ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻ) āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋ āĻāĻŽāĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°ā§āĻā§ āĻ¯ā§āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°ā§ (āĻāĻ¨-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻ¸ā§āĻĒāĻžāĻ°āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ° āĻĒāĻžāĻāĻĒāĻ˛āĻžāĻāĻ¨), āĻ¯ā§āĻŽāĻ¨ ARM Cortex-A55āĨ¤
- AArch64 āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ LLDB āĻĄāĻŋāĻŦāĻžāĻāĻžāĻ° āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻĒā§āĻ°āĻŽāĻžāĻŖā§āĻāĻ°āĻŖ, MTE (MemTag, āĻŽā§āĻŽāĻ°āĻŋ āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨) āĻāĻŦāĻ SVE āĻ°ā§āĻāĻŋāĻ¸ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯ā§āĻ āĻāĻ°āĻž āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŽā§āĻŽāĻ°āĻŋ āĻŦāĻ°āĻžāĻĻā§āĻĻāĻāĻ°āĻŖ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§ āĻā§āĻ¯āĻžāĻ āĻŦāĻžāĻāĻ§āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻŽā§āĻŽāĻ°āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ āĻ¸āĻāĻāĻ āĻŋāĻ¤ āĻāĻ°ā§, āĻ¯āĻž āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸āĻ āĻŋāĻ āĻā§āĻ¯āĻžāĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤
- LLDB āĻĄāĻŋāĻŦāĻžāĻāĻžāĻ° āĻāĻŦāĻ Fortran āĻāĻžāĻˇāĻžāĻ° āĻĢā§āĻ°āĻ¨ā§āĻāĻāĻ¨ā§āĻĄ - āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§āĻ°āĻŋ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻ ā§āĻ¯āĻžāĻ¸ā§āĻŽā§āĻŦāĻ˛āĻŋāĻ¤ā§ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ¤ā§āĻ¸: opennet.ru