@@ -88,6 +88,9 @@ main = do
88 , mkBench "cat" href $ do
88 , mkBench "cat" href $ do
89 Handles inh _ <- readIORef href
89 Handles inh _ <- readIORef href
90 BFA.cat devNull inh
90 BFA.cat devNull inh
91+ , mkBench "read-utf8" href $ do
92+ Handles inh _ <- readIORef href
93+ BFA.decodeUtf8Lenient inh
92 , bgroup "readStream"
95 , bgroup "readStream"
93 [ mkBench "last" href $ do
96 [ mkBench "last" href $ do
@@ -114,6 +117,15 @@ main = do
114 , mkBench "catStream" href $ do
117 , mkBench "catStream" href $ do
115 Handles inh _ <- readIORef href
118 Handles inh _ <- readIORef href
116 BFS.catStreamWrite devNull inh
119 BFS.catStreamWrite devNull inh
120+ , mkBench "read-word8" href $ do
121+ Handles inh _ <- readIORef href
123+ , mkBench "read-char8" href $ do
124+ Handles inh _ <- readIORef href
126+ , mkBench "read-utf8" href $ do
127+ Handles inh _ <- readIORef href
128+ BFS.decodeUtf8Lenient inh
118 , bgroup "copyArray"
130 , bgroup "copyArray"
119 [ mkBench "copy" href $ do
131 [ mkBench "copy" href $ do
@@ -132,6 +144,9 @@ main = do
132 [ mkBench "char8" href $ do
144 [ mkBench "char8" href $ do
133 Handles inh outh <- readIORef href
145 Handles inh outh <- readIORef href
134 BFS.copyCodecChar8 inh outh
146 BFS.copyCodecChar8 inh outh
147+ , mkBench "utf8-arrays" href $ do
148+ Handles inh outh <- readIORef href
149+ BFA.copyCodecUtf8Lenient inh outh
135 , mkBench "utf8" href $ do
150 , mkBench "utf8" href $ do
136 Handles inh outh <- readIORef href
151 Handles inh outh <- readIORef href
137 BFS.copyCodecUtf8Lenient inh outh
152 BFS.copyCodecUtf8Lenient inh outh
@@ -215,6 +230,9 @@ main = do
215 , mkBench "splitOnSeq abcdefgh" href $ do
230 , mkBench "splitOnSeq abcdefgh" href $ do
216 Handles inh _ <- readIORef href
231 Handles inh _ <- readIORef href
217 BFS.splitOnSeq "abcdefgh" inh
232 BFS.splitOnSeq "abcdefgh" inh
233+ , mkBench "splitOnSeqUtf8 abcdefgh" href $ do
234+ Handles inh _ <- readIORef href
235+ BFS.splitOnSeqUtf8 "abcdefgh" inh
219 , bgroup "long-pattern"
237 , bgroup "long-pattern"
220 [ mkBench "splitOnSeq abcdefghi" href $ do
238 [ mkBench "splitOnSeq abcdefghi" href $ do
@@ -229,6 +247,9 @@ main = do
229 , mkBench "splitOnSuffixSeq abc...xyz" href $ do
247 , mkBench "splitOnSuffixSeq abc...xyz" href $ do
230 Handles inh _ <- readIORef href
248 Handles inh _ <- readIORef href
231 BFS.splitOnSuffixSeq "abcdefghijklmnopqrstuvwxyz" inh
249 BFS.splitOnSuffixSeq "abcdefghijklmnopqrstuvwxyz" inh
250+ , mkBench "splitOnSeqUtf8 abc...xyz" href $ do
251+ Handles inh _ <- readIORef href
252+ BFS.splitOnSeqUtf8 "abcdefghijklmnopqrstuvwxyz" inh