Our Compiler Qualification Service is a fast and efficient way to get your compiler qualified. On completion, you receive a compiler qualification report compliant with the functional safety standard that you specify. Yet, no compiler is perfect. The report will require that you implement a number of mitigations to avoid stepping into a compiler defect. One of the options to automate this is the Application Hazard Scanner.
Don’t expect your compiler to work flawlessly. It’s inevitable that whenever you really put a new or old compiler through its paces, you’ll find one or more defects. That’s why every compiler qualification report includes a safety manual that lists the compiler defects we found, and the workarounds (mitigations) you need to put in place so you can use the compiler safely.
For a typical compiler, there may be somewhere between thirty and a hundred mitigations. If your project deadline is close, that’s not good news.* ** You don’t want your source code to be compiled incorrectly because of a missing work-around. Almost all mitigations are of the form “do not use this programming construct in this context”. Many can be verified by creating an ad hoc scanner or extending an existing verification tool.
However, that is not always sufficient. We recently qualified a compiler with a serious run-time error in the implementation of bit-fields in combination with optimization. Since the software project needed bit-fields and optimization, we worked hard to define a laser-sharp workaround based on precise typing constraints that allowed the safe use of bit-fields. Nevertheless, the verification of these required (non-trivial) constraints had to be done manually.
That’s why we are introducing an addition to our Compiler Qualification Service – the Application Hazard Scanner.
The Application Hazard Scanner is a static analyzer specifically constructed to verify that your software is not affected by any of the compiler defects that our qualification identified. It is based on the well-regarded and robust ECLAIR software verification platform by BUGSENG. It is easy to deploy because it can intercept any call to the compiler, so no changes are required to the build process. Most importantly, the Application Hazard Scanner is automatic. Whether you have 5,000 or 500,000 lines of source code in your project, the scanner makes sure you have addressed all the requirements of the safety manual.
* Note from our technical team: we do not recommend that you wait until your project deadline is close!
** Note from our sales team: even if the deadline is close, do not hesitate to contact us. We’ll make it work!
Dr. Marcel Beemster, CTO
Subscribe to our monthly blog!