×

生活驱动的随机程序生成。 (英语) Zbl 1508.68054号

Fioravanti,Fabio(编辑)等,基于逻辑的程序合成和转换。第27届国际研讨会,2017年LOPSTR,2017年10月10日至12日,比利时纳穆尔。修订了选定的论文。查姆:斯普林格。勒克特。注释计算。科学。10855, 112-127 (2018).
摘要:随机生成的程序在测试编译器和程序分析工具中很受欢迎,通过随机测试在现实世界的C编译器中发现了数百个错误。然而,现有的随机程序生成器可能会生成大量死代码(其结果从未使用过的计算)。这就留下了相对较少的代码来执行目标编译器更复杂的优化。
为了解决这个缺点,我们引入了活性驱动的随机程序生成。在这种方法中,随机程序是自下而上构建的,由同步的结构数据流分析指导,以确保生成器永远不会生成死代码。
该算法是作为Frama-C框架的插件实现的。我们将其与标准随机C程序生成器Csmith进行比较。我们的工具生成的程序可以用更复杂的指令组合编译成更多的机器代码。
关于整个系列,请参见[Zbl 1392.68017号].

MSC公司:

68号30 软件工程的数学方面(规范、验证、度量、需求等)
68甲15 编程语言理论
68N20型 编译与解释理论
PDF格式BibTeX公司 XML格式引用