mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2026-10-09 23:53:04 -04:00
portable: fix stray installer URL in IAR ARM_CM33 non-secure port
portable/ARMv8M/copy_files.py derives the non-secure IAR ports from portable/ARMv8M/non_secure/portable/IAR/ARM_CM33. The previous commit fixed that source directory but did not regenerate the ARM_CM33 copy, so portable/IAR/ARM_CM33/non_secure/portasm.s still carried the stray URL. mpu_wrappers_v2_asm.S and portmacro.h are already identical between source and destination, so re-running the script changes only this file. With this commit all seven files that carry the stray URL are fixed, which makes #1485 (same file, same line) unnecessary. Correction to the previous commit message: the stray URL is in the #else branch of #if ( configENABLE_MPU == 1 ), so it is not every configuration of the port. It breaks every non-MPU build, independently of configENABLE_PAC; MPU builds never compile the line. Verified with arm-none-eabi-gcc 13.3.1 (GNU as, not IAR iccarm), using -march=armv8.1-m.main -mthumb -mfpu=fpv5-d16 and a minimal IAR-to-GNU directive translation: configENABLE_MPU=0, configENABLE_PAC=0 fails before, assembles after configENABLE_MPU=1 line is not compiled The PAC_KEY_* mrs/msr instructions are rejected by GNU as on this target, so the PAC-enabled non-MPU configuration could not be exercised here. Relates to #1480.
This commit is contained in:
parent
2b4dfaf8b0
commit
73567c5119
1 changed files with 1 additions and 1 deletions
|
|
@ -473,7 +473,7 @@ PendSV_Handler:
|
||||||
msr PAC_KEY_P_0, r6
|
msr PAC_KEY_P_0, r6
|
||||||
clrm {r3-r6} /* Clear r3-r6. */
|
clrm {r3-r6} /* Clear r3-r6. */
|
||||||
#endif /* configENABLE_PAC */
|
#endif /* configENABLE_PAC */
|
||||||
ldmia r2!, {r0, r3, lr} http://files.iar.com/ftp/pub/box/bxarm-9.60.3.deb/* Read from stack - r0 = xSecureContext, r3 = PSPLIM and LR restored. */
|
ldmia r2!, {r0, r3, lr} /* Read from stack - r0 = xSecureContext, r3 = PSPLIM and LR restored. */
|
||||||
msr psplim, r3 /* Restore the PSPLIM register value for the task. */
|
msr psplim, r3 /* Restore the PSPLIM register value for the task. */
|
||||||
ldr r3, =xSecureContext /* Read the location of xSecureContext i.e. &( xSecureContext ). */
|
ldr r3, =xSecureContext /* Read the location of xSecureContext i.e. &( xSecureContext ). */
|
||||||
str r0, [r3] /* Restore the task's xSecureContext. */
|
str r0, [r3] /* Restore the task's xSecureContext. */
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue