aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTheodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>1999-02-02 22:43:19 +0100
committerJeff Law <law@gcc.gnu.org>1999-02-02 14:43:19 -0700
commit132e01b1e6a6e4829e3d1657fa2479c187325d45 (patch)
tree270286df18cb71c42d3680dedf1bdc32a7a7e4f0
parentca545bb569b7560793928e1c597bb1df499f8855 (diff)
downloadgcc-132e01b1e6a6e4829e3d1657fa2479c187325d45.zip
gcc-132e01b1e6a6e4829e3d1657fa2479c187325d45.tar.gz
gcc-132e01b1e6a6e4829e3d1657fa2479c187325d45.tar.bz2
toplev.h (read_integral_parameter): Declare.
* toplev.h (read_integral_parameter): Declare. * toplev.c (read_integral_parameter): New function. From-SVN: r24985
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/toplev.c27
-rw-r--r--gcc/toplev.h1
3 files changed, 33 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c95413e..86cca6d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Tue Feb 2 22:38:19 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * toplev.h (read_integral_parameter): Declare.
+ * toplev.c (read_integral_parameter): New function.
+
Fri Jan 29 21:00:56 1999 Bob Manson <manson@charmed.cygnus.com>
* resource.c, resource.h: New files.
diff --git a/gcc/toplev.c b/gcc/toplev.c
index c232928..33fa309 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -1244,6 +1244,33 @@ FILE *asm_out_file;
FILE *aux_info_file;
FILE *rtl_dump_file = NULL;
+/* Decode the string P as an integral parameter.
+ If the string is indeed an integer return its numeric value else
+ issue an Invalid Option error for the option PNAME and return DEFVAL. */
+
+int
+read_integral_parameter (p, pname, defval)
+ char *p;
+ char *pname;
+ int defval;
+{
+ char *endp = p;
+
+ while (*endp)
+ {
+ if (*endp >= '0' && *endp <= '9')
+ endp++;
+ else
+ {
+ error ("Invalid option `%s'", pname);
+ return defval;
+ }
+ }
+
+ return atoi (p);
+}
+
+
/* Time accumulators, to count the total time spent in various passes. */
int parse_time;
diff --git a/gcc/toplev.h b/gcc/toplev.h
index 1622a64..1363519 100644
--- a/gcc/toplev.h
+++ b/gcc/toplev.h
@@ -26,6 +26,7 @@ union tree_node;
struct rtx_def;
#endif
+extern int read_integral_parameter PROTO ((char *, char *, int));
extern int count_error PROTO ((int));
extern void strip_off_ending PROTO ((char *, int));
extern void print_time PROTO ((const char *, int));