This artifact accompanies our experience report for our compiler testing technology transfer project: taking the GraphicsFuzz research project on randomized metamorphic testing of graphics shader compilers, and building the necessary tooling around it to provide a highly automated process for improving the Khronos Vulkan Conformance Test Suite (CTS) with test cases that expose fuzzer-found compiler bugs, or that plug gaps in test coverage. The artifact consists of two Dockerfiles and associated files that can be used to build two Docker containers. The containers include our main tool for performing fuzzing: gfauto. The containers allow the user to fuzz SwiftShader, a software Vulkan implementation, finding 4 bugs. The user will also perform some line coverage analysis of SwiftShader using our tools to synthesize a small test that increases line coverage. Ubuntu, gfauto, SwiftShader, and other dependencies inside the Docker containers are fixed at specific versions, and all random seeds are set to specific values. Thus, all examples should reproduce faithfully on any machine.
@Article{donaldson_et_al:DARTS.6.2.3, author = {Donaldson, Alastair F. and Evrard, Hugues and Thomson, Paul}, title = {{Putting Randomized Compiler Testing into Production (Artifact)}}, pages = {3:1--3:2}, journal = {Dagstuhl Artifacts Series}, ISSN = {2509-8195}, year = {2020}, volume = {6}, number = {2}, editor = {Donaldson, Alastair F. and Evrard, Hugues and Thomson, Paul}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/DARTS.6.2.3}, URN = {urn:nbn:de:0030-drops-132005}, doi = {10.4230/DARTS.6.2.3}, annote = {Keywords: Compilers, metamorphic testing, 3D graphics, experience report} }
bcc7f8a6d48dd8b2b92625831a435f36
(Get MD5 Sum)
Feedback for Dagstuhl Publishing