diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2021-11-19 20:01:35 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2021-11-19 20:01:35 +0100 |
| commit | bc59a630ab7814ac0ca5487c780a03d7492648f7 (patch) | |
| tree | 7a998dd9f553f346636fb1103fd38627bdeab328 /src/Cache.zig | |
| parent | 149bc79486907745c8ffb12a69f65189b26c6dbe (diff) | |
| download | zig-bc59a630ab7814ac0ca5487c780a03d7492648f7.tar.gz zig-bc59a630ab7814ac0ca5487c780a03d7492648f7.zip | |
stage2,x86_64: fix genBinMathOp and clarify callee-saved regs
Previously, we have confused callee-saved with caller-saved registers
(the actual register sets were swapped). This commit fixes that
for both `.x86` and `.x86_64` native backends.
This commit also fixes the register allocation logic in `genBinMathOp`
for `.x86_64` native backend where in a situation such that we require
to spill a register, we would end up spilling the register that is
already involved in the instruction as the other operand. In such a
case, we make a note of this and spill a subsequent register instead.
Diffstat (limited to 'src/Cache.zig')
0 files changed, 0 insertions, 0 deletions
