LLVM 13.0 āĻ•āĻŽā§āĻĒāĻžāχāϞāĻžāϰ āϏ⧇āĻŸā§‡āϰ āϰāĻŋāϞāĻŋāϜ

āĻ›āϝāĻŧ āĻŽāĻžāϏ āĻŦāĻŋāĻ•āĻžāĻļ⧇āϰ āĻĒāϰ, 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-āĻ āĻŽā§‚āϞ āωāĻĻā§āĻ­āĻžāĻŦāύ:

  • CET āĻĒā§āϰāϝ⧁āĻ•ā§āϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ "-ehcontguard" āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϟāĻŋ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ (Windows āĻāĻ•ā§āϏ⧇āĻĒāĻļāύ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻŋāĻ‚ āĻĒāĻ°ā§āϝāĻžāϝāĻŧ⧇ āϰāĻŋāϟāĻžāĻ°ā§āύ-āĻ“āϰāĻŋāϝāĻŧ⧇āĻ¨ā§āĻŸā§‡āĻĄ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ (ROP) āĻ•ā§ŒāĻļāϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āύāĻŋāĻ°ā§āĻŽāĻŋāϤ āĻāĻ•ā§āϏāĻĒā§āϞāϝāĻŧ⧇āϟāϗ⧁āϞ⧋āϰ āĻāĻ•ā§āϏāĻŋāĻ•āĻŋāωāĻļāύ āĻĒā§āϰāϤāĻŋāϰ⧋āϧ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻ•āĻ¨ā§āĻŸā§āϰ⧋āϞ-āĻĢā§āϞ⧋ āĻāύāĻĢā§‹āĻ°ā§āϏāĻŽā§‡āĻ¨ā§āϟ āĻŸā§‡āĻ•āύ⧋āϞāϜāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤
  • āĻĄāĻŋāĻŦāĻžāĻ—āĻŋāύāĻĢā§‹-āĻŸā§‡āĻ¸ā§āϟ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒāϟāĻŋāϰ āύāĻžāĻŽ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧇ āĻ•ā§āϰāϏ-āĻĒā§āϰāĻœā§‡āĻ•ā§āϟ-āĻŸā§‡āĻ¸ā§āϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ āĻāĻŦāĻ‚ āĻāϟāĻŋ āĻĄāĻŋāĻŦāĻžāĻ—āĻŋāĻ‚ āϤāĻĨā§āϝ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āύāϝāĻŧ, āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āύ āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ⧇āϰ āωāĻĒāĻžāĻĻāĻžāύ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĄāĻŋāϜāĻžāχāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤
  • āĻ…ā§āϝāĻžāϏ⧇āĻŽā§āĻŦāϞāĻŋ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽāϟāĻŋ āĻŦ⧇āĻļ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āĻĄāĻŋāĻ¸ā§āĻŸā§āϰāĻŋāĻŦāĻŋāωāĻļāύ āύāĻŋāĻ°ā§āĻŽāĻžāϪ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻšāĻžāϝāĻŧāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇, āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāĻ•āϟāĻŋ āχāωāϟāĻŋāϞāĻŋāϟāĻŋ āϏāĻš, āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āϝāϟāĻŋ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āϜāĻ¨ā§āϝ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇āĨ¤
  • 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 āĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄā§‡āϰ āύāϤ⧁āύ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞ⧋ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻ•āϰ⧇ āϚāϞ⧇āϛ⧇, āϝāĻžāϰ āĻŽāĻ§ā§āϝ⧇ 'concepts' āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϰ āĻ•āĻžāϜ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻ•āϰāĻžāĻ“ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤāĨ¤ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡āϰ āϜāĻ¨ā§āϝ Windows 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

DDoS āϏ⧁āϰāĻ•ā§āώāĻž, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ āϏāĻš āϏāĻžāχāϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ đŸ”Ĩ DDoS āϏ⧁āϰāĻ•ā§āώāĻž āϏāĻš āύāĻŋāĻ°ā§āĻ­āϰāϝ⧋āĻ—ā§āϝ āĻ“āϝāĻŧ⧇āĻŦāϏāĻžāχāϟ āĻšā§‹āĻ¸ā§āϟāĻŋāĻ‚ āĻ•āĻŋāύ⧁āύ, VPS VDS āϏāĻžāĻ°ā§āĻ­āĻžāϰ | ProHoster