2004-11-04 Vangelis Rokas <vrokas AT otenet.gr>
[fw/sdcc] / src / pic16 / main.c
index 4667a303cfdae19956ea305c24c9e340ef7258c4..e28d4caa55acf3c1c8a20296dae2522b3e1820f1 100644 (file)
@@ -135,12 +135,13 @@ set *absSymSet;
 
 set *sectNames=NULL;                   /* list of section listed in pragma directives */
 set *sectSyms=NULL;                    /* list of symbols set in a specific section */
-
+set *wparamList=NULL;
 
 static int
 _process_pragma(const char *sz)
 {
   static const char *WHITE = " \t\n";
+  static const char *WHITECOMMA = " \t\n,";
   
   char *ptr = strtok((char *)sz, WHITE);
 
@@ -278,6 +279,19 @@ _process_pragma(const char *sz)
          return 0;
        }
        
+       if(startsWith(ptr, "wparam")) {
+         char *fname = strtok((char *)NULL, WHITECOMMA);
+         
+            while(fname) {
+              addSet(&wparamList, Safe_strdup(fname));
+              
+//              debugf("passing with WREG to %s\n", fname);
+              fname = strtok((char *)NULL, WHITECOMMA);
+            }
+            
+          return 0;
+        }
+       
   return 1;
 }