On the earlier "debate", Siwastaja's words "when the first float operation is encountered" should have been "when the first float operation is encountered in the ISR"
This is similar to customer coming into a supermarket and to the fruit section, then asking "where are the apples". When given answer "on the left", customer runs out of the store and tries to look left out of the door, shouting "there are no apples here, you should have said
left on where you currently stand in the fruit section".
I thought it is completely obvious that in context of discussing ISRs, stacking the registers must happen after the interrupt is triggered. How could you even imagine somehow stacking the CPU state before the interrupt happens? If you know what stacking means and why it is done, that is. And if you don't, then Cortex-M really makes life easy for you, see below.
You are a genius in making simple things sound complex and misunderstand anything.
Seems to be pretty tricky
Classic issue.
Most people find it
simple if you solve their problems and give them something which
just works, even if it is complex behind the curtains. Then again, there is always someone who wants to understand the internals completely, will disagree with some details, and want to micromanage it. They will complain.
I have programmed these CPUs for over a decade and never needed to think about these details at all. I have only read about them out of pure interest and learned about it on this very forum.