4 ms·
With an increase in available registers, every value that a compiler might newly choose to keep in a register was a value that would previously have lived in th
by cvoss 8mo ago
With an increase in available registers, every value that a compiler might newly choose to keep in a register was a value that would previously have lived in the local stack frame anyway.
It's up to the compiler to decide how many registers it needs to preserve at a call. It's also up to the compiler to decide which registers shall be the call-clobbered ones. "None" is a valid choice here, if you wish.
- guenthert 8mo ago> It's up to the compiler to decide how many registers it needs to preserve at a call. But the compiler is bound by the ABI, isn't it? (at least for externally visible entrance points / calls to sub routines external to the current compilation unit)
- cvoss 8mo agoSomeone decides how to define the ABI too, and that is a free choice. CPU register count doesn't constrain this particular system design question.