Recently a vulnerability issue is found in the implementation of VLLDM instruction in the Arm Cortex-M33, Cortex-M35P and Cortex-M55. If the VLLDM instruction is abandoned due to an exception when it is partially completed, it is possible for subsequent non-secure handler to access and modify the partial restored register values. This vulnerability is identified as CVE-2021-35465. The mitigation sequence varies between v8-m and v8.1-m as follows:
v8-m.main
mrs r5, control tst r5, #8 /* CONTROL_S.SFPA */ it ne .inst.w 0xeeb00a40 /* vmovne s0, s0 */ 1: vlldm sp /* Lazy restore of d0-d16 and FPSCR. */
v8.1-m.main
vscclrm {vpr} /* Clear VPR. */ vlldm sp /* Lazy restore of d0-d16 and FPSCR. */
More details on https://developer.arm.com/support/arm-security-updates/vlldm-instruction-security-vulnerability
Nit: I think Arm -> ARM is better as we we're talking about the ARM backend here.