āĻāĻ¯āĻŧ āĻŽāĻžāĻ¸ āĻŦāĻŋāĻāĻžāĻļā§āĻ° āĻĒāĻ°, LLVM 15.0 āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ - āĻāĻāĻāĻŋ GCC- āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻā§āĻ˛āĻāĻŋāĻ (āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ°, āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻāĻžāĻ° āĻāĻŦāĻ āĻā§āĻĄ āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ°) āĻ¯āĻž RISC-āĻāĻ° āĻŽāĻ¤ā§ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§ āĻŦāĻŋāĻāĻā§āĻĄā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻāĻāĻ˛āĻ¨ āĻāĻ°ā§ (āĻāĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻšā§-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻžāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ)āĨ¤ āĻā§āĻ¨āĻžāĻ°ā§āĻ āĻāĻ°āĻž āĻ¸āĻŋāĻāĻĄā§āĻā§āĻĄāĻā§ āĻāĻāĻāĻŋ JIT āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ¨āĻžāĻ¯āĻŧ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻā§āĻ˛ā§āĻ¯āĻžāĻ 15.0-āĻ¤ā§ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻ¨ā§āĻ¨āĻ¤āĻŋ:
- x86 āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯, "-fzero-call-used-regs" āĻĒāĻ¤āĻžāĻāĻž āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻĢāĻžāĻāĻļāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ CPU āĻ°ā§āĻāĻŋāĻ¸ā§āĻāĻžāĻ° āĻĢāĻžāĻāĻļāĻ¨ āĻĨā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻāĻ¨āĻžāĻ° āĻāĻā§ āĻļā§āĻ¨ā§āĻ¯ā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻĢāĻžāĻāĻļāĻ¨ āĻĨā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻĢāĻžāĻāĻ¸ āĻĨā§āĻā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻļā§āĻˇāĻŖā§ ROP (āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨-āĻāĻ°āĻŋāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻĄ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ) āĻā§āĻ¯āĻžāĻā§āĻ āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻŦā§āĻ˛āĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧ 20% āĻāĻŽāĻžāĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤
- āĻ¸āĻŋ āĻā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻžāĻ°ā§āĻ° āĻŽā§āĻŽāĻ°āĻŋ āĻĒā§āĻ˛ā§āĻ¸āĻŽā§āĻ¨ā§āĻā§āĻ° āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻā§āĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻžāĻ° āĻļā§āĻˇāĻŖā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻžāĻ āĻžāĻŽā§ āĻĨā§āĻā§ āĻĄā§āĻāĻž āĻ¨āĻŋāĻˇā§āĻāĻžāĻļāĻ¨āĻā§ āĻāĻāĻŋāĻ˛ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§āĨ¤ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ_āĻ˛ā§āĻāĻāĻ āĻāĻŦāĻ āĻ¨ā§_āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ_āĻ˛ā§āĻāĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻā§āĻļāĻ¨ āĻāĻžāĻ˛ā§ āĻāĻŦāĻ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ "-āĻĢā§āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ-āĻ˛ā§āĻāĻāĻ-āĻ¸āĻŋāĻĄ" āĻŦāĻž "-āĻĢā§āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ-āĻ˛ā§āĻāĻāĻ-āĻ¸āĻŋāĻĄ-āĻĢāĻžāĻāĻ˛" āĻĒāĻ¤āĻžāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤
- āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ "-fstrict-flex-arrays=" āĻĒāĻ¤āĻžāĻāĻž, āĻ¯āĻžāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ (āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻ¸āĻĻāĻ¸ā§āĻ¯, āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻļā§āĻˇā§ āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§)āĨ¤ 0 (āĻĄāĻŋāĻĢāĻ˛ā§āĻ) āĻ¤ā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ˛ā§, āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻļā§āĻˇ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻāĻŋ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, 1 - āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŽāĻžāĻĒ [], [0] āĻāĻŦāĻ [1] āĻāĻāĻāĻŋ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, 2 - āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻžāĻ° [] āĻāĻŦāĻ [0] āĻāĻāĻāĻŋ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻŽāĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
- āĻļā§āĻĄāĻžāĻ° āĻ˛ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻžāĻāĻ°ā§āĻā§āĻāĻāĻā§āĻ¸ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ C-āĻŽāĻ¤ā§ āĻāĻžāĻˇāĻž HLSL (āĻšāĻžāĻ-āĻ˛ā§āĻā§āĻ˛ āĻļā§āĻĄāĻžāĻ° āĻ˛ā§āĻ¯āĻžāĻā§āĻā§āĻ¯āĻŧā§āĻ) āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻ¸ā§āĻĨāĻŋāĻ°- āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛-āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ ā§āĻ¯āĻžāĻ°ā§āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻŦā§āĻŽāĻžāĻ¨āĻžāĻ¨ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻā§āĻˇāĻŖāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄāĻŋāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°āĻ¤ā§ "-āĻāĻ¯āĻŧāĻžāĻ°ā§-āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°" āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- MSVC āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻ¨ā§āĻ¨āĻ¤ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĨ¤ MSVC-āĻ¤ā§ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ "#pragma āĻĢāĻžāĻāĻļāĻ¨" (āĻāĻ¨āĻ˛āĻžāĻāĻ¨ āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŖā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ°āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻĻā§āĻ¯āĻŧ) āĻāĻŦāĻ "#pragma alloc_text" (āĻĢāĻžāĻāĻļāĻ¨ āĻā§āĻĄ āĻ¸āĻš āĻŦāĻŋāĻāĻžāĻā§āĻ° āĻ¨āĻžāĻŽ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§) āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ MSVC-āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ /JMC āĻāĻŦāĻ /JMC āĻĒāĻ¤āĻžāĻāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° C2X āĻāĻŦāĻ C++23 āĻŽāĻžāĻ¨āĻā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻ
āĻŦā§āĻ¯āĻžāĻšāĻ¤ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ C āĻāĻžāĻˇāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§: noreturn āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯, āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻāĻŦāĻ āĻ¸āĻ¤ā§āĻ¯, āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻŦāĻŋāĻ āĻāĻā§āĻ°āĻ¤āĻžāĻ° āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ _BitInt(N) āĻĒā§āĻ°āĻāĻžāĻ°, *_WIDTH āĻŽā§āĻ¯āĻžāĻā§āĻ°ā§, UTF-8 āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻ
āĻā§āĻˇāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ u8 āĻāĻĒāĻ¸āĻ°ā§āĻāĨ¤
C++-āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§: āĻŽāĻĄāĻŋāĻāĻ˛ āĻŽāĻžāĻ°ā§āĻāĻŋāĻ, āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻĻāĻ¸ā§āĻ¯āĻĻā§āĻ° ABI āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨āĻāĻ°āĻŖ, āĻŽāĻĄāĻŋāĻāĻ˛ā§ āĻ -āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻāĻ¤āĻŋāĻļā§āĻ˛ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻ°āĻŖ, āĻŦāĻšā§āĻŽāĻžāĻ¤ā§āĻ°āĻŋāĻ āĻ¸ā§āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻ āĻā§(x), āĻ -āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛, āĻāĻ¨āĻ¸ā§āĻā§āĻā§āĻ¸āĻĒā§āĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻˇāĻŋāĻ¤ āĻĢāĻžāĻāĻļāĻ¨ā§ āĻā§āĻā§ āĻāĻŦāĻ āĻ˛ā§āĻŦā§āĻ˛ , āĻĄāĻŋāĻ˛āĻŋāĻŽāĻŋāĻā§āĻĄ āĻāĻ¸ā§āĻā§āĻĒ āĻ¸āĻŋāĻā§āĻ¯āĻŧā§āĻ¨ā§āĻ¸, āĻ¨āĻžāĻŽ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻ¸ā§āĻā§āĻĒ āĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ°āĨ¤
- OpenCL āĻāĻŦāĻ OpenMP āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻā§āĻˇāĻŽāĻ¤āĻžāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ OpenCL āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ cl_khr_subgroup_rotate-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- x86 āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ¨āĻŋāĻāĻļāĻ°ā§āĻ¤ āĻĢāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻžāĻŽā§āĻĒ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻĒāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻ āĻ¨ā§āĻŽāĻžāĻ¨āĻŽā§āĻ˛āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻā§āĻ° āĻāĻžāĻ°āĻŖā§ āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ°ā§āĻ° āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻžāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻŽā§āĻŽāĻ°āĻŋāĻ¤ā§ āĻļāĻžāĻāĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ¨āĻž (SLS, āĻ¸ā§āĻā§āĻ°ā§āĻāĻ āĻ˛āĻžāĻāĻ¨ āĻ¸ā§āĻĒā§āĻā§āĻ˛ā§āĻļāĻ¨) āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻĒā§āĻ°āĻŋ-āĻāĻŽāĻĒā§āĻāĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻāĻžāĻ°āĻŖā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻāĻŋ āĻāĻā§āĨ¤ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻ¤ā§, "-mharden-sls=[none|all|return|indirect-jmp]" āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
- SSE2 āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯, _Float16 āĻĒā§āĻ°āĻāĻžāĻ° āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž AVX512-FP16 āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ā§āĻ° āĻ āĻāĻžāĻŦā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĢā§āĻ˛ā§āĻ āĻāĻžāĻāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
- RDPRU āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ "-m[no-]rdpru" āĻĒāĻ¤āĻžāĻāĻž āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž AMD Zen2 āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ° āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤āĨ¤
- RETBLEED āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻž āĻĨā§āĻā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ "-mfunction-return=thunk-extern" āĻĒāĻ¤āĻžāĻāĻž āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻĒāĻ°ā§āĻā§āĻˇ āĻļāĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻŽāĻžāĻ¨āĻŽā§āĻ˛āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽā§āĻĒā§āĻā§āĻ¤āĻ¤āĻž āĻŦāĻžāĻĻ āĻĻā§āĻ¯āĻŧ āĻāĻŽāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
LLVM 15.0-āĻ āĻŽā§āĻ˛ āĻāĻĻā§āĻāĻžāĻŦāĻ¨:
- Cortex-M85 CPU, Armv9-A, Armv9.1-A āĻāĻŦāĻ Armv9.2-A āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°, Armv8.1-M PACBTI-M āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- DirectX āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻž DirectX āĻļā§āĻĄāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ DXIL (DirectX āĻāĻ¨ā§āĻāĻžāĻ°āĻŽāĻŋāĻĄāĻŋāĻ¯āĻŧā§āĻ āĻ˛ā§āĻ¯āĻžāĻā§āĻā§āĻ¯āĻŧā§āĻ) āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻāĻā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¸āĻŽāĻžāĻŦā§āĻļā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=DirectX" āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- Libc++ C++20 āĻāĻŦāĻ C++2b āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄā§āĻ° āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻāĻ˛ā§āĻā§, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ°āĻ¯āĻŧā§āĻā§ âāĻĢāĻ°āĻŽā§āĻ¯āĻžāĻâ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻŦāĻ âāĻ°ā§āĻā§āĻâ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦāĻŋāĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
- x86, PowerPC āĻāĻŦāĻ RISC-V āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨ā§āĻ¨āĻ¤ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄāĨ¤
- āĻāĻ˛āĻāĻ˛āĻĄāĻŋ āĻ˛āĻŋāĻā§āĻāĻžāĻ° āĻāĻŦāĻ āĻāĻ˛āĻāĻ˛āĻĄāĻŋāĻŦāĻŋ āĻĄāĻŋāĻŦāĻžāĻāĻžāĻ°ā§āĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ¤ā§āĻ¸: opennet.ru