aboutsummaryrefslogtreecommitdiff
path: root/src/lj_strfmt.c
diff options
context:
space:
mode:
authorMike Pall <mike>2016-04-24 17:14:35 +0200
committerMike Pall <mike>2016-04-24 17:14:35 +0200
commitd8ac6230ed95a60b79e58a4aa2ba7f6d0b132e9e (patch)
treeb8f4096f7fe3246126318b69fd96c301d25dea3e /src/lj_strfmt.c
parent344fe5f01de5557cac4381d56d90c50335cae3db (diff)
parent7b26e9c998095ef9fbc4540908df6c30a693baa0 (diff)
downloadluajit-d8ac6230ed95a60b79e58a4aa2ba7f6d0b132e9e.tar.gz
luajit-d8ac6230ed95a60b79e58a4aa2ba7f6d0b132e9e.tar.bz2
luajit-d8ac6230ed95a60b79e58a4aa2ba7f6d0b132e9e.zip
Merge branch 'master' into v2.1
Diffstat (limited to 'src/lj_strfmt.c')
-rw-r--r--src/lj_strfmt.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lj_strfmt.c b/src/lj_strfmt.c
index 7c7d81d3..04c71e88 100644
--- a/src/lj_strfmt.c
+++ b/src/lj_strfmt.c
@@ -98,11 +98,15 @@ char * LJ_FASTCALL lj_strfmt_wint(char *p, int32_t k)
98 uint32_t u = (uint32_t)k; 98 uint32_t u = (uint32_t)k;
99 if (k < 0) { u = (uint32_t)-k; *p++ = '-'; } 99 if (k < 0) { u = (uint32_t)-k; *p++ = '-'; }
100 if (u < 10000) { 100 if (u < 10000) {
101 if (u < 10) goto dig1; if (u < 100) goto dig2; if (u < 1000) goto dig3; 101 if (u < 10) goto dig1;
102 if (u < 100) goto dig2;
103 if (u < 1000) goto dig3;
102 } else { 104 } else {
103 uint32_t v = u / 10000; u -= v * 10000; 105 uint32_t v = u / 10000; u -= v * 10000;
104 if (v < 10000) { 106 if (v < 10000) {
105 if (v < 10) goto dig5; if (v < 100) goto dig6; if (v < 1000) goto dig7; 107 if (v < 10) goto dig5;
108 if (v < 100) goto dig6;
109 if (v < 1000) goto dig7;
106 } else { 110 } else {
107 uint32_t w = v / 10000; v -= w * 10000; 111 uint32_t w = v / 10000; v -= w * 10000;
108 if (w >= 10) WINT_R(w, 10, 10) 112 if (w >= 10) WINT_R(w, 10, 10)