Added funcattr hasStackParms will be set for reentrant functions when there
[fw/sdcc] / src / SDCCsymt.h
index 2d0c80c3daebfcae5e647301510b2b55642d9551..be2c19b9de189b7991c327d058b3add1c7f3a372 100644 (file)
@@ -209,6 +209,7 @@ typedef struct sym_link
       unsigned builtin;                /* is a builtin function      */
       unsigned javaNative;     /* is a JavaNative Function (TININative ONLY) */
       unsigned overlay;        /* force parameters & locals into overlay segment */
+      unsigned hasStackParms;   /* function has parameters on stack */
     } funcAttrs;
 
     struct sym_link *next;     /* next element on the chain  */
@@ -325,6 +326,7 @@ symbol;
 #define IFFUNC_RBANK(x) (IS_FUNC(x) && FUNC_RBANK(x))
 #define FUNC_INTNO(x) (x->funcAttrs.intno)
 #define FUNC_REGBANK(x) (x->funcAttrs.regbank)
+#define FUNC_HASSTACKPARM(x) (x->funcAttrs.hasStackParms)
 
 #define FUNC_ISREENT(x) (x->funcAttrs.reent)
 #define IFFUNC_ISREENT(x) (IS_FUNC(x) && FUNC_ISREENT(x))
@@ -343,6 +345,7 @@ symbol;
 #define FUNC_ISOVERLAY(x) (x->funcAttrs.overlay)
 #define IFFUNC_ISOVERLAY(x) (IS_FUNC(x) && FUNC_ISOVERLAY(x))
 
+
 // jwk: I am not sure about this
 #define IFFUNC_ISBANKEDCALL(x) (!IFFUNC_NONBANKED(x) && \
   (options.model == MODEL_LARGE || \