Public Member Functions |
Static Public Member Functions |
Public Attributes |
Protected Member Functions |
List of all members
callregs_t Class Reference
Register allocation calling convention. More...
#include <typeinf.hpp>
Public Member Functions | |
callregs_t () | |
Constructor. | |
callregs_t (cm_t cc) | |
Constructor - initialize with the given request (see init_regs()) | |
void | swap (callregs_t &r) |
swap two instances | |
void | init_regs (cm_t cc) |
Init policy & registers for given CC. | |
bool | by_slots () const |
void | set (argreg_policy_t _policy, const int *gprs, const int *fprs) |
Init policy & registers (arrays are -1-terminated) | |
void | reset () |
Set policy and registers to invalid values. | |
bool | reginds (int *gp_ind, int *fp_ind, int r) const |
Get register indexes within GP/FP arrays. More... | |
Static Public Member Functions | |
static int | regcount (cm_t cc) |
Get max number of registers may be used in a function call. | |
static int | findreg (const intvec_t ®s, int r) |
Public Attributes | |
argreg_policy_t | policy |
argument policy | |
int | nregs |
max number of registers that can be used in a call | |
intvec_t | gpregs |
array of gp registers | |
intvec_t | fpregs |
array of fp registers | |
Protected Member Functions | |
bool | findregs (int *gp_ind, int *fp_ind, int r, const intvec_t &gprs, const intvec_t &fprs) const |
Search for register r in gprs and fprs. More... | |
Detailed Description
Register allocation calling convention.
(allocation policy, arrays of GP and FP registers)
Member Function Documentation
◆ reginds()
|
inline |
Get register indexes within GP/FP arrays.
(-1 -> is not present in the corresponding array)
◆ findregs()
|
inlineprotected |
Search for register r in gprs and fprs.
If found, fill gp_ind and fp_ind based on policy
The documentation for this class was generated from the following file:
Generated by 1.9.3