- Avoid -mx32 on compilers that don't support it
- Avoid -m32 on older llvm/clang because it causes a self test error
(and broken code related to packed duk_tval)
- Add -m32, -mx32
- Support parallel runs by dynamic temp names (still pretty hacky)
- Add more compilers and compiler versions
- Add more dialects
- Add more optimization levels
There are some matrix test failures with older compilers, especially
clang/llvm-gcc with -m32 (same double union failure as in FreeBSD 10
clang 3.3 -m32).
Reimplement matrix testing to support proper combination structure like
Select, Combine, Subset, etc. Avoid enumerating the matrix explicitly,
and change testing to use random sampling of the (very large) matrix space.
Improve the testing matrix to include a lot more option combinations. The
set is still not complete and output is not yet warning free with all options
so '-Werror' is not yet enabled in the matrix.
Add convenience Makefile targets like 'matrix10', 'matrix100', etc so that
small matrix tests can be easily run while developing.