LLVM 15.0 เด•เดฎเตเดชเตˆเดฒเตผ เดธเตเดฏเต‚เดŸเตเดŸเดฟเดจเตเดฑเต† เดชเตเดฐเด•เดพเดถเดจเด‚

เด†เดฑเต เดฎเดพเดธเดคเตเดคเต† เดตเดฟเด•เดธเดจเดคเตเดคเดฟเดจเต เดถเต‡เดทเด‚, LLVM 15.0 เดชเตเดฐเต‹เดœเด•เตโ€Œเดฑเตเดฑเดฟเดจเตเดฑเต† เดฑเดฟเดฒเต€เดธเต เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต - GCC-เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดŸเต‚เตพเด•เดฟเดฑเตเดฑเต (เด•เด‚เดชเตˆเดฒเดฑเตเด•เตพ, เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเดฑเตเด•เตพ, เด•เต‹เดกเต เดœเดจเดฑเต‡เดฑเตเดฑเดฑเตเด•เตพ) เด…เดคเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เดณเต† RISC-เดชเต‹เดฒเตเดณเตเดณ เดตเต†เตผเดšเตเดตเตฝ เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เด‡เดจเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเต เดฌเดฟเดฑเตเดฑเตโ€Œเด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เต เดธเดฎเดพเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต (เด’เดฐเต เดฒเต‹-เดฒเต†เดตเตฝ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เตป เด’เดฐเต เดฎเตพเดŸเตเดŸเดฟ-เดฒเต†เดตเตฝ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป เดธเดฟเดธเตเดฑเตเดฑเด‚). เดœเดจเดฑเต‡เดฑเตเดฑเตเดšเต†เดฏเตโ€Œเดค เด•เดชเดŸ เด•เต‹เดกเต, เดชเตเดฐเต‹เด—เตเดฐเดพเด‚ เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดทเตป เดธเดฎเดฏเดคเตเดคเต เดคเดจเตเดจเต† JIT เด•เด‚เดชเตˆเดฒเดฑเดฟเดจเต เดฎเต†เดทเต€เตป เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เดณเดพเด•เตเด•เดฟ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚.

