aboutsummaryrefslogtreecommitdiff
path: root/testes
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-03-27 14:56:10 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-03-27 14:56:10 -0300
commitd12262068d689eacc452a459a021df0ad8f6d46c (patch)
treed3e839cd1ddf3daf5e12c8f472c10a980b7d9d8c /testes
parent0443ad9e288825b6e4441eb11104bcdb4ff4593a (diff)
downloadlua-d12262068d689eacc452a459a021df0ad8f6d46c.tar.gz
lua-d12262068d689eacc452a459a021df0ad8f6d46c.tar.bz2
lua-d12262068d689eacc452a459a021df0ad8f6d46c.zip
Small optimizations in range checks
Checks of the form '1 <= x && x <= M' were rewritten in the form '(unsigned)x - 1 < (unsigned)M', which is usually more efficient. (Other similar checks have similar translations.) Although some compilers do these optimizations, that does not happen for all compilers or all cases.
Diffstat (limited to 'testes')
-rw-r--r--testes/utf8.lua3
1 files changed, 3 insertions, 0 deletions
diff --git a/testes/utf8.lua b/testes/utf8.lua
index 86ec1b00..b3b7687f 100644
--- a/testes/utf8.lua
+++ b/testes/utf8.lua
@@ -123,6 +123,9 @@ checkerror("continuation byte", utf8.offset, "𦧺", 1, 2)
123checkerror("continuation byte", utf8.offset, "𦧺", 1, 2) 123checkerror("continuation byte", utf8.offset, "𦧺", 1, 2)
124checkerror("continuation byte", utf8.offset, "\x80", 1) 124checkerror("continuation byte", utf8.offset, "\x80", 1)
125 125
126-- error in indices for len
127checkerror("out of string", utf8.len, "abc", 0, 2)
128checkerror("out of string", utf8.len, "abc", 1, 4)
126 129
127 130
128local s = "hello World" 131local s = "hello World"