From fe104b54d3cccb59ec31b751778075360cd23bd7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Sat, 25 Nov 2000 17:32:31 +0100
Subject: [PATCH] Copy lexer.h to lexer[123].h. This makes some compilers (eg
 gcc & lc generate better code.

Rev: src/Makefile.in:1.216
Rev: src/lex.c:1.83
---
 src/Makefile.in | 16 +++++++++++++++-
 src/lex.c       |  8 ++++----
 2 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/src/Makefile.in b/src/Makefile.in
index 250e7c9bbc..14b01a035e 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,5 +1,5 @@
 #
-# $Id: Makefile.in,v 1.215 2000/10/30 19:01:22 grubba Exp $
+# $Id: Makefile.in,v 1.216 2000/11/25 16:32:31 grubba Exp $
 #
 
 # This line is needed on some machines.
@@ -533,6 +533,20 @@ las.o: $(SRCDIR)/treeopt.h
 
 las_t.o: las.c
 
+# This dependency is here to make sure that lexer[012].h are generated.
+# The reason for the split is that some compilers (read lc) generate
+# better code then. Strange, but true.
+lex.o: lexer0.h lexer1.h lexer2.h
+
+lexer0.h: lexer.h
+	cp "$<" "$@"
+
+lexer1.h: lexer.h
+	cp "$<" "$@"
+
+lexer2.h: lexer.h
+	cp "$<" "$@"
+
 # All the $(POBJ) dependencies, except tpike. See blurb at pike target.
 stamp-tpike-predep: $(SRCDIR)/peep.in $(TMP_BINDIR)/mkpeep.pike peep.c $(SRCDIR)/UnicodeData.txt $(TMP_BINDIR)/make_ci.pike builtin_functions.c $(SRCDIR)/treeopt.in $(TMP_BINDIR)/mktreeopt.pike las.c
 	@echo foo > stamp-tpike-predep
diff --git a/src/lex.c b/src/lex.c
index 298c66a4b1..87d7020beb 100644
--- a/src/lex.c
+++ b/src/lex.c
@@ -5,7 +5,7 @@
 \*/
 /**/
 #include "global.h"
-RCSID("$Id: lex.c,v 1.82 2000/10/30 19:01:21 grubba Exp $");
+RCSID("$Id: lex.c,v 1.83 2000/11/25 16:32:31 grubba Exp $");
 #include "language.h"
 #include "array.h"
 #include "lex.h"
@@ -294,13 +294,13 @@ struct lex lex;
 /* Make lexers for shifts 0, 1 and 2. */
 
 #define SHIFT	0
-#include "lexer.h"
+#include "lexer0.h"
 #undef SHIFT
 #define SHIFT	1
-#include "lexer.h"
+#include "lexer1.h"
 #undef SHIFT
 #define SHIFT	2
-#include "lexer.h"
+#include "lexer2.h"
 #undef SHIFT
 
 int yylex(YYSTYPE *yylval)
-- 
GitLab