เด•เตเดฒเดพเด™เต 15.0-เดฒเต† เดชเตเดฐเดงเดพเดจ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฒเตเด•เตพ:

  • x86 เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเดฟเดจเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ, โ€œ-fzero-call-used-regsโ€ เดซเตเดฒเดพเด—เต เดšเต‡เตผเดคเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต, เด‡เดคเต เดซเด‚เด—เตเดทเดจเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ CPU เดฐเดœเดฟเดธเตเดฑเตเดฑเดฑเตเด•เดณเตเด‚ เดซเด‚เด—เตโ€Œเดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด‚ เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต เดชเต‚เดœเตเดฏเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดชเตเดจเดƒเดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เตเดจเตเดจเต. เดซเด‚เด—เตโ€Œเดทเดจเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดตเดฟเดตเดฐ เดšเต‹เตผเดšเตเดšเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดฐเดฟเดฐเด•เตเดทเดฟเด•เตเด•เดพเดจเตเด‚ เดšเต‚เดทเดฃเด™เตเด™เดณเดฟเตฝ ROP (เดฑเดฟเดŸเตเดŸเต‡เตบ-เด“เดฑเดฟเดฏเดจเตเดฑเดกเต เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเด‚เด—เต) เด—เดพเดกเตโ€Œเดœเต†เดฑเตเดฑเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดฌเตเดฒเต‹เด•เตเด•เตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดเด•เดฆเต‡เดถเด‚ 20% เด•เตเดฑเดฏเตเด•เตเด•เดพเดจเตเด‚ เดˆ เด“เดชเตเดทเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.
  • เดธเดฟ เด•เต‹เดกเดฟเดจเดพเดฏเตเดณเตเดณ เด˜เดŸเดจเด•เดณเตเดŸเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เดชเตเดฒเต‡เดธเตโ€Œเดฎเต†เดจเตเดฑเดฟเดจเตเดฑเต† เดฑเดพเตปเดกเดฎเตˆเดธเต‡เดทเตป เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟ, เด‡เดคเต เด•เต‡เดŸเตเดชเดพเดŸเตเด•เตพ เดšเต‚เดทเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ เด˜เดŸเดจเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดตเต‡เตผเดคเดฟเดฐเดฟเดšเตเดšเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเต เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเด•เตเด•เตเดจเตเดจเต. Randomize_layout, no_randomize_layout เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฑเดพเตปเดกเดฎเตˆเดธเต‡เดทเตป เด“เตบ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด“เดซเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† "-frandomize-layout-seed" เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ "-frandomize-layout-seed-file" เดซเตเดฒเดพเด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เดธเต€เดกเต เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.
  • "-fstrict-flex-arrays=" เดซเตเดฒเดพเด—เต เดšเต‡เตผเดคเตเดคเต ", เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด˜เดŸเดจเด•เดณเดฟเดฒเต† เด’เดฐเต เดซเตเดฒเต†เด•เตเดธเดฟเดฌเดฟเตพ เด…เดฑเต‡ เด˜เดŸเด•เดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ เด…เดคเดฟเดฐเตเด•เตพ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚ (เดซเตเดฒเต†เด•เตเดธเดฟเดฌเดฟเตพ เด…เดฑเต‡ เด…เด‚เด—เด™เตเด™เตพ, เด˜เดŸเดจเดฏเตเดŸเต† เด…เดตเดธเดพเดจเดคเตเดคเดฟเตฝ เด…เดจเดฟเดถเตเดšเดฟเดค เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เด’เดฐเต เดถเตเดฐเต‡เดฃเดฟ). 0 (เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ) เด†เดฏเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เด’เดฐเต เด…เดฑเต‡ เด‰เดณเตเดณ เด˜เดŸเดจเดฏเตเดŸเต† เด…เดตเดธเดพเดจ เด˜เดŸเด•เด‚ เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เด’เดฐเต เดซเตเดฒเต†เด•เตเดธเดฟเดฌเดฟเตพ เด…เดฑเต‡ เด†เดฏเดฟ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต, 1 - เดฎเดพเดคเตเดฐเด‚ เดตเดฒเดฟเดชเตเดชเด™เตเด™เตพ [], [0] เด•เต‚เดŸเดพเดคเต† [1] เด’เดฐเต เดซเตเดฒเต†เด•เตเดธเดฟเดฌเดฟเตพ เด…เดฑเต‡ เด†เดฏเดฟ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต, 2 - เดฎเดพเดคเตเดฐเด‚ เดตเดฒเตเดชเตเดชเด™เตเด™เตพ [] เด•เต‚เดŸเดพเดคเต† [0] เดŽเดจเตเดจเดฟเดต เด’เดฐเต เดซเตเดฒเต†เด•เตเดธเดฟเดฌเดฟเตพ เด…เดฑเต‡ เดชเต‹เดฒเต† เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต.
  • เดทเต‡เดกเดฑเตเด•เตพ เดŽเดดเตเดคเดพเตป เดกเดฏเดฑเด•เตโ€ŒเดŸเตโ€ŒเดŽเด•เตโ€Œเดธเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดธเดฟ เดชเต‹เดฒเตเดณเตเดณ เดญเดพเดทเดฏเดพเดฏ เดŽเดšเตเดšเตโ€ŒเดŽเตฝเดŽเดธเตโ€ŒเดŽเตฝ (เดนเตˆ-เดฒเต†เดตเตฝ เดทเต‡เดกเตผ เดฒเดพเด‚เด—เตเดตเต‡เดœเต) เดŽเดจเตเดจเดคเดฟเดจเดพเดฏเตเดณเตเดณ เดชเดฐเต€เด•เตเดทเดฃเดพเดคเตเดฎเด• เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเดคเตเดคเต.
  • เดซเดฟเด•เตเดธเดกเต, เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ-เดฒเต†เด™เตเดคเต เด…เดฑเต‡เด•เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ เดชเตŠเดฐเตเดคเตเดคเดฎเดฟเดฒเตเดฒเดพเดคเตเดค เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเต เดกเดฟเด•เตเดฒเดฑเต‡เดทเดจเตเด•เดณเตเดณเตเดณ เดซเด‚เด—เตเดทเดจเตเด•เดณเต† เดฎเดฑเดฟเด•เดŸเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเต เดจเตฝเด•เดพเตป "-เดตเดพเดฑเต‡-เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ" เดšเต‡เตผเดคเตเดคเต.
  • MSVC-เดฏเตเดฎเดพเดฏเตเดณเตเดณ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดŸ เด…เดจเตเดฏเต‹เดœเตเดฏเดค. MSVC-เดฏเดฟเตฝ เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ "#เดชเตเดฐเดพเด—เตเดฎ เดซเด‚เด—เตโ€Œเดทเตป" (เด‡เตปเดฒเตˆเตป เดตเดฟเดชเตเดฒเต€เด•เดฐเดฃเดคเตเดคเดฟเดจเต เดชเด•เดฐเด‚ เด’เดฐเต เดซเด‚เด—เตโ€Œเดทเตป เด•เต‹เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเตป เด•เด‚เดชเตˆเดฒเดฑเดฟเดจเต เดจเดฟเตผเดฆเตเดฆเต‡เดถเด‚ เดจเตฝเด•เตเดจเตเดจเต), "#เดชเตเดฐเดพเด—เตเดฎ เด…เดฒเต‹เด•เตเด•เต_เดŸเต†เด•เตโ€Œเดธเตโ€Œเดฑเตเดฑเต" (เดซเด‚เด—เตโ€Œเดทเตป เด•เต‹เดกเตเดณเตเดณ เดตเดฟเดญเดพเด—เดคเตเดคเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดจเดฟเตผเดตเดšเดฟเด•เตเด•เตเดจเตเดจเต) เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเดคเตเดคเต. MSVC-เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ /JMC, /JMC เดซเตเดฒเดพเด—เตเด•เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดšเต‡เตผเดคเตเดคเต.
  • เดญเดพเดตเดฟเดฏเดฟเดฒเต† C2X, C++23 เดจเดฟเดฒเดตเดพเดฐเด™เตเด™เดณเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดคเตเดŸเดฐเตเดจเตเดจเต. เดธเดฟ เดญเดพเดทเดฏเตโ€Œเด•เตเด•เดพเดฏเดฟ, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต: เดจเต‹เตผโ€ŒเดŸเต‡เตบ เด†เดŸเตเดฐเดฟเดฌเตเดฏเต‚เดŸเตเดŸเต, เดคเต†เดฑเตเดฑเดพเดฏเดคเตเด‚ เดถเดฐเดฟเดฏเตเดฎเตเดณเตเดณ เด•เต€เดตเต‡เดกเตเด•เตพ, เดคเดจเตเดจเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฌเดฟเดฑเตเดฑเต เดกเต†เดชเตโ€Œเดคเดฟเดจเตเดฑเต† เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ _BitInt(N) เดคเดฐเด‚, *_WIDTH เดฎเดพเด•เตเดฐเต‹เด•เตพ, UTF-8 เดŽเตปโ€Œเด•เต‹เดกเต เดšเต†เดฏเตโ€Œเดค เดชเตเดฐเดคเต€เด•เด™เตเด™เตพเด•เตเด•เตเดณเตเดณ u8 เดชเตเดฐเดฟเดซเดฟเด•เตโ€Œเดธเต.

    C++ เดจเต, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต: เดฎเตŠเดกเตเดฏเต‚เตพ เดฒเดฏเดจเด‚, เดซเด‚เด—เตโ€Œเดทเตป เด…เด‚เด—เด™เตเด™เดณเตเดŸเต† เดŽเดฌเดฟเด เด’เดฑเตเดฑเดชเตเดชเต†เดŸเตเดคเตเดคเตฝ, เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เดณเดฟเดฒเต† เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เด‡เดคเดฐ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เดณเตเดŸเต† เดกเตˆเดจเดพเดฎเดฟเด•เต เด‡เดจเต€เดทเตเดฏเดฒเตˆเดธเต‡เดทเตป, เดฎเตพเดŸเตเดŸเดฟเดกเตˆเดฎเตปเดทเดฃเตฝ เด‡เตปเดกเด•เตโ€Œเดธเต เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเตผเดฎเดพเตผ, เด“เดŸเตเดŸเต‹(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 เดทเต‡เดกเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ DXIL (DirectX เด‡เดจเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเต เดฒเดพเด‚เด—เตเดตเต‡เดœเต) เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดจเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจ DirectX-เดจเตเดณเตเดณ เด’เดฐเต เดชเดฐเต€เด•เตเดทเดฃเดพเดคเตเดฎเด• เดฌเดพเด•เตเด•เต†เตปเดกเต เดšเต‡เตผเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดธเด‚เดฌเตเดฒเดฟ เดธเดฎเดฏเดคเตเดคเต โ€œ-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=DirectXโ€ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟ เดฌเดพเด•เตเด•เต†เตปเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเดจเตเดจเต.
  • Libc++ C++20, C++2b เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเตเด•เดณเตเดŸเต† เดชเตเดคเดฟเดฏ เดธเดตเดฟเดถเต‡เดทเดคเด•เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดคเตเดŸเดฐเตเดจเตเดจเต, "เดซเต‹เตผเดฎเดพเดฑเตเดฑเต" เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเตเดŸเต† เดชเต‚เตผเดคเตเดคเต€เด•เดฐเดฃเด‚, "เดฑเต‡เดžเตเดšเต" เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเตเดŸเต† เดชเดฐเต€เด•เตเดทเดฃเดพเดคเตเดฎเด• เดชเดคเดฟเดชเตเดชเต เดŽเดจเตเดจเดฟเดต เด‰เตพเดชเตเดชเต†เดŸเต†.
  • x86, PowerPC, RISC-V เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเตเด•เตพเด•เตเด•เตเดณเตเดณ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดŸ เดฌเดพเด•เตเด•เต†เตปเดกเตเด•เตพ.
  • LLD เดฒเดฟเด™เตเด•เดฑเดฟเดจเตเดฑเต†เดฏเตเด‚ LLDB เดกเต€เดฌเด—เตเด—เดฑเดฟเดจเตเดฑเต†เดฏเตเด‚ เด•เดดเดฟเดตเตเด•เตพ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฟ.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•