Modified condition/decision coverage(MC/DC)oriented compiler optimization for symbolic execution  

在线阅读下载全文

作  者:Wei-jiang HONG Yi-jun LIU Zhen-bang CHEN Wei DONG Ji WANG 

机构地区:[1]College of Computer,National University of Defense Technology,Changsha 410073,China [2]State Key Laboratory of High Performance Computing,National University of Defense Technology,Changsha 410073,China

出  处:《Frontiers of Information Technology & Electronic Engineering》2020年第9期1267-1284,共18页信息与电子工程前沿(英文版)

基  金:Project supported by the National Key R&D Program of China(No.2017YFB1001802);the National Natural Science Foundation of China(Nos.61472440,61632015,61690203,and 61532007)。

摘  要:Symbolic execution is an effective way of systematically exploring the search space of a program,and is often used for automatic software testing and bug finding.The program to be analyzed is usually compiled into a binary or an intermediate representation,on which symbolic execution is carried out.During this process,compiler optimizations influence the effectiveness and efficiency of symbolic execution.However,to the best of our knowledge,there exists no work on compiler optimization recommendation for symbolic execution with respect to(w.r.t.)modified condition/decision coverage(MC/DC),which is an important testing coverage criterion widely used for mission-critical software.This study describes our use of a state-of-the-art symbolic execution tool to carry out extensive experiments to study the impact of compiler optimizations on symbolic execution w.r.t.MC/DC.The results indicate that instruction combining(IC)optimization is the important and dominant optimization for symbolic execution w.r.t.MC/DC.We designed and implemented a support vector machine based optimization recommendation method w.r.t.IC(denoted as auto).The experiments on two standard benchmarks(Coreutils and NECLA)showed that auto achieves the best MC/DC on 67.47%of Coreutils programs and 78.26%of NECLA programs.

关 键 词:Compiler optimization Modified condition/decision coverage(MC/DC) Optimization recommendation Symbolic execution 

分 类 号:TP311.5[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象