International Journal of Networked and Distributed Computing

Volume 4, Issue 3, July 2016, Pages 137 - 144

MLSA: a static bugs analysis tool based on LLVM IR

Authors
Hongliang Liang, Lei Wang, Dongyang Wu, Jiuyun Xu
Corresponding Author
Hongliang Liang
Available Online 1 July 2016.
DOI
10.2991/ijndc.2016.4.3.1How to use a DOI?
Keywords
symbolic execution; bug detection; static program analysis; LLVM IR; SMT solver
Abstract

Program bugs may result in unexpected software error, crash or serious security attack. Static program analysis is one of the most common methods to find program bugs. In this paper we present MLSA -- a static analysis tool based on LLVM Intermediate Representation (IR), which can analyze programs written in multiple programming languages. MLSA combines symbolic execution with Z3 SMT solver to find bugs. At present, MLSA can detect some kinds of bugs, such as divide zero error, pointer overflow and dead code. Moreover, as a framework, MLSA follows the scalability and extensibility principles, which can help detect other types of bugs. Experiments show that MLSA is effective in finding bugs in real world software.

Copyright
© 2017, the Authors. Published by Atlantis Press.
Open Access
This is an open access article distributed under the CC BY-NC license (http://creativecommons.org/licenses/by-nc/4.0/).

Download article (PDF)

Journal
International Journal of Networked and Distributed Computing
Volume-Issue
4 - 3
Pages
137 - 144
Publication Date
2016/07/01
ISSN (Online)
2211-7946
ISSN (Print)
2211-7938
DOI
10.2991/ijndc.2016.4.3.1How to use a DOI?
Copyright
© 2017, the Authors. Published by Atlantis Press.
Open Access
This is an open access article distributed under the CC BY-NC license (http://creativecommons.org/licenses/by-nc/4.0/).

Cite this article

TY  - JOUR
AU  - Hongliang Liang
AU  - Lei Wang
AU  - Dongyang Wu
AU  - Jiuyun Xu
PY  - 2016
DA  - 2016/07/01
TI  - MLSA: a static bugs analysis tool based on LLVM IR
JO  - International Journal of Networked and Distributed Computing
SP  - 137
EP  - 144
VL  - 4
IS  - 3
SN  - 2211-7946
UR  - https://doi.org/10.2991/ijndc.2016.4.3.1
DO  - 10.2991/ijndc.2016.4.3.1
ID  - Liang2016
ER  -