Finding and understanding bugs in C compilers [pdf] (2011)

原始链接: https://www.cse.unr.edu/~fredh/class/460/S2013/class/Papers/tanna.pdf

%PDF-1.5 % 484 0 obj > endobj 485 0 obj ] /Prev 635255 /W [1 4 1] /Length 400>> stream xKHQЙҹkeo0q(y!ڹQ0+Z c$j*(-t7\hZ"H,pEb#D!-y5 fa9Wx&oq\7XD`'naZ~n 'cN:"|[f$@DMC$Q1FrZ74?YiX縀2T}Ckd! a;.b,ia&Y ڦI el^>-W' /ʍ]!KG~̭nnK#WbJ>?)_Ur-pEN?7sNSpdyˈzsT|sy;$븣}k#JF6J>Xv(c endstream endobj 486 0 obj > stream

The Hacker News post discusses a 2011 paper on finding bugs in C compilers using the Csmith tool. Csmith generates random C programs to perform differential testing, comparing the outputs of different compilers to identify discrepancies and potential bugs. A key challenge is ensuring the generated code avoids undefined behavior, a common pitfall in C. A follow-up paper from 2012 introduces creduce, a tool for minimizing failing test cases generated by Csmith. Creduce is valuable for debugging across various languages and scenarios, but its application to C requires preserving the properties of valid C code free from undefined behaviors during the reduction process.
相关文章

原文
%PDF-1.5 % 484 0 obj > endobj 485 0 obj ] /Prev 635255 /W [1 4 1] /Length 400>> stream xKHQЙҹkeo0q(y!ڹQ0+Z c$j*(-t7\hZ"H,pEb#D!-y5 fa9Wx&oq\7XD`'naZ~n 'cN:"|[f$@DMC$Q1FrZ74?YiX縀2T}Ckd! a;.b,ia&Y ڦI el^>-W' /ʍ]!KG~̭nnK#WbJ>?)_Ur-pEN?7sNSpdyˈzsT|sy;$븣}k#JF6J>Xv(c endstream endobj 486 0 obj > stream
联系我们 contact @ memedata.com