Skip to content

Commit

Permalink
FROMPULL: arch: arm: cortex_m: add memory to the clobber list
Browse files Browse the repository at this point in the history
Add "memory" to the clobber list"

From GCC 14 the compiler optimizes away memory accesses that do not
impact the asm block. Adding the memory to the clobber list lets the
compiler know that the memory state is to be preserved.

zephyrproject-rtos/zephyr#80579

BUG=b:376282914

Change-Id: I990e2256d0019361b3ef1f736095ebca3806a6e1
Signed-off-by: Wilfried Chauveau <wilfried.chauveau@arm.com>
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/zephyr/+/5976801
Commit-Queue: Jeremy Bettis <jbettis@chromium.org>
Tested-by: Jeremy Bettis <jbettis@chromium.org>
  • Loading branch information
fabiobaltieri authored and Chromeos LUCI committed Oct 29, 2024
1 parent 1307455 commit 00ff8b6
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion arch/arm/core/cortex_m/thread.c
Original file line number Diff line number Diff line change
Expand Up @@ -588,7 +588,7 @@ void arch_switch_to_main_thread(struct k_thread *main_thread, char *stack_ptr,
"bx r4\n" /* We don’t intend to return, so there is no need to link. */
:
: "r" (_main), "r" (stack_ptr)
: "r0", "r1", "r2", "r3", "r4", "ip", "lr");
: "r0", "r1", "r2", "r3", "r4", "ip", "lr", "memory");

CODE_UNREACHABLE;
}
Expand Down

0 comments on commit 00ff8b6

Please sign in to comment.