3 ms·
I'm not sure I understand how callee-saved registers are going to work under RVV, given the way that dynamic reconfiguration works.
by brandmeyer 8y ago
I'm not sure I understand how callee-saved registers are going to work under RVV, given the way that dynamic reconfiguration works.
- devit 8y agoMy guess is that either no registers will be callee-saved or one group of 8 registers will be callee-saved (in the current draft, you can group 1, 2, 4 or 8 sequential registers, but only starting on a multiple of the group size, so register groups are always going to be contained within one of the four 8-register maximum-size groups); this will require dynamic stack allocation since the vector length is not fixed. The saving sequence would be something like this (after setting up a frame pointer if needed): "vsetvl t0, x0, e8, m8; sub sp, sp, t0; vse.v v16, (sp)".