diff options
author | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-23 19:37:40 +0000 |
---|---|---|
committer | hjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-07-23 19:37:40 +0000 |
commit | 10ada81fea4490f94ba2eb5923bf5baa367a38bd (patch) | |
tree | 437dca120093cc7b1f6debf6f6b31779526c7192 /gcc/function.h | |
parent | 95a236de8aa10bf009e9368dfd28f95a980e5570 (diff) | |
parent | 3bd7a983695352a99f7dd597725eb5b839d4b4cf (diff) | |
download | gcc-ifunc.tar.gz |
Merged with trunk at revision 162480.ifunc
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/ifunc@162483 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/function.h')
-rw-r--r-- | gcc/function.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/gcc/function.h b/gcc/function.h index 617034872cc..fec0168a5d2 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -503,8 +503,8 @@ struct GTY(()) function { pointer. */ tree nonlocal_goto_save_area; - /* List of function local variables, functions, types and constants. */ - tree local_decls; + /* Vector of function local variables, functions, types and constants. */ + VEC(tree,gc) *local_decls; /* For md files. */ @@ -609,6 +609,17 @@ struct GTY(()) function { unsigned int is_thunk : 1; }; +/* Add the decl D to the local_decls list of FUN. */ + +static inline void +add_local_decl (struct function *fun, tree d) +{ + VEC_safe_push (tree, gc, fun->local_decls, d); +} + +#define FOR_EACH_LOCAL_DECL(FUN, I, D) \ + FOR_EACH_VEC_ELT_REVERSE (tree, (FUN)->local_decls, I, D) + /* 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 |