diff options
author | IIMarckus <iimarckus@gmail.com> | 2011-12-17 00:48:24 -0700 |
---|---|---|
committer | IIMarckus <iimarckus@gmail.com> | 2011-12-17 00:48:24 -0700 |
commit | 98a00bc02584af9e08d39cc3d6a6d0cded993743 (patch) | |
tree | 09609da2efb2308716857bded8c0cecd63d68666 /textpre.awk | |
parent | 89d8ad4fd2b4a715775f2007b0132388a164a05e (diff) |
Don’t rebuild the character table every line.
This change halves execution time on my machine.
hg-commit-id: aa8e5c92d38c
Diffstat (limited to 'textpre.awk')
-rw-r--r-- | textpre.awk | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/textpre.awk b/textpre.awk index a3192ab2..464741c5 100644 --- a/textpre.awk +++ b/textpre.awk @@ -1,15 +1,6 @@ BEGIN { FS = "\"" -} - -# skip lines that actually do use ASCII in quotes -tolower($1) ~ /section/ || -tolower($1) ~ /include/ || -tolower($1) ~ /incbin/ -!(tolower($1) ~ /section/ || tolower($1) ~ /include/ || tolower($1) ~ /incbin/) { -i = 1 -ORS = "" char[" "] = "$7F" char["A"] = "$80" char["B"] = "$81" @@ -80,6 +71,16 @@ char["6"] = "$FC" char["7"] = "$FD" char["8"] = "$FE" char["9"] = "$FF" +} + +# skip lines that actually do use ASCII in quotes +tolower($1) ~ /section/ || +tolower($1) ~ /include/ || +tolower($1) ~ /incbin/ + +!(tolower($1) ~ /section/ || tolower($1) ~ /include/ || tolower($1) ~ /incbin/) { +i = 1 +ORS = "" while (i <= NF) { if (i % 2 == 1) |