Solid Sands is proud to be a sponsor of the 2015 Euro LLVM Conference!

The importance of vigorous quality assurance during compiler development goes without saying. LLVM compiler developers often prefer to deal with the very latest version of LLVM – not because they like living on the edge but because they want to handle changes one at a time. Waiting for stable releases means having to cope with changes in bulk. Because of the very nature of open source development, not all of those changes are spelled out in the documentation or release notes.

SuperTest has a number of unique qualities that support this style of development, and compiler quality in general:

  • SuperTest is fast: it can run multi-threaded on your workstation and if you prefer it to work even faster you can also configure it to employ multiple workstations for a single test-run. You can run the core suite in minutes – faster than it takes to walk to the coffee corner and back. This also implies that you can run many configurations and different option settings in a limited time.
  • SuperTest is independent: of course you can, and should, use the open source test suites as well. But everybody does that already and those were not put together in a systematic fashion – they were put together to verify that old issues do not reappear. SuperTest is designed to verify language conformance, going through the C and C++ standard one line at a time, catching corner cases.
  • SuperTest comes with Depth Suites adapted to more than 30 different target data models: the C standard does not tell you how many bits an int should have. But your compiler knows, and your test-suite should know. A SuperTest Depth Suite contains a data model specific, exhaustive arithmetic test-suite for combinations of arithmetic types and operations, up to five operators deep. Next to all the data models that are already supported, we are pleased to generate a depth suite especially for you with no additional fee.
  • SuperTest is a great match for embedded targets: 80% of the tests compile to less than 2 KBytes of instructions. All tests are self-validating, returning their status in a single value. That means you don’t need an OS or I/O library to run on your embedded system. If you can get a single status bit from the target, you can run SuperTest.

And of course, SuperTest support is just one email or phone call away. We also love to talk to you about the interpretation of the C and C++ language standards!

Meet us at the 2015 Euro LLVM Conference in London. Our CTO, Marcel Beemster, is attending and is looking forward to make your acquaintance.