Displaying 1 result from an estimated 1 matches for "csr_noregs".
2015 Sep 01
6
Register spilling in caller saved backend
...playing around with a backend with no callee saved registers and
noticed more spilling than seems needed. I tried digging into the spilling
code but with limited success. I also tried removing all the callee saved
registers in the X86 backend and saw the same effect (basically making CSRs
equal to CSR_NoRegs). So I seem to be misunderstanding something or missing
something simple, and thought I'd ask.
Consider this program as an example:
volatile int x;
int __attribute__((noinline)) foo() { return x; }
int main() {
for (int i = 0; i < 10; ++i) {
foo();
}
}
The resultant output code...