Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore a groundbreaking method for compiler bug detection and test-case reduction in programming languages with undefined behavior (UB). Learn about program reconditioning, a technique that enables effective differential testing and bug simplification even when UB detection tools are unavailable. Discover the applications of this approach through two program generation tools: GLSLsmith for OpenGL Shading Language (GLSL) and WGSLsmith for WebGPU Shading Language (WGSL). Examine the results of extensive testing campaigns that uncovered numerous bugs in GLSL and WGSL compilers. Gain insights into the challenges of compiler testing in the presence of UB and understand how reconditioning addresses these issues. Additionally, explore a novel approach to managing floating-point roundoff errors using reconditioning techniques implemented for both GLSL and WGSL.