summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-26Add mpkg.mpkgOri Bernstein
2018-03-25Make output buffers bigger.Ori Bernstein
Shuts up warning on GCC 8.
2018-03-25Clean up setenv a bit.Ori Bernstein
2018-03-24Clean up and remove edge cases in strfind.Ori Bernstein
2018-03-24Handle subtests correctly.Ori Bernstein
2018-03-24Handle zero length needles.Ori Bernstein
2018-03-24Improve test runner test filtering.Ori Bernstein
Filter on what the user sees. Before, we would use the internal target names, which bore a resemblance to the target names used by the user, but they didn't match perfectly. This led to unintuitive behavior. Now, we filter on a substring of the test name matching. So, you can do something like: mbld test crypto/sha3 instead of mbld test lib/bio/test:delim In addition, not all tests had an explicit target, and these would be impossible to match on. Still left to do is adding subtest patterns.
2018-03-24Add support for OpenBSD's MAP_STACK mmap flags, use it in libthreadOri Bernstein
2018-03-24Add OpenBSD 6.3 system call support.Ori Bernstein
2018-03-24Fix the cpufeatures... er... features on plan 9.Ori Bernstein
2018-03-23Fix the cpufeatures... er... features on plan 9.Ori Bernstein
2018-03-20Allow CPU feature detection by mbld, and add "sse4" tagS. Gilles
This allows writing graceful degradation of optimizations. In practice, it justifies less-than-optimal floating point implementations by allowing a portable upgrade path through AVX, SIMD, &c. Bootstrap scripts are updated by genboostrap.sh on Linux+amd64, and by hand on all others.
2018-03-20Add -T to use *only* the passed sytem tags.Ori Bernstein
2018-03-20Allow intfmt to handle uint64s with {p=0,w=64,b=2}S. Gilles
2018-03-19Check both digits for < KminOri Bernstein
2018-03-17Add benchmark for bigint multiplication.Ori Bernstein
2018-03-17Implement karatsuba multiplication.Ori Bernstein
This is a nice optimization. In the most optimal case, it makes this stupid benchmark about 10 times faster: a = std.mkbigint(17193) b = std.mkbigint(1091327) for var i = 0; i < 12; i++ mul(a, b) mul(b, a) ;; It also makes a decent change (about 10%) on `mbld bench` for bigfactorial, in spite of us mostly not falling into the karatsuba case.
2018-03-14Add incomplete constant time bigint code.Ori Bernstein
2018-03-13Fix extra parens.Ori Bernstein
2018-03-12Reinit nexttid on every run.Ori Bernstein
2018-03-12Bump ABI retroactively.Ori Bernstein
Forgot to do it when adding ternary operator.
2018-03-12Add constant time 'min()' and 'max()'Ori Bernstein
2018-03-10Be a bit more paranoid about memory corruption.Ori Bernstein
Check the tail of slices.
2018-03-10Don't overallocate.Ori Bernstein
We were allocating data that was a bit too big.
2018-03-10Clean up readinto.Ori Bernstein
2018-03-09Remove accidentally committed cruft.Ori Bernstein
2018-03-06Add ternary operator.Ori Bernstein
2018-03-01Fix syscall numbers.Ori Bernstein
2018-02-27Test some fltbits functionsS. Gilles
Test the isnan() and the float <-> bits functions, and correct slight error in isnan(). Adjust mantissa offset in flt32assem, but that function appears unused.
2018-02-27Adjust signs of fltbits functionsS. Gilles
The fltXYbits and fltXYfrombits functions now return/take unsigned integers uniformly, allowing easier round-tripping. Unsigned was chosen to emphasize that the value of the result is probably unrelated to the floating-point value. The fltXYexplode and fltXYassem functions now return the mantissa (significand) unsigned, but the exponent signed. This reflects the allowed ranges represented by the encoding.
2018-02-26Fix build.Ori Bernstein
2018-02-24Add secure clearing util functions.Ori Bernstein
2018-02-23Update 9front bootstrap.Ori Bernstein
2018-02-23Regenerate FreeBSD bootstrap.Ori Bernstein
2018-02-23Regenerate OpenBSD bootstrap.Ori Bernstein
2018-02-23Fix Linux bootstrap.Ori Bernstein
2018-02-20Fix minor leakOri Bernstein
2018-02-19Add some constant time math helpers.Ori Bernstein
2018-02-19Speed up std.clearOri Bernstein
2018-02-18Add hmac implementation.Ori Bernstein
2018-02-18Resolve the impl() type.Ori Bernstein
2018-02-18sjlj types are arch-specific.Ori Bernstein
2018-02-18Add utility functions for testing.Ori Bernstein
2018-02-15Be a bit better about cleaning up fds on error.Ori Bernstein
2018-02-09Fix confusingness with byte sizes/element counts.Ori Bernstein
This was probably buggy.
2018-02-04Free up regexes/strings after benchmark.Ori Bernstein
It's not important to do, but we want to be a good example for newbies.
2018-02-01Add test for bio skipto.Ori Bernstein
2018-02-01Merge branch 'skiptoit' of https://github.com/moreais/mcOri Bernstein
2018-02-02Fix std.skiptoCarlin Bingham
It would only skip past however many characters the delimeter was and would hang if the delimeter wasn't found before eof
2018-01-31Fix 9front buildOri Bernstein
Patched locally, forgot to pusht .