diff options
Diffstat (limited to 'gcc/function.h')
-rw-r--r-- | gcc/function.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/function.h b/gcc/function.h index a8ca403..b772752 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -423,8 +423,22 @@ struct function GTY(()) /* Nonzero if code to initialize arg_pointer_save_area has been emitted. */ unsigned int arg_pointer_save_area_init : 1; + + /* Number of units of general registers that need saving in stdarg + function. What unit is depends on the backend, either it is number + of bytes, or it can be number of registers. */ + unsigned int va_list_gpr_size : 8; + + /* Number of units of floating point registers that need saving in stdarg + function. */ + unsigned int va_list_fpr_size : 8; }; +/* If va_list_[gf]pr_size is set to this, it means we don't know how + many units need to be saved. */ +#define VA_LIST_MAX_GPR_SIZE 255 +#define VA_LIST_MAX_FPR_SIZE 255 + /* The function currently being compiled. */ extern GTY(()) struct function *cfun; |