Title :
From Whence It Came: Detecting Source Code Clones by Analyzing Assembler
Author :
Davis, Ian J. ; Godfrey, Michael W.
Author_Institution :
David R. Cheriton Sch. of Comput. Sci., Univ. of Waterloo, Waterloo, ON, Canada
Abstract :
To date, most clone detection techniques have concentrated on various forms of source code analysis, often by analyzing token streams. In this paper, we introduce a complementary technique of analyzing generated assembler for clones. This approach is appealing as it is mostly impervious to trivial changes in the source, with compilation serving as a kind of normalization technique. We have built detectors to analyze both Java VM code as well as GCC Linux assembler for C and C++. In the paper, we describe our approach and show how it can serve as a valuable complementary semantic approach to syntactic source code based detection.
Keywords :
C++ language; Java; Linux; program assemblers; program compilers; source coding; C; C++; GCC Linux assembler; Java VM code; assembler analysis; clone detection technique; normalization technique; source code analysis; syntactic source code based detection; Arrays; Cloning; Image edge detection; Java; Reverse engineering; Software; Syntactics; Clone Detection; Reverse Engineering;
Conference_Titel :
Reverse Engineering (WCRE), 2010 17th Working Conference on
Conference_Location :
Beverly, MA
Print_ISBN :
978-1-4244-8911-4
DOI :
10.1109/WCRE.2010.35