aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2014-09-29 17:05:53 +0800
committerBen Hutchings <ben@decadent.org.uk>2020-03-28 21:42:54 +0000
commitd23eb0c786db8c7816a30978609ce6351e3b8583 (patch)
tree808c9bc7a69f921ffc4e555b54715477ca453504
parentb72377e6b73676c43bd0cff5eb202694a9c2b4ea (diff)
downloadklibc-d23eb0c786db8c7816a30978609ce6351e3b8583.tar.gz
[klibc] dash: [INPUT] Kill pgetc_macro
[ dash commit 339b9c0781cca7afb0964c6a655cda8ad9cf9fc2 ] pgetc_macro is identical to pgetc except that it's a macro and pgetc isn't. Since there is very little performance difference on modern systems it's time to kill pgetc_macro. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r--usr/dash/input.c7
-rw-r--r--usr/dash/input.h3
-rw-r--r--usr/dash/parser.c4
3 files changed, 7 insertions, 7 deletions
diff --git a/usr/dash/input.c b/usr/dash/input.c
index d31c45bb4a5e8..9e533a47d7fa4 100644
--- a/usr/dash/input.c
+++ b/usr/dash/input.c
@@ -134,7 +134,10 @@ RESET {
int
pgetc(void)
{
- return pgetc_macro();
+ if (--parsenleft >= 0)
+ return (signed char)*parsenextc++;
+ else
+ return preadbuffer();
}
@@ -147,7 +150,7 @@ pgetc2()
{
int c;
do {
- c = pgetc_macro();
+ c = pgetc();
} while (c == PEOA);
return c;
}
diff --git a/usr/dash/input.h b/usr/dash/input.h
index 50a77971ebfdf..775291b84716f 100644
--- a/usr/dash/input.h
+++ b/usr/dash/input.h
@@ -61,6 +61,3 @@ void setinputstring(char *);
void popfile(void);
void popallfiles(void);
void closescript(void);
-
-#define pgetc_macro() \
- (--parsenleft >= 0 ? (signed char)*parsenextc++ : preadbuffer())
diff --git a/usr/dash/parser.c b/usr/dash/parser.c
index 572cbcd5986c6..c4eaae2b93d55 100644
--- a/usr/dash/parser.c
+++ b/usr/dash/parser.c
@@ -775,7 +775,7 @@ xxreadtoken(void)
setprompt(2);
}
for (;;) { /* until token or start of word found */
- c = pgetc_macro();
+ c = pgetc();
switch (c) {
case ' ': case '\t':
case PEOA:
@@ -1009,7 +1009,7 @@ quotemark:
USTPUTC(c, out);
}
}
- c = pgetc_macro();
+ c = pgetc();
}
}
endword: