[git commit] ash: remove defunct control character to save a few bytes

Denys Vlasenko vda.linux at googlemail.com
Wed Jul 10 05:35:26 UTC 2024


commit: https://git.busybox.net/busybox/commit/?id=0af28b84e58307422f807ddbdafc67a68f71eb64
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master

Commit 549deab5a (ash: move parse-time quote flag detection to
run-time) did away with the need to distinguish between backquotes
inside and outside quotes.  This left a gap among the control
characters used in argument strings.  Removing this gap saves a
few bytes.

function                                             old     new   delta
.rodata                                           167346  167338      -8
cmdputs                                              399     388     -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-19)             Total: -19 bytes

Signed-off-by: Ron Yorston <rmy at pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 shell/ash.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/shell/ash.c b/shell/ash.c
index 5df0ba625..094a87390 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -835,13 +835,13 @@ out2str(const char *p)
 #define CTLVAR       ((unsigned char)'\202')    /* variable defn */
 #define CTLENDVAR    ((unsigned char)'\203')
 #define CTLBACKQ     ((unsigned char)'\204')
-#define CTLARI       ((unsigned char)'\206')    /* arithmetic expression */
-#define CTLENDARI    ((unsigned char)'\207')
-#define CTLQUOTEMARK ((unsigned char)'\210')
+#define CTLARI       ((unsigned char)'\205')    /* arithmetic expression */
+#define CTLENDARI    ((unsigned char)'\206')
+#define CTLQUOTEMARK ((unsigned char)'\207')
 #define CTL_LAST CTLQUOTEMARK
 #if BASH_PROCESS_SUBST
-# define CTLTOPROC    ((unsigned char)'\211')
-# define CTLFROMPROC  ((unsigned char)'\212')
+# define CTLTOPROC    ((unsigned char)'\210')
+# define CTLFROMPROC  ((unsigned char)'\211')
 # undef CTL_LAST
 # define CTL_LAST CTLFROMPROC
 #endif
@@ -3246,17 +3246,17 @@ static const uint8_t syntax_index_table[] ALIGN1 = {
 	/* 130 CTLVAR       */ CCTL_CCTL_CCTL_CCTL,
 	/* 131 CTLENDVAR    */ CCTL_CCTL_CCTL_CCTL,
 	/* 132 CTLBACKQ     */ CCTL_CCTL_CCTL_CCTL,
-	/* 133 CTLQUOTE     */ CCTL_CCTL_CCTL_CCTL,
-	/* 134 CTLARI       */ CCTL_CCTL_CCTL_CCTL,
-	/* 135 CTLENDARI    */ CCTL_CCTL_CCTL_CCTL,
-	/* 136 CTLQUOTEMARK */ CCTL_CCTL_CCTL_CCTL,
+	/* 133 CTLARI       */ CCTL_CCTL_CCTL_CCTL,
+	/* 134 CTLENDARI    */ CCTL_CCTL_CCTL_CCTL,
+	/* 135 CTLQUOTEMARK */ CCTL_CCTL_CCTL_CCTL,
 #if BASH_PROCESS_SUBST
-	/* 137 CTLTOPROC    */ CCTL_CCTL_CCTL_CCTL,
-	/* 138 CTLFROMPROC  */ CCTL_CCTL_CCTL_CCTL,
+	/* 136 CTLTOPROC    */ CCTL_CCTL_CCTL_CCTL,
+	/* 137 CTLFROMPROC  */ CCTL_CCTL_CCTL_CCTL,
 #else
+	/* 136      */ CWORD_CWORD_CWORD_CWORD,
 	/* 137      */ CWORD_CWORD_CWORD_CWORD,
-	/* 138      */ CWORD_CWORD_CWORD_CWORD,
 #endif
+	/* 138      */ CWORD_CWORD_CWORD_CWORD,
 	/* 139      */ CWORD_CWORD_CWORD_CWORD,
 	/* 140      */ CWORD_CWORD_CWORD_CWORD,
 	/* 141      */ CWORD_CWORD_CWORD_CWORD,


More information about the busybox-cvs mailing list