summaryrefslogtreecommitdiff
path: root/gcc/scan.c
diff options
context:
space:
mode:
authorzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-08 21:27:02 +0000
committerzack <zack@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-08 21:27:02 +0000
commit745272dbe781216d3b1bb4848b3af9a9d8dda016 (patch)
treedc89fdbfec79835dff420526e91afe6ae04f9ca8 /gcc/scan.c
parent2e931affe3fad0cb9ae8116d79b0ceb545cb913c (diff)
downloadgcc-745272dbe781216d3b1bb4848b3af9a9d8dda016.tar.gz
* Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a.
(gen_protos.o): Don't depend on cpplib.h or cpphash.h. (fix-header.o): Don't depend on cpphash.h. * scan.c (hashstr): New function. * scan.h: Prototype it. * fix-header.c: Don't include cpphash.h. Use hashstr. * gen-protos.c: Don't include cpphash.h or cpplib.h. Use hashstr. Report hash table statistics. Add private definition of xrealloc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31854 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/scan.c')
-rw-r--r--gcc/scan.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/scan.c b/gcc/scan.c
index 24dd6632f35..4af6a43a702 100644
--- a/gcc/scan.c
+++ b/gcc/scan.c
@@ -236,3 +236,18 @@ get_token (fp, s)
*s->ptr = 0;
return c;
}
+
+unsigned int
+hashstr (str, len)
+ const char *str;
+ unsigned int len;
+{
+ unsigned int n = len;
+ unsigned int r = 0;
+ const unsigned char *s = (const unsigned char *)str;
+
+ do
+ r = r * 67 + (*s++ - 113);
+ while (--n);
+ return r + len;
+}