mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
aeed91b589
The compiler was not informed that the assembly block should be treated as a memory barrier and could optimize out the initialization of local arrays which could be used as semihosting arguments. This resulted in garbage values being passed as semihosting call arguments. Additionally this commit changes the approach for placing values into specific register. Instead of clobbers, local register variables are used. This results in simpler generated code, since the compiler is able to place values directly into the registers used for semihosting arguments, avoiding additional moves. |
||
---|---|---|
.. | ||
cacheasm.h | ||
cacheattrasm.h | ||
core-macros.h | ||
coreasm.h | ||
corebits.h | ||
hal.h | ||
idmaasm.h | ||
mpuasm.h | ||
semihosting.h | ||
specreg.h | ||
traxreg.h | ||
xdm-regs.h | ||
xt_perf_consts.h | ||
xtensa_api.h | ||
xtensa_context.h | ||
xtensa-libdb-macros.h | ||
xtensa-versions.h | ||
xtensa-xer.h | ||
xtruntime-core-state.h | ||
xtruntime-frames.h | ||
xtruntime.h |