Reference : Mart: A Mutant Generation Tool for LLVM
Scientific congresses, symposiums and conference proceedings : Paper published in a book
Engineering, computing & technology : Computer science
Computational Sciences
Mart: A Mutant Generation Tool for LLVM
Titcheu Chekam, Thierry mailto [University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > >]
Papadakis, Mike mailto [University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > Computer Science and Communications Research Unit (CSC) >]
Le Traon, Yves mailto [University of Luxembourg > Faculty of Science, Technology and Communication (FSTC) > Computer Science and Communications Research Unit (CSC) >]
Mart: A Mutant Generation Tool for LLVM
Titcheu Chekam, Thierry mailto
Papadakis, Mike mailto
Le Traon, Yves mailto
The 27th ACM JointEuropean Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2019)
August 26-30
[en] mutation ; mutant operators ; software analysis ; LLVM bitcode ; Trivial Compiler Equivalence
[en] Program mutation makes small syntactic alterations to programs' code in order to artificially create faulty programs (mutants). Mutants are used, in software analysis, to evaluate and improve test suites. Mutants creation (generation) tools are often characterized by their mutation operators and the way they create and represent the mutants.

This paper presents Mart, a mutants generation tool, for LLVM bitcode, that supports the fine-grained definition of mutation operators (as matching rule - replacing pattern pair; uses 816 defined pairs by default) and the restriction of the code parts to mutate. New operators are implemented in Mart by implementing their matching rules and replacing patterns. Mart also implements in-memory Trivial Compiler Equivalence to eliminate equivalent and duplicate mutants during mutants generation. Mart generates mutant code as separated mutant files, meta-mutants file, weak mutation, and mutant coverage instrumented files. The generated LLVM bitcode files can be interpreted using an LLVM interpreter or compiled into native code. Mart is publicly available ( for use by researchers and practitioners.

Mart has been applied to generate mutants for several research experiments and generated more than 4,000,000 mutants.
Researchers ; Professionals ; Students
FnR ; FNR11278802 > Titcheu Chekam Thierry > > Tailoring Automated Software Techniques for Real World and Large Scale Software Applications > 01/03/2016 > 31/01/2020 > 2016

File(s) associated to this reference

Fulltext file(s):

Open access
main.pdfAuthor preprint820.31 kBView/Open

Bookmark and Share SFX Query

All documents in ORBilu are protected by a user license.