1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723 |
+ cd hare
+ cp configs/linux.mk config.mk
+ make -j2 check
HAREC .cache/rt.ssa
HAREC .cache/types.ssa
HAREC .cache/sort_cmp.ssa
HAREC .cache/endian.ssa
HAREC .cache/format_elf.ssa
QBE .cache/types.s
QBE .cache/sort_cmp.s
HAREC .cache/crypto_math.ssa
QBE .cache/endian.s
QBE .cache/format_elf.s
AS .cache/types.o
AS .cache/sort_cmp.o
QBE .cache/crypto_math.s
AS .cache/endian.o
AS .cache/format_elf.o
AS .cache/crypto_math.o
QBE .cache/rt.s
HAREC .cache/bytes.ssa
HAREC .cache/errors.ssa
HAREC .cache/math.ssa
HAREC .cache/linux.ssa
QBE .cache/bytes.s
QBE .cache/errors.s
QBE .cache/math.s
QBE .cache/linux.s
HAREC .cache/sort.ssa
AS .cache/rt.o
AS .cache/bytes.o
HAREC .cache/encoding_utf8.ssa
AS .cache/errors.o
HAREC .cache/io.ssa
AS .cache/math.o
AS .cache/linux.o
QBE .cache/sort.s
QBE .cache/encoding_utf8.s
QBE .cache/io.s
HAREC .cache/types_c.ssa
AS .cache/sort.o
AS .cache/encoding_utf8.o
HAREC .cache/strings.ssa
HAREC .cache/hash.ssa
QBE .cache/types_c.s
AS .cache/io.o
QBE .cache/hash.s
AS .cache/types_c.o
QBE .cache/strings.s
HAREC .cache/linux_vdso.ssa
AS .cache/hash.o
HAREC .cache/crypto_sha256.ssa
HAREC .cache/memio.ssa
HAREC .cache/path.ssa
QBE .cache/linux_vdso.s
AS .cache/strings.o
HAREC .cache/ascii.ssa
HAREC .cache/bufio.ssa
QBE .cache/crypto_sha256.s
QBE .cache/memio.s
QBE .cache/path.s
AS .cache/linux_vdso.o
HAREC .cache/time.ssa
QBE .cache/ascii.s
QBE .cache/bufio.s
AS .cache/crypto_sha256.o
AS .cache/memio.o
AS .cache/path.o
QBE .cache/time.s
HAREC .cache/strconv.ssa
HAREC .cache/shlex.ssa
AS .cache/ascii.o
AS .cache/bufio.o
AS .cache/time.o
HAREC .cache/fs.ssa
QBE .cache/shlex.s
QBE .cache/strconv.s
AS .cache/shlex.o
QBE .cache/fs.s
AS .cache/fs.o
HAREC .cache/os.ssa
HAREC .cache/unix.ssa
AS .cache/strconv.o
QBE .cache/unix.s
QBE .cache/os.s
AS .cache/unix.o
HAREC .cache/unix_signal.ssa
QBE .cache/unix_signal.s
HAREC .cache/fmt.ssa
AS .cache/os.o
AS .cache/unix_signal.o
QBE .cache/fmt.s
HAREC .cache/encoding_hex.ssa
HAREC .cache/hare_lex.ssa
HAREC .cache/os_exec.ssa
HAREC .cache/dirs.ssa
HAREC .cache/getopt.ssa
AS .cache/fmt.o
QBE .cache/encoding_hex.s
QBE .cache/hare_lex.s
QBE .cache/os_exec.s
QBE .cache/dirs.s
QBE .cache/getopt.s
AS .cache/encoding_hex.o
HAREC .cache/hare_ast.ssa
AS .cache/os_exec.o
HAREC .cache/unix_tty.ssa
AS .cache/dirs.o
AS .cache/getopt.o
AS .cache/hare_lex.o
QBE .cache/hare_ast.s
QBE .cache/unix_tty.s
AS .cache/hare_ast.o
HAREC .cache/hare_parse.ssa
HAREC .cache/hare_unparse.ssa
AS .cache/unix_tty.o
QBE .cache/hare_parse.s
QBE .cache/hare_unparse.s
HAREC .cache/hare_module.ssa
AS .cache/hare_parse.o
QBE .cache/hare_module.s
AS .cache/hare_module.o
HAREC .cache/cmd_hare_build.ssa
QBE .cache/cmd_hare_build.s
AS .cache/cmd_hare_build.o
HAREC .cache/cmd_hare.ssa
QBE .cache/cmd_hare.s
AS .cache/cmd_hare.o
AS .cache/hare_unparse.o
LD .bin/hare
Running 579/579 tests:
ascii::ctype....................................PASS in 0.000003917s
ascii::strcasecmp...............................PASS in 0.000009117s
ascii::valid....................................PASS in 0.000007444s
bufio::greedy_scan_uncomplete_line..............PASS in 0.000018755s
bufio::read.....................................PASS in 0.000018144s
bufio::read_byte................................PASS in 0.000005120s
bufio::read_line................................PASS in 0.000018235s
bufio::read_rune................................PASS in 0.000006121s
bufio::read_tok.................................PASS in 0.000006792s
bufio::scan_byte................................PASS in 0.000003446s
bufio::scan_read................................PASS in 0.000011001s
bufio::scan_rune................................PASS in 0.000004088s
bufio::scan_rune_cutoff.........................PASS in 0.000005059s
bufio::scan_seek................................PASS in 0.000020178s
bufio::scan_uncomplete_line.....................PASS in 0.000017803s
bufio::scan_unread..............................PASS in 0.000005500s
bufio::unread...................................PASS in 0.000011802s
bufio::write....................................PASS in 0.000013055s
bytes::cut......................................PASS in 0.000004348s
bytes::equal....................................PASS in 0.000003277s
bytes::hasprefix................................PASS in 0.000004769s
bytes::hassuffix................................PASS in 0.000005541s
bytes::index....................................PASS in 0.000023073s
bytes::reverse..................................PASS in 0.000007804s
bytes::rtokenize................................PASS in 0.000011021s
bytes::tokenize.................................PASS in 0.000010029s
bytes::trim.....................................PASS in 0.000008777s
cmd::haredoc::doc::html_escape..................PASS in 0.000017153s
cmd::haredoc::parseident........................PASS in 0.000163126s
cmp::ints.......................................PASS in 0.000003376s
crypto::aes::cbc_encrypt_decrypt................PASS in 0.000057027s
crypto::aes::cbc_encrypt_decrypt_in_place.......PASS in 0.000025408s
crypto::aes::ctr_encrypt_in_place...............PASS in 0.000017263s
crypto::aes::ctr_encrypt_max_iv.................PASS in 0.000013975s
crypto::aes::ctr_encrypt_smaller_buf............PASS in 0.000014017s
crypto::aes::ctr_test_multiple_blocks...........PASS in 0.000028454s
crypto::aes::ctr_test_multiple_calls............PASS in 0.000016841s
crypto::aes::ctr_test_retry.....................PASS in 0.000014788s
crypto::aes::ctr_zero_iv........................PASS in 0.000022602s
crypto::aes::empty_write........................PASS in 0.000013536s
crypto::aes::gcm_decrypt........................PASS in 0.000287369s
crypto::aes::gcm_encrypt........................PASS in 0.000245450s
crypto::aes::gcm_inplace........................PASS in 0.000408556s
crypto::aes::ni_enabled.........................PASS in 0.000002485s
crypto::aes::ni_enc_key_expand_128..............PASS in 0.000030297s
crypto::aes::ni_enc_key_expand_192..............PASS in 0.000008867s
crypto::aes::ni_enc_key_expand_256..............PASS in 0.000008796s
crypto::aes::ni_test_decrypt_128................PASS in 0.000005761s
crypto::aes::ni_test_encrypt_128................PASS in 0.000009378s
crypto::aes::ni_test_example_vector1............PASS in 0.000007624s
crypto::aes::ni_test_example_vector2............PASS in 0.000007294s
crypto::aes::ni_test_example_vector3............PASS in 0.000007363s
crypto::aes::rt_decrypt_128.....................PASS in 0.000002856s
crypto::aes::rt_decrypt_128_multiple_blocks.....PASS in 0.000009418s
crypto::aes::rt_encrypt_128.....................PASS in 0.000010510s
crypto::aes::rt_encrypt_128_multiple_blocks.....PASS in 0.000005660s
crypto::aes::rt_example_vector1.................PASS in 0.000010790s
crypto::aes::rt_example_vector1_in_place........PASS in 0.000002084s
crypto::aes::rt_example_vector2.................PASS in 0.000004208s
crypto::aes::rt_example_vector3.................PASS in 0.000005711s
crypto::aes::rt_finish..........................PASS in 0.000012393s
crypto::aes::test_decrypt_128...................PASS in 0.000010349s
crypto::aes::test_decrypt_128_multiple_blocks...PASS in 0.000024826s
crypto::aes::test_encrypt_128...................PASS in 0.000013455s
crypto::aes::test_encrypt_128_multiple_blocks...PASS in 0.000026219s
crypto::aes::test_example_vector1...............PASS in 0.000012904s
crypto::aes::test_example_vector1_in_place......PASS in 0.000006031s
crypto::aes::test_example_vector2...............PASS in 0.000019837s
crypto::aes::test_example_vector3...............PASS in 0.000025989s
crypto::aes::xts::multiblock....................PASS in 0.000007344s
crypto::aes::xts::oneblock......................PASS in 0.000014507s
crypto::argon2::mode_d_one_pass.................PASS in 0.000805582s
crypto::argon2::rfc_d_test_vector...............PASS in 0.001043677s
crypto::argon2::rfc_i_test_vector...............PASS in 0.001300671s
crypto::argon2::rfc_id_test_vector..............PASS in 0.001058726s
crypto::argon2::samples.........................PASS in 0.007806362s
crypto::argon2::samples_slow....................SKIP in 0.000015839s
crypto::bigint::add.............................PASS in 0.000052098s
crypto::bigint::decodebigger....................PASS in 0.000001903s
crypto::bigint::encmoddec.......................PASS in 0.000019186s
crypto::bigint::encode..........................PASS in 0.000003266s
crypto::bigint::encodebigger....................PASS in 0.000006843s
crypto::bigint::encreddec.......................PASS in 0.000026961s
crypto::bigint::iszero..........................PASS in 0.000030638s
crypto::bigint::modpow..........................PASS in 0.000064300s
crypto::bigint::montyencode.....................PASS in 0.000030116s
crypto::bigint::montymul........................PASS in 0.000098695s
crypto::bigint::mulacc..........................PASS in 0.000043361s
crypto::bigint::muladd_small....................PASS in 0.000060013s
crypto::bigint::reduce..........................PASS in 0.000073037s
crypto::bigint::rshift..........................PASS in 0.000033302s
crypto::bigint::word_countbits..................PASS in 0.000002554s
crypto::bigint::zero............................PASS in 0.000005461s
crypto::blake2b::blake2b........................PASS in 0.029707275s
crypto::blake2b::blake2b_multiple_writes........PASS in 0.000004659s
crypto::blowfish::decrypt.......................PASS in 0.000938450s
crypto::blowfish::encrypt.......................PASS in 0.000927610s
crypto::blowfish::salted........................PASS in 0.000889389s
crypto::chacha::chacha20........................PASS in 0.000007765s
crypto::chacha::hchacha20.......................PASS in 0.000003176s
crypto::chacha::skipblocks......................PASS in 0.000008146s
crypto::chacha::xchacha20.......................PASS in 0.000009748s
crypto::chachapoly::encrypt.....................PASS in 0.000030858s
crypto::chachapoly::xencrypt....................PASS in 0.000026479s
crypto::cipheradditionswap......................PASS in 0.000008716s
crypto::curve25519::highbitignored..............PASS in 0.002224082s
crypto::curve25519::subfe.......................PASS in 0.000002385s
crypto::curve25519::swap25519...................PASS in 0.000002084s
crypto::curve25519::unpack25519.................PASS in 0.000001614s
crypto::curve25519::unpackpack..................PASS in 0.000003296s
crypto::curve25519::vectors.....................PASS in 0.018874334s
crypto::curve25519::x25519basepoint.............PASS in 0.223158385s
crypto::ec::arsh................................PASS in 0.000012062s
crypto::ec::be8tole30...........................PASS in 0.000002255s
crypto::ec::bigint_support......................PASS in 0.000002004s
crypto::ec::keygen_p256.........................PASS in 0.000003968s
crypto::ec::keygen_p384.........................PASS in 0.000003096s
crypto::ec::keygen_p521.........................PASS in 0.000004639s
crypto::ec::p256_muladd.........................PASS in 0.014261813s
crypto::ec::p256_mulgen.........................PASS in 0.007689433s
crypto::ec::p384_muladd.........................PASS in 0.039826426s
crypto::ec::p384_mulgen.........................PASS in 0.024974696s
crypto::ec::p521_muladd.........................PASS in 0.126874858s
crypto::ec::p521_mulgen.........................PASS in 0.092936188s
crypto::ecdh::nist_p256.........................PASS in 0.004401986s
crypto::ecdh::nist_p256_full....................SKIP in 0.000017222s
crypto::ecdh::nist_p384.........................PASS in 0.014980219s
crypto::ecdh::nist_p384_full....................SKIP in 0.000016039s
crypto::ecdh::nist_p521.........................PASS in 0.031362088s
crypto::ecdh::nist_p521_full....................SKIP in 0.000015940s
crypto::ecdh::p256_invalidpoint.................PASS in 0.003896989s
crypto::ecdh::p256_newkey.......................PASS in 0.000003367s
crypto::ecdh::p384_invalidpoint.................PASS in 0.008782785s
crypto::ecdh::p521_invalidpoint.................PASS in 0.017439733s
crypto::ecdsa::ecdsa_rfc6979....................SKIP in 0.000012042s
crypto::ecdsa::hmac_drbg........................PASS in 0.000057728s
crypto::ecdsa::validate.........................PASS in 0.013106655s
crypto::ed25519::golden.........................PASS in 0.005908894s
crypto::ed25519::issue716.......................PASS in 0.003874438s
crypto::ed25519::roundtrip......................PASS in 0.019236062s
crypto::hkdf::rfc1..............................PASS in 0.000024987s
crypto::hkdf::rfc2..............................PASS in 0.000056436s
crypto::hkdf::rfc3..............................PASS in 0.000026420s
crypto::hkdf::rfc4..............................PASS in 0.000014468s
crypto::hkdf::rfc5..............................PASS in 0.000031680s
crypto::hkdf::rfc6..............................PASS in 0.000018945s
crypto::hmac::hmac_sha1.........................PASS in 0.000012634s
crypto::hmac::hmac_sha1_empty_key...............PASS in 0.000008376s
crypto::hmac::hmac_sha1_large_key...............PASS in 0.000018354s
crypto::hmac::sha256............................PASS in 0.000012383s
crypto::invalidaddition.........................PASS in 0.000022091s
crypto::invalidaddition2........................PASS in 0.000011762s
crypto::invalidaddition3........................PASS in 0.000020568s
crypto::invalidaddition4........................PASS in 0.000012173s
crypto::invalidaddition5........................PASS in 0.000009248s
crypto::invalidcipher...........................PASS in 0.000009768s
crypto::invalidcipher2..........................PASS in 0.000012804s
crypto::invalidcipher3..........................PASS in 0.000009488s
crypto::invalidkey..............................PASS in 0.000013386s
crypto::invalidmac..............................PASS in 0.000009168s
crypto::math::cmpu32............................PASS in 0.000002194s
crypto::math::divu32............................PASS in 0.000002605s
crypto::math::eq0u32............................PASS in 0.000002565s
crypto::math::eqslice...........................PASS in 0.000007935s
crypto::math::equ32.............................PASS in 0.000003236s
crypto::math::gtu32.............................PASS in 0.000002164s
crypto::math::lrot32............................PASS in 0.000002976s
crypto::math::lrot64............................PASS in 0.000002184s
crypto::math::muxu32............................PASS in 0.000002043s
crypto::noadditional............................PASS in 0.000022162s
crypto::nomsg...................................PASS in 0.000011131s
crypto::nothing.................................PASS in 0.000009618s
crypto::poly1305::example1......................PASS in 0.000002324s
crypto::poly1305::example2......................PASS in 0.000002084s
crypto::poly1305::example3......................PASS in 0.000002274s
crypto::poly1305::example4......................PASS in 0.000002615s
crypto::poly1305::writepatterns.................PASS in 0.000004649s
crypto::polyaligned.............................PASS in 0.000014668s
crypto::random::buffer..........................PASS in 0.000026049s
crypto::random::reader..........................PASS in 0.000030658s
crypto::rfc.....................................PASS in 0.000014618s
crypto::rfcmultiadditonals......................PASS in 0.000017222s
crypto::rsa::countbits..........................PASS in 0.000002565s
crypto::rsa::initd..............................PASS in 0.000134934s
crypto::rsa::pkcs1..............................PASS in 0.248655100s
crypto::rsa::pss_sig............................PASS in 0.034040563s
crypto::rsa::pubprivexp.........................PASS in 0.031998773s
crypto::rsa::smallprivexp.......................PASS in 0.000055745s
crypto::rsa::tiny...............................PASS in 0.000007504s
crypto::salsa::hsalsa20.........................PASS in 0.000006342s
crypto::salsa::qr...............................PASS in 0.000002394s
crypto::salsa::xsalsa20.........................PASS in 0.000006703s
crypto::salsa::xsalsa20_ctr_overflow_u32........PASS in 0.000003787s
crypto::salsa::xsalsa20_ctr_overflow_u64........PASS in 0.000007764s
crypto::sha1::sha1..............................PASS in 0.000040787s
crypto::sha1::sha1_1gb..........................SKIP in 0.000011080s
crypto::sha256::sha256..........................PASS in 0.000068939s
crypto::sha256::sha256_1gb......................SKIP in 0.000009819s
crypto::sha512::sha384..........................PASS in 0.000033513s
crypto::sha512::sha512..........................PASS in 0.000065373s
crypto::sha512::sha512_224......................PASS in 0.000019927s
crypto::sha512::sha512_256......................PASS in 0.000022042s
crypto::x25519::random..........................PASS in 0.004513255s
crypto::x25519::sample..........................PASS in 0.002241265s
encoding::asn1::bmp.............................PASS in 0.000017863s
encoding::asn1::c_is_num........................PASS in 0.000004308s
encoding::asn1::c_is_print......................PASS in 0.000015348s
encoding::asn1::emptydata.......................PASS in 0.000003928s
encoding::asn1::encode_dsz......................PASS in 0.000005400s
encoding::asn1::invalid_seq.....................PASS in 0.000004118s
encoding::asn1::parselen........................PASS in 0.000006412s
encoding::asn1::parsetag........................PASS in 0.000005229s
encoding::asn1::read_bitstr.....................PASS in 0.000007104s
encoding::asn1::read_bool.......................PASS in 0.000007404s
encoding::asn1::read_gtime......................PASS in 0.000056095s
encoding::asn1::read_implicit...................PASS in 0.000003075s
encoding::asn1::read_int........................PASS in 0.000016781s
encoding::asn1::read_null.......................PASS in 0.000003506s
encoding::asn1::read_oid........................PASS in 0.000003707s
encoding::asn1::read_utctime....................PASS in 0.000019236s
encoding::asn1::seq.............................PASS in 0.000010520s
encoding::asn1::strrawoid.......................PASS in 0.000005460s
encoding::asn1::t61.............................PASS in 0.000010449s
encoding::asn1::t61encode.......................PASS in 0.000084688s
encoding::asn1::utf8............................PASS in 0.000008456s
encoding::asn1::validutf8.......................PASS in 0.000002916s
encoding::asn1::write_bool......................PASS in 0.000004168s
encoding::asn1::write_id........................PASS in 0.000004629s
encoding::asn1::write_int.......................PASS in 0.000007013s
encoding::asn1::write_prim......................PASS in 0.000002795s
encoding::asn1::write_seq.......................PASS in 0.000003858s
encoding::base32::decode........................PASS in 0.000328847s
encoding::base32::encode........................PASS in 0.000008936s
encoding::base64::decode........................PASS in 0.008535371s
encoding::base64::encode........................PASS in 0.000006022s
encoding::base64::partialwrite..................PASS in 0.000002324s
encoding::base64::sizecalc......................PASS in 0.000002165s
encoding::hex::decode...........................PASS in 0.000034184s
encoding::hex::dump.............................PASS in 0.000025318s
encoding::hex::encode...........................PASS in 0.000003447s
encoding::hex::encodestr........................PASS in 0.000003055s
encoding::pem::read.............................PASS in 0.000091532s
encoding::pem::read_many........................PASS in 0.000088045s
encoding::pem::readcrlf.........................PASS in 0.000048310s
encoding::pem::write............................PASS in 0.000060323s
encoding::utf8::decode..........................PASS in 0.000003506s
encoding::utf8::encode..........................PASS in 0.000002054s
encoding::utf8::slice...........................PASS in 0.000002525s
endian::big.....................................PASS in 0.000004198s
endian::hton....................................PASS in 0.000002755s
endian::little..................................PASS in 0.000006232s
endian::ntoh....................................PASS in 0.000003817s
fmt::print......................................PASS in 0.000054602s
fnmatch::fnmatch................................PASS in 0.000063779s
format::ini::extended...........................PASS in 0.000024335s
format::ini::invalid............................PASS in 0.000050245s
format::ini::simple.............................PASS in 0.000021971s
fs::mode_str....................................PASS in 0.000003356s
fs::modes.......................................PASS in 0.000004088s
getopt::parse...................................PASS in 0.000010119s
glob::glob......................................PASS in 0.002471406s
glob::pattern_parse.............................PASS in 0.000032050s
hare::lex::access_tuple.........................PASS in 0.000019797s
hare::lex::annotation_callback..................PASS in 0.000013915s
hare::lex::comments.............................PASS in 0.000028895s
hare::lex::discard_basic_annotation.............PASS in 0.000011040s
hare::lex::discard_detailed_annotation..........PASS in 0.000029596s
hare::lex::invalid..............................PASS in 0.000035927s
hare::lex::keywords.............................PASS in 0.000081363s
hare::lex::lex1.................................PASS in 0.000004319s
hare::lex::lex2.................................PASS in 0.000008516s
hare::lex::lex3.................................PASS in 0.000018494s
hare::lex::lexname..............................PASS in 0.000011361s
hare::lex::literals.............................PASS in 0.000052559s
hare::lex::literals_underscores.................PASS in 0.000048531s
hare::lex::loc..................................PASS in 0.000015309s
hare::lex::runes................................PASS in 0.000013856s
hare::lex::save_restore.........................PASS in 0.000011210s
hare::lex::strings..............................PASS in 0.000031359s
hare::lex::unlex................................PASS in 0.000003397s
hare::parse::array_slice........................PASS in 0.000111939s
hare::parse::assignment.........................PASS in 0.000237325s
hare::parse::binarithm..........................PASS in 0.000050404s
hare::parse::binding............................PASS in 0.000165751s
hare::parse::builtin............................PASS in 0.000435657s
hare::parse::call...............................PASS in 0.000157876s
hare::parse::cast...............................PASS in 0.000187672s
hare::parse::compound...........................PASS in 0.000037360s
hare::parse::control............................PASS in 0.000082886s
hare::parse::decls..............................PASS in 0.000243166s
hare::parse::defer_expr.........................PASS in 0.000044463s
hare::parse::doc::doc...........................PASS in 0.000098584s
hare::parse::doc::invalid_ref...................PASS in 0.000092594s
hare::parse::docs...............................PASS in 0.000073178s
hare::parse::enum_comments......................PASS in 0.000039353s
hare::parse::enum_type..........................PASS in 0.000160040s
hare::parse::expr_loc...........................PASS in 0.001322671s
hare::parse::for_expr...........................PASS in 0.000191829s
hare::parse::func...............................PASS in 0.000325331s
hare::parse::ident..............................PASS in 0.000332784s
hare::parse::if_expr............................PASS in 0.000099997s
hare::parse::imports............................PASS in 0.000105248s
hare::parse::list...............................PASS in 0.000049283s
hare::parse::literal............................PASS in 0.000454512s
hare::parse::match_expr.........................PASS in 0.000144350s
hare::parse::parenthesis........................PASS in 0.000463199s
hare::parse::postfix............................PASS in 0.000184807s
hare::parse::slice..............................PASS in 0.000087103s
hare::parse::struct_union.......................PASS in 0.000231915s
hare::parse::switch_expr........................PASS in 0.000107252s
hare::parse::tagged_union.......................PASS in 0.000100429s
hare::parse::tuple..............................PASS in 0.000142567s
hare::parse::type_loc...........................PASS in 0.000265848s
hare::parse::unarithm...........................PASS in 0.000164308s
hare::parse::yield_expr.........................PASS in 0.000113733s
hare::types::alias..............................PASS in 0.000868218s
hare::types::builtins...........................PASS in 0.000003797s
hare::types::forwardref.........................PASS in 0.000701265s
hare::types::funcs..............................PASS in 0.000703760s
hare::types::lists..............................PASS in 0.000725801s
hare::types::store..............................PASS in 0.000703119s
hare::types::structs............................PASS in 0.000897864s
hare::types::tagged.............................PASS in 0.000702848s
hare::types::tuples.............................PASS in 0.000702038s
hare::unit::_return.............................PASS in 0.000730029s
hare::unit::access..............................PASS in 0.000774032s
hare::unit::compound............................PASS in 0.000805941s
hare::unit::constant............................PASS in 0.000839143s
hare::unparse::_type............................PASS in 0.000015008s
hare::unparse::decl.............................PASS in 0.000031439s
hare::unparse::ident............................PASS in 0.000003917s
hare::unparse::import...........................PASS in 0.000006482s
hash::adler32::adler32..........................PASS in 0.000013446s
hash::crc16::crc16..............................PASS in 0.000009247s
hash::crc32::crc32..............................PASS in 0.000008787s
hash::crc64::crc64..............................PASS in 0.000008736s
hash::fnv::fnv32................................PASS in 0.000006802s
hash::siphash::siphash..........................PASS in 0.000020759s
io::limit.......................................PASS in 0.000008586s
linux::timerfd::timerfd.........................PASS in 0.000049272s
math::absf......................................PASS in 0.000003657s
math::absi......................................PASS in 0.000002796s
math::acos......................................PASS in 0.000011421s
math::acosh.....................................PASS in 0.000005761s
math::asin......................................PASS in 0.000004058s
math::asinh.....................................PASS in 0.000020278s
math::atan......................................PASS in 0.000003497s
math::atan2.....................................PASS in 0.000005721s
math::atanh.....................................PASS in 0.000003637s
math::bit_size..................................PASS in 0.000004068s
math::ceil......................................PASS in 0.000004408s
math::checked::addi16...........................PASS in 0.000003607s
math::checked::addi32...........................PASS in 0.000003176s
math::checked::addi64...........................PASS in 0.000003667s
math::checked::addi8............................PASS in 0.000008756s
math::checked::addu16...........................PASS in 0.000003497s
math::checked::addu32...........................PASS in 0.000004949s
math::checked::addu64...........................PASS in 0.000004498s
math::checked::addu8............................PASS in 0.000004448s
math::checked::muli16...........................PASS in 0.000004679s
math::checked::muli32...........................PASS in 0.000005109s
math::checked::muli64...........................PASS in 0.000002455s
math::checked::muli8............................PASS in 0.000003367s
math::checked::mulu16...........................PASS in 0.000002174s
math::checked::mulu32...........................PASS in 0.000003447s
math::checked::mulu64...........................PASS in 0.000003687s
math::checked::mulu8............................PASS in 0.000003376s
math::checked::sat_addi16.......................PASS in 0.000003337s
math::checked::sat_addi32.......................PASS in 0.000001984s
math::checked::sat_addi64.......................PASS in 0.000006381s
math::checked::sat_addi8........................PASS in 0.000003327s
math::checked::sat_addu16.......................PASS in 0.000003076s
math::checked::sat_addu32.......................PASS in 0.000002876s
math::checked::sat_addu64.......................PASS in 0.000003196s
math::checked::sat_addu8........................PASS in 0.000003125s
math::checked::sat_muli16.......................PASS in 0.000002605s
math::checked::sat_muli32.......................PASS in 0.000003176s
math::checked::sat_muli64.......................PASS in 0.000002254s
math::checked::sat_muli8........................PASS in 0.000002996s
math::checked::sat_mulu16.......................PASS in 0.000002314s
math::checked::sat_mulu32.......................PASS in 0.000003056s
math::checked::sat_mulu64.......................PASS in 0.000003316s
math::checked::sat_mulu8........................PASS in 0.000003126s
math::checked::sat_subi16.......................PASS in 0.000003055s
math::checked::sat_subi32.......................PASS in 0.000002465s
math::checked::sat_subi64.......................PASS in 0.000003065s
math::checked::sat_subi8........................PASS in 0.000002055s
math::checked::sat_subu16.......................PASS in 0.000002685s
math::checked::sat_subu32.......................PASS in 0.000005921s
math::checked::sat_subu64.......................PASS in 0.000002755s
math::checked::sat_subu8........................PASS in 0.000002556s
math::checked::subi16...........................PASS in 0.000003286s
math::checked::subi32...........................PASS in 0.000006793s
math::checked::subi64...........................PASS in 0.000003466s
math::checked::subi8............................PASS in 0.000003196s
math::checked::subu16...........................PASS in 0.000002946s
math::checked::subu32...........................PASS in 0.000003256s
math::checked::subu64...........................PASS in 0.000006562s
math::checked::subu8............................PASS in 0.000003266s
math::complex::abs..............................PASS in 0.000011080s
math::complex::acos.............................PASS in 0.000025749s
math::complex::acosh............................PASS in 0.000018034s
math::complex::asin.............................PASS in 0.000039134s
math::complex::asinh............................PASS in 0.000029275s
math::complex::atan.............................PASS in 0.000009067s
math::complex::atanh............................PASS in 0.000012724s
math::complex::conj.............................PASS in 0.000004619s
math::complex::cos..............................PASS in 0.000008807s
math::complex::cosh.............................PASS in 0.000015720s
math::complex::exp..............................PASS in 0.000006933s
math::complex::isnan............................PASS in 0.000003807s
math::complex::log..............................PASS in 0.000018625s
math::complex::polar............................PASS in 0.000005701s
math::complex::pow..............................PASS in 0.000030587s
math::complex::rect.............................PASS in 0.000006523s
math::complex::sin..............................PASS in 0.000027392s
math::complex::sinh.............................PASS in 0.000010831s
math::complex::sqrt.............................PASS in 0.000011391s
math::complex::tan..............................PASS in 0.000009949s
math::complex::tanh.............................PASS in 0.000008105s
math::complex::tanhuge..........................PASS in 0.000007615s
math::copysign..................................PASS in 0.000004519s
math::cos.......................................PASS in 0.000004979s
math::cosh......................................PASS in 0.000005070s
math::divu......................................PASS in 0.000009228s
math::exp2f64...................................PASS in 0.000004909s
math::expf64....................................PASS in 0.000007704s
math::fexcept...................................PASS in 0.000017473s
math::float_normality...........................PASS in 0.000003947s
math::floatbits.................................PASS in 0.000004027s
math::floor.....................................PASS in 0.000003115s
math::frexp.....................................PASS in 0.000008035s
math::frexp_ldexp...............................PASS in 0.000005360s
math::fround....................................PASS in 0.000007263s
math::gcd.......................................PASS in 0.000007614s
math::hypot.....................................PASS in 0.000020178s
math::isclose...................................PASS in 0.000002605s
math::isinf.....................................PASS in 0.000003968s
math::isnan.....................................PASS in 0.000004268s
math::leading_zeros_u...........................PASS in 0.000003326s
math::log10f64..................................PASS in 0.000004538s
math::log1p.....................................PASS in 0.000004539s
math::log2f64...................................PASS in 0.000003477s
math::logf64....................................PASS in 0.000004488s
math::modf64....................................PASS in 0.000018014s
math::modfrac...................................PASS in 0.000004118s
math::mulu......................................PASS in 0.000004088s
math::nearbyint.................................PASS in 0.000004519s
math::nextafter.................................PASS in 0.000007935s
math::normalize.................................PASS in 0.000002414s
math::popcount..................................PASS in 0.000015299s
math::powf64....................................PASS in 0.000009788s
math::random::rng...............................PASS in 0.000017203s
math::remu......................................PASS in 0.000003146s
math::round.....................................PASS in 0.000004288s
math::signf.....................................PASS in 0.000004458s
math::signi.....................................PASS in 0.000004368s
math::sin.......................................PASS in 0.000016812s
math::sinh......................................PASS in 0.000004068s
math::sqrt......................................PASS in 0.000007044s
math::tan.......................................PASS in 0.000003377s
math::tanh......................................PASS in 0.000005621s
math::trailing_zeros_u..........................PASS in 0.000006893s
math::trig_reduce...............................PASS in 0.000005400s
math::trunc.....................................PASS in 0.000003256s
memio::concat...................................PASS in 0.000015619s
memio::dynamic..................................PASS in 0.000012283s
memio::fixed....................................PASS in 0.000011091s
memio::join.....................................PASS in 0.000011352s
memio::rconcat..................................PASS in 0.000018705s
memio::rjoin....................................PASS in 0.000007754s
mime::lookup_ext................................PASS in 0.000012724s
mime::lookup_mime...............................PASS in 0.000006001s
mime::parse.....................................PASS in 0.000010319s
net::dns::opcode................................PASS in 0.000004369s
net::ip::parse_ip...............................PASS in 0.000081703s
net::ip::parse_subnet...........................PASS in 0.000015489s
net::ip::test_subnet_contains...................PASS in 0.000016721s
net::uri::decodequery...........................PASS in 0.000019977s
net::uri::encodequery...........................PASS in 0.000009208s
net::uri::invalid...............................PASS in 0.000022102s
net::uri::percent_encoding......................PASS in 0.000057417s
net::uri::roundtrip.............................PASS in 0.000093936s
path::dirname_basename..........................PASS in 0.000127018s
path::ext.......................................PASS in 0.000009187s
path::iter......................................PASS in 0.000013866s
path::pop.......................................PASS in 0.000020989s
path::prepend...................................PASS in 0.000041417s
path::push......................................PASS in 0.000007834s
regex::find.....................................PASS in 0.009079040s
regex::findall..................................PASS in 0.000373360s
regex::rawreplace...............................PASS in 0.000464372s
regex::replace..................................PASS in 0.000591700s
rt::sigset_invalid_signum.......................PASS in 0.000002164s
rt::sigset_valid_signum.........................PASS in 0.000005660s
rt::unknown_errno...............................PASS in 0.000005390s
shlex::quote....................................PASS in 0.000016140s
shlex::split....................................PASS in 0.000049212s
sort::big_equal.................................PASS in 0.010035984s
sort::big_random................................PASS in 0.017337141s
sort::lbisect...................................PASS in 0.000003246s
sort::rbisect...................................PASS in 0.000003025s
sort::search....................................PASS in 0.000009147s
sort::sort......................................PASS in 0.000025057s
sort::sorted....................................PASS in 0.000004108s
strconv::ftosf..................................PASS in 0.000283944s
strconv::itos...................................PASS in 0.000003216s
strconv::itos_bases.............................PASS in 0.000007053s
strconv::stof32.................................PASS in 0.000017913s
strconv::stof64.................................PASS in 0.000056225s
strconv::stofhex................................PASS in 0.000007063s
strconv::stoi...................................PASS in 0.000018726s
strconv::stoi_bases.............................PASS in 0.000004067s
strconv::stou...................................PASS in 0.000004278s
strconv::stou_bases.............................PASS in 0.000015289s
strconv::utos...................................PASS in 0.000004349s
strconv::utos_bases.............................PASS in 0.000007735s
strings::byteindex..............................PASS in 0.000012754s
strings::compare................................PASS in 0.000003977s
strings::concat.................................PASS in 0.000004419s
strings::contains...............................PASS in 0.000009618s
strings::cut....................................PASS in 0.000006973s
strings::dup....................................PASS in 0.000008075s
strings::dupall.................................PASS in 0.000004599s
strings::fromrunes..............................PASS in 0.000012975s
strings::hasprefix..............................PASS in 0.000004268s
strings::hassuffix..............................PASS in 0.000007394s
strings::index..................................PASS in 0.000022472s
strings::iter...................................PASS in 0.000004899s
strings::join...................................PASS in 0.000003817s
strings::lpad...................................PASS in 0.000008345s
strings::multireplace...........................PASS in 0.000007414s
strings::replace................................PASS in 0.000006843s
strings::rpad...................................PASS in 0.000005100s
strings::slice..................................PASS in 0.000010539s
strings::split..................................PASS in 0.000014367s
strings::sub....................................PASS in 0.000005350s
strings::template::template.....................PASS in 0.000050195s
strings::tokenize...............................PASS in 0.000005621s
strings::trim...................................PASS in 0.000023234s
strings::utf8...................................PASS in 0.000007735s
test::_abort....................................PASS in 0.000125445s
test::exit......................................PASS in 0.000008456s
time::add.......................................PASS in 0.000017162s
time::chrono::utc_convfrom_tai..................PASS in 0.000250600s
time::chrono::utc_convto_tai....................PASS in 0.000007485s
time::compare...................................PASS in 0.001066491s
time::date::calc_daydate__isoywd................PASS in 0.000003085s
time::date::calc_daydate__yd....................PASS in 0.000003336s
time::date::calc_daydate__ymd...................PASS in 0.000004419s
time::date::calc_daydate__ywd...................PASS in 0.000004909s
time::date::calc_janfirstweekday................PASS in 0.000002484s
time::date::calc_sundayweek.....................PASS in 0.000006151s
time::date::calc_week...........................PASS in 0.000002484s
time::date::calc_weekday........................PASS in 0.000008756s
time::date::calc_yearday........................PASS in 0.000002354s
time::date::calc_ymd............................PASS in 0.000007815s
time::date::format..............................PASS in 0.000043281s
time::date::from_str............................PASS in 0.000033573s
time::date::hop.................................PASS in 0.000013355s
time::date::parse...............................PASS in 0.000024837s
time::date::reckon..............................PASS in 0.000098605s
time::date::traverse............................PASS in 0.000014647s
time::date::truncate............................PASS in 0.000032511s
time::mult......................................PASS in 0.000005401s
types::c::strings...............................PASS in 0.000005169s
types::c::strlen................................PASS in 0.000003647s
types::c::strnlen...............................PASS in 0.000006732s
unix::hosts::errors.............................PASS in 0.000041828s
unix::hosts::lookup.............................PASS in 0.000029255s
unix::hosts::next...............................PASS in 0.000029876s
unix::passwd::nextgr............................PASS in 0.000023955s
unix::passwd::nextpw............................PASS in 0.000024386s
unix::signal::test_handle.......................SKIP in 0.000011552s
unix::tty::pty..................................PASS in 0.000201438s
uuid::decode....................................PASS in 0.000005330s
uuid::encode....................................PASS in 0.000013785s
wordexp::wordexp................................PASS in 0.005124101s
wordexp::wordexp_error..........................PASS in 0.001185062s
Skipped crypto::argon2::samples_slow: Requires HARETEST_INCLUDE='slow'
Skipped crypto::ecdh::nist_p256_full: Requires HARETEST_INCLUDE='slow'
Skipped crypto::ecdh::nist_p384_full: Requires HARETEST_INCLUDE='slow'
Skipped crypto::ecdh::nist_p521_full: Requires HARETEST_INCLUDE='slow'
Skipped crypto::ecdsa::ecdsa_rfc6979: Requires HARETEST_INCLUDE='slow'
Skipped crypto::sha1::sha1_1gb: Requires HARETEST_INCLUDE='slow'
Skipped crypto::sha256::sha256_1gb: Requires HARETEST_INCLUDE='slow'
Skipped unix::signal::test_handle: Requires HARETEST_INCLUDE='integration'
571 passed; 0 failed; 8 skipped; 579 completed in 1.121427144s
rm .cache/time.s .cache/encoding_utf8.s .cache/hare_ast.s .cache/hare_lex.s .cache/crypto_sha256.s .cache/strings.s .cache/os.s .cache/io.s .cache/fmt.s .cache/dirs.s .cache/shlex.s .cache/cmd_hare_build.s .cache/encoding_hex.s .cache/format_elf.s .cache/unix.s .cache/sort_cmp.s .cache/sort.s .cache/strconv.s .cache/errors.s .cache/getopt.s .cache/linux.s .cache/hash.s .cache/ascii.s .cache/fs.s .cache/bufio.s .cache/types.s .cache/types_c.s .cache/cmd_hare.s .cache/hare_parse.s .cache/path.s .cache/linux_vdso.s .cache/endian.s .cache/bytes.s .cache/os_exec.s .cache/crypto_math.s .cache/hare_unparse.s .cache/math.s .cache/hare_module.s .cache/unix_tty.s .cache/unix_signal.s .cache/memio.s
|