]> git.ipfire.org Git - thirdparty/gcc.git/commit
arm: Zero/Sign extends for CMSE security on Armv8-M.baseline [PR115253]
authorTorbjörn SVENSSON <torbjorn.svensson@foss.st.com>
Thu, 6 Jun 2024 15:12:11 +0000 (17:12 +0200)
committerTorbjörn SVENSSON <torbjorn.svensson@foss.st.com>
Wed, 12 Jun 2024 08:16:39 +0000 (10:16 +0200)
commit55c1687d542e40f0d4ad1d3dc624695a1854d967
tree672b8e6347f88f52051858a76b1e07d9be41371f
parentf38ffe32ae1703fa68fc05649142fdf7ea138429
arm: Zero/Sign extends for CMSE security on Armv8-M.baseline [PR115253]

Properly handle zero and sign extension for Armv8-M.baseline as
Cortex-M23 can have the security extension active.
Currently, there is an internal compiler error on Cortex-M23 for the
epilog processing of sign extension.

This patch addresses the following CVE-2024-0151 for Armv8-M.baseline.

gcc/ChangeLog:

PR target/115253
* config/arm/arm.cc (cmse_nonsecure_call_inline_register_clear):
Sign extend for Thumb1.
(thumb1_expand_prologue): Add zero/sign extend.

Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
Co-authored-by: Yvan ROUX <yvan.roux@foss.st.com>
(cherry picked from commit 65bd0655ece268895e5018e393bafb769e201c78)
gcc/config/arm/arm.cc