Ivailo Monev
3227047514
drop BLAKE3 in favour of custom hash algorithm
...
faster than BLAKE3 and the other algorithms with collisions risk
reduced based on the length of the input data, benchmark result:
********* Start testing of tst_qcryptographichash *********
Config: Using QTest library 4.12.0, Katie 4.12.0
PASS : tst_qcryptographichash::initTestCase()
RESULT : tst_qcryptographichash::append():"10 (Md5)":
0.00280 msecs per iteration (total: 561, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha1)":
0.00333 msecs per iteration (total: 667, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha256)":
0.00467 msecs per iteration (total: 934, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha512)":
0.00361 msecs per iteration (total: 723, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (KAT)":
0.00219 msecs per iteration (total: 439, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Md5)":
0.000620 msecs per iteration (total: 124, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha1)":
0.00109 msecs per iteration (total: 219, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha256)":
0.000900 msecs per iteration (total: 180, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha512)":
0.00106 msecs per iteration (total: 212, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (KAT)":
0.000740 msecs per iteration (total: 148, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Md5)":
0.000580 msecs per iteration (total: 116, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha1)":
0.00134 msecs per iteration (total: 268, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha256)":
0.000845 msecs per iteration (total: 169, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha512)":
0.00100 msecs per iteration (total: 200, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (KAT)":
0.000625 msecs per iteration (total: 125, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Md5)":
0.000550 msecs per iteration (total: 110, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha1)":
0.00137 msecs per iteration (total: 274, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha256)":
0.000830 msecs per iteration (total: 166, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha512)":
0.000985 msecs per iteration (total: 197, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (KAT)":
0.000575 msecs per iteration (total: 115, iterations: 200000)
PASS : tst_qcryptographichash::append()
RESULT : tst_qcryptographichash::append_once():"Md5":
0.00155 msecs per iteration (total: 310, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha1":
0.00212 msecs per iteration (total: 424, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha256":
0.00414 msecs per iteration (total: 828, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha512":
0.00314 msecs per iteration (total: 629, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"KAT":
0.000805 msecs per iteration (total: 161, iterations: 200000)
PASS : tst_qcryptographichash::append_once()
RESULT : tst_qcryptographichash::statichash():"Md5":
0.00149 msecs per iteration (total: 298, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha1":
0.00206 msecs per iteration (total: 413, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha256":
0.00408 msecs per iteration (total: 817, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha512":
0.00309 msecs per iteration (total: 618, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"KAT":
0.000610 msecs per iteration (total: 122, iterations: 200000)
PASS : tst_qcryptographichash::statichash()
PASS : tst_qcryptographichash::cleanupTestCase()
Totals: 5 passed, 0 failed, 0 skipped
********* Finished testing of tst_qcryptographichash *********
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-13 23:07:11 +02:00
Ivailo Monev
4e5220dede
drop BLAKE2b and BLAKE2s in favour of BLAKE3
...
unfortunetly the reference C implementation
(https://github.com/oconnor663/blake3_reference_impl_c ) was slower on
static hash benchmark, faster on incremental hashing tho. while BLAKE2b
and BLAKE2s were faster than SHA-2 on incremental hashing BLAKE3 is
faster on both static and incremental hashing (compared to SHA-256),
benchmark results:
********* Start testing of tst_qcryptographichash *********
Config: Using QTest library 4.12.0, Katie 4.12.0
PASS : tst_qcryptographichash::initTestCase()
RESULT : tst_qcryptographichash::append():"10 (Md5)":
0.00281 msecs per iteration (total: 563, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha1)":
0.00334 msecs per iteration (total: 669, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha256)":
0.00468 msecs per iteration (total: 936, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha512)":
0.00366 msecs per iteration (total: 732, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (BLAKE3)":
0.00219 msecs per iteration (total: 438, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Md5)":
0.000660 msecs per iteration (total: 132, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha1)":
0.00112 msecs per iteration (total: 224, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha256)":
0.000935 msecs per iteration (total: 187, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha512)":
0.00108 msecs per iteration (total: 216, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (BLAKE3)":
0.000775 msecs per iteration (total: 155, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Md5)":
0.000590 msecs per iteration (total: 118, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha1)":
0.00135 msecs per iteration (total: 271, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha256)":
0.000870 msecs per iteration (total: 174, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha512)":
0.00101 msecs per iteration (total: 203, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (BLAKE3)":
0.000655 msecs per iteration (total: 131, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Md5)":
0.000575 msecs per iteration (total: 115, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha1)":
0.00138 msecs per iteration (total: 276, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha256)":
0.000855 msecs per iteration (total: 171, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha512)":
0.00100 msecs per iteration (total: 200, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (BLAKE3)":
0.000610 msecs per iteration (total: 122, iterations: 200000)
PASS : tst_qcryptographichash::append()
RESULT : tst_qcryptographichash::append_once():"Md5":
0.00157 msecs per iteration (total: 315, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha1":
0.00217 msecs per iteration (total: 434, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha256":
0.00428 msecs per iteration (total: 857, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha512":
0.00319 msecs per iteration (total: 638, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"BLAKE3":
0.00164 msecs per iteration (total: 329, iterations: 200000)
PASS : tst_qcryptographichash::append_once()
RESULT : tst_qcryptographichash::statichash():"Md5":
0.00149 msecs per iteration (total: 299, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha1":
0.00206 msecs per iteration (total: 413, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha256":
0.00408 msecs per iteration (total: 816, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha512":
0.00308 msecs per iteration (total: 616, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"BLAKE3":
0.00137 msecs per iteration (total: 274, iterations: 200000)
PASS : tst_qcryptographichash::statichash()
PASS : tst_qcryptographichash::cleanupTestCase()
Totals: 5 passed, 0 failed, 0 skipped
********* Finished testing of tst_qcryptographichash *********
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-11 21:15:42 +02:00
Ivailo Monev
5bc2639e82
replace blake2b_explicit_memset() and blake2s_explicit_memset_impl with memset() for minor performance gain
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-11 07:07:25 +02:00
Ivailo Monev
0a6f72df2b
keyless BLAKE2b and BLAKE2s hash sums optimization
...
minor performance gain, benchmark results:
********* Start testing of tst_qcryptographichash *********
Config: Using QTest library 4.12.0, Katie 4.12.0
PASS : tst_qcryptographichash::initTestCase()
RESULT : tst_qcryptographichash::append():"10 (Md5)":
0.00278 msecs per iteration (total: 556, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Md5)":
0.000640 msecs per iteration (total: 128, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Md5)":
0.000605 msecs per iteration (total: 121, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Md5)":
0.000560 msecs per iteration (total: 112, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha1)":
0.00332 msecs per iteration (total: 664, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha1)":
0.00109 msecs per iteration (total: 218, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha1)":
0.00133 msecs per iteration (total: 267, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha1)":
0.00136 msecs per iteration (total: 272, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha256)":
0.00473 msecs per iteration (total: 946, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha256)":
0.000945 msecs per iteration (total: 189, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha256)":
0.000895 msecs per iteration (total: 179, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha256)":
0.000860 msecs per iteration (total: 172, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha512)":
0.00361 msecs per iteration (total: 723, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha512)":
0.00106 msecs per iteration (total: 213, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha512)":
0.00100 msecs per iteration (total: 201, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha512)":
0.000995 msecs per iteration (total: 199, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (BLAKE2b)":
0.00279 msecs per iteration (total: 558, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (BLAKE2b)":
0.000735 msecs per iteration (total: 147, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (BLAKE2b)":
0.000690 msecs per iteration (total: 138, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (BLAKE2b)":
0.000675 msecs per iteration (total: 135, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (BLAKE2s)":
0.00335 msecs per iteration (total: 671, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (BLAKE2s)":
0.000665 msecs per iteration (total: 133, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (BLAKE2s)":
0.000620 msecs per iteration (total: 124, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (BLAKE2s)":
0.000600 msecs per iteration (total: 120, iterations: 200000)
PASS : tst_qcryptographichash::append()
RESULT : tst_qcryptographichash::append_once():"Md5":
0.00154 msecs per iteration (total: 309, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha1":
0.00212 msecs per iteration (total: 424, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha256":
0.00420 msecs per iteration (total: 841, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha512":
0.00313 msecs per iteration (total: 627, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"BLAKE2b":
0.00164 msecs per iteration (total: 328, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"BLAKE2s":
0.00218 msecs per iteration (total: 437, iterations: 200000)
PASS : tst_qcryptographichash::append_once()
RESULT : tst_qcryptographichash::statichash():"Md5":
0.00149 msecs per iteration (total: 299, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha1":
0.00207 msecs per iteration (total: 415, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha256":
0.00411 msecs per iteration (total: 822, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha512":
0.00307 msecs per iteration (total: 615, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"BLAKE2b":
0.00157 msecs per iteration (total: 314, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"BLAKE2s":
0.00209 msecs per iteration (total: 419, iterations: 200000)
PASS : tst_qcryptographichash::statichash()
RESULT : tst_qcryptographichash::algorithms():"Md5":
0.00148 msecs per iteration (total: 297, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"Sha1":
0.00207 msecs per iteration (total: 415, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"Sha256":
0.00413 msecs per iteration (total: 827, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"Sha512":
0.00306 msecs per iteration (total: 613, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"BLAKE2b":
0.00157 msecs per iteration (total: 315, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"BLAKE2s":
0.00209 msecs per iteration (total: 419, iterations: 200000)
PASS : tst_qcryptographichash::algorithms()
PASS : tst_qcryptographichash::cleanupTestCase()
Totals: 6 passed, 0 failed, 0 skipped
********* Finished testing of tst_qcryptographichash *********
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-11 07:02:39 +02:00
Ivailo Monev
75589486a3
add support for BLAKE2b and BLAKE2s hash sums
...
benchmark results:
********* Start testing of tst_qcryptographichash *********
Config: Using QTest library 4.12.0, Katie 4.12.0
PASS : tst_qcryptographichash::initTestCase()
RESULT : tst_qcryptographichash::append():"10 (Md5)":
0.00275 msecs per iteration (total: 551, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Md5)":
0.000625 msecs per iteration (total: 125, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Md5)":
0.000570 msecs per iteration (total: 114, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Md5)":
0.000550 msecs per iteration (total: 110, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha1)":
0.00327 msecs per iteration (total: 655, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha1)":
0.00106 msecs per iteration (total: 212, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha1)":
0.00131 msecs per iteration (total: 262, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha1)":
0.00133 msecs per iteration (total: 267, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha256)":
0.00467 msecs per iteration (total: 934, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha256)":
0.000895 msecs per iteration (total: 179, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha256)":
0.000850 msecs per iteration (total: 170, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha256)":
0.000825 msecs per iteration (total: 165, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (Sha512)":
0.00361 msecs per iteration (total: 723, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (Sha512)":
0.00105 msecs per iteration (total: 211, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (Sha512)":
0.000995 msecs per iteration (total: 199, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (Sha512)":
0.000980 msecs per iteration (total: 196, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (BLAKE2b)":
0.00278 msecs per iteration (total: 557, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (BLAKE2b)":
0.000740 msecs per iteration (total: 148, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (BLAKE2b)":
0.000690 msecs per iteration (total: 138, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (BLAKE2b)":
0.000650 msecs per iteration (total: 130, iterations: 200000)
RESULT : tst_qcryptographichash::append():"10 (BLAKE2s)":
0.00335 msecs per iteration (total: 670, iterations: 200000)
RESULT : tst_qcryptographichash::append():"100 (BLAKE2s)":
0.000645 msecs per iteration (total: 129, iterations: 200000)
RESULT : tst_qcryptographichash::append():"250 (BLAKE2s)":
0.000600 msecs per iteration (total: 120, iterations: 200000)
RESULT : tst_qcryptographichash::append():"500 (BLAKE2s)":
0.000580 msecs per iteration (total: 116, iterations: 200000)
PASS : tst_qcryptographichash::append()
RESULT : tst_qcryptographichash::append_once():"Md5":
0.00154 msecs per iteration (total: 308, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha1":
0.00211 msecs per iteration (total: 422, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha256":
0.00415 msecs per iteration (total: 831, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"Sha512":
0.00314 msecs per iteration (total: 629, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"BLAKE2b":
0.00164 msecs per iteration (total: 328, iterations: 200000)
RESULT : tst_qcryptographichash::append_once():"BLAKE2s":
0.00217 msecs per iteration (total: 435, iterations: 200000)
PASS : tst_qcryptographichash::append_once()
RESULT : tst_qcryptographichash::statichash():"Md5":
0.00148 msecs per iteration (total: 297, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha1":
0.00206 msecs per iteration (total: 412, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha256":
0.00409 msecs per iteration (total: 818, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"Sha512":
0.00307 msecs per iteration (total: 614, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"BLAKE2b":
0.00157 msecs per iteration (total: 314, iterations: 200000)
RESULT : tst_qcryptographichash::statichash():"BLAKE2s":
0.00211 msecs per iteration (total: 422, iterations: 200000)
PASS : tst_qcryptographichash::statichash()
RESULT : tst_qcryptographichash::algorithms():"Md5":
0.00148 msecs per iteration (total: 297, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"Sha1":
0.00206 msecs per iteration (total: 412, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"Sha256":
0.00409 msecs per iteration (total: 819, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"Sha512":
0.00307 msecs per iteration (total: 614, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"BLAKE2b":
0.00157 msecs per iteration (total: 314, iterations: 200000)
RESULT : tst_qcryptographichash::algorithms():"BLAKE2s":
0.00212 msecs per iteration (total: 424, iterations: 200000)
PASS : tst_qcryptographichash::algorithms()
PASS : tst_qcryptographichash::cleanupTestCase()
Totals: 6 passed, 0 failed, 0 skipped
********* Finished testing of tst_qcryptographichash *********
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-11 06:22:46 +02:00
Ivailo Monev
1b3c209010
build fix for the case when compiler mode is C++17 or newer
...
documented at https://en.cppreference.com/w/cpp/regex/basic_regex , good
thing JSC regex are not used for anything relevant, Kate uses some in its
indendation scripts and that's about it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-04 23:32:40 +02:00
Ivailo Monev
dbb384c991
typo
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-03-01 01:12:26 +02:00
Ivailo Monev
19c7089395
reimplement javascriptcore regexp via std::regex
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-28 05:08:23 +02:00
Ivailo Monev
9523650a93
update 3rdparty sources README file [ci skip]
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-24 01:11:40 +02:00
Ivailo Monev
4a129d3e5a
drop Md4 support
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-24 00:44:30 +02:00
Ivailo Monev
a38af51159
fix byte-order definition checks
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-21 17:41:16 +02:00
Ivailo Monev
7e64b9a263
remove declaration of non-existing hashing functions
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-21 17:39:08 +02:00
Ivailo Monev
f04d2b3ad3
get rid of OpenSSL dependency
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-21 17:11:05 +02:00
Ivailo Monev
047e4c2610
bundle libdeflate to make it optional
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-02-05 23:08:55 +02:00
Ivailo Monev
7a006c1d41
trim down harfbuzz
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-01-01 00:17:43 +02:00
Ivailo Monev
ec41ce576c
sync harfbuzz with unicode tables and fix indic shaper
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-12-26 23:13:02 +02:00
Ivailo Monev
b82611fc2a
namespace easing functions
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-09-08 02:55:07 +03:00
Ivailo Monev
20090b989a
get rid of qvsnprintf() and qsnprintf() [ci reset]
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-09-07 19:58:41 +03:00
Ivailo Monev
586698e968
call QThread::sleep(), QThread::msleep() or QThread::usleep() where possible
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-09-06 19:09:02 +03:00
Ivailo Monev
17ca8cf292
remove HTML-related JSC string functions
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-26 14:02:54 +03:00
Ivailo Monev
c036a11eef
assume M_PI is defined
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-25 20:36:02 +03:00
Ivailo Monev
b4d71cc15a
get rid of Q_NULLPTR definition [ci reset]
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-06 15:35:28 +03:00
Ivailo Monev
b90184e871
check errno in JSC long number parser
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-07 21:17:03 +03:00
Ivailo Monev
24073c3a1d
CodeQL warnings fixes
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-07 01:43:31 +03:00
Ivailo Monev
c95b23149b
regenerate JSC grammar
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-07 00:29:08 +03:00
Ivailo Monev
3cdaed92d9
remove redundant definition check in JSC source file
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-04-24 22:10:11 +03:00
Ivailo Monev
2b53e0dfce
JSC structure leak counter fix
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-03-31 02:28:33 +03:00
Ivailo Monev
5010cc7515
replace sizeof(void*) with QT_POINTER_SIZE
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-02-13 00:35:15 +02:00
Ivailo Monev
106d121438
bump the minimum to POSIX.1-2001
...
many POSIX.1-2001 functions are used right now such as strcasecmp(),
strncasecmp(), htonl(), etc.
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-08 10:32:10 +02:00
Ivailo Monev
598bb8cebd
remove mac and xlc support leftovers
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-06 10:32:33 +02:00
Ivailo Monev
5965d6ea74
assume DBL_DIG and FLT_DIG are defined
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-06 10:09:56 +02:00
Ivailo Monev
d8aa6630fb
crash if posix_memalign() fails in Heap::allocateBlock()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-05 11:07:16 +02:00
Ivailo Monev
421cb0a09b
fix stack corruption in JSC
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-01 19:13:19 +02:00
Ivailo Monev
a5c7bd0e82
regenerate JSC grammar
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-23 14:34:50 +00:00
Ivailo Monev
789427863a
properly indent hb_buffer_duplicate_out_buffer()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-16 08:29:51 +00:00
Ivailo Monev
6a993ed9d7
properly allocate and free stream in getTableStream()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-16 08:26:31 +00:00
Ivailo Monev
fa09aa4505
remove now redundant setlocale() call
...
it was required by the iconv codec and key translation based on current
locale which is no more
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-15 10:01:22 +00:00
Ivailo Monev
e74739a094
plug possible memory leak in Load_SingleSubst()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-14 09:40:18 +00:00
Ivailo Monev
34a92207b6
regenerate JSC grammar
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-10 07:29:03 +00:00
Ivailo Monev
7727fcf8c3
reimplement QBenchmarkTickMeasurer via clock_gettime()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-10 07:22:30 +00:00
Ivailo Monev
510d0213e5
initialize static variables
...
uninitialized found via `git grep 'static int' | grep -v -e '=' -e '('`
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-09 14:12:33 +00:00
Ivailo Monev
295d120b74
add legalese note to QEasingCurve
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-12-09 05:01:56 +00:00
Ivailo Monev
b7376b2e53
check for pthread_stackseg_np() during build
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-27 01:23:41 +00:00
Ivailo Monev
5b908937b5
OpenBSD build fix
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-27 01:14:22 +00:00
Ivailo Monev
3896342aa5
prefix getpagesize() call in Heap::allocateBlock()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-26 01:12:21 +00:00
Ivailo Monev
304775706d
make use of Q_DECL_ALIGN() and Q_ALIGNOF() in JSC
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-26 00:27:54 +00:00
Ivailo Monev
57c9842eba
check for timegm(), tm.tm_gmtoff and tm.tm_zone during build
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-25 15:45:57 +00:00
Ivailo Monev
8d75d78a4f
check for posix_memalign(), pthread_attr_get_np() and madvise() during build
...
replace mmap() calls with QT_MMAP() so that mmap64() is called when
supported by the host while at it and remove conditions that are
assumed to always be true
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-25 15:13:47 +00:00
Ivailo Monev
0016067294
do not enable madvise() use on Hurd for JSC
...
Hurd does not have MAD_FREE
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-24 18:14:33 +00:00
Ivailo Monev
043f156dfe
do not enable madvise() use on Solaris for JSC
...
not available if _POSIX_C_SOURCE > 2 or _XPG4_2 is defined which is the
default on OpenIndiana
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2020-11-24 17:53:28 +00:00