Parallel and Distributed Processing Symposium, International (2006)
Rhodes Island, Greece
Apr. 25, 2006 to Apr. 29, 2006
S. Callanan , Stony Brook Univ., NY, USA
R. Grosu , Stony Brook Univ., NY, USA
Xiaowan Huang , Stony Brook Univ., NY, USA
S.A. Smolka , Stony Brook Univ., NY, USA
E. Zadok , Stony Brook Univ., NY, USA
We present Protagoras, a new plug-in architecture for the GNU compiler collection that allows one to modify GCC's internal representation of the program under compilation. We illustrate the utility of Protagoras by presenting plug-ins for both compile-time and runtime software verification and monitoring. In the compile-time case, we have developed plug-ins that interpret the GIMPLE intermediate representation to verify properties statically. In the runtime case, we have developed plug-ins for GCC to perform memory leak detection, array bounds checking, and reference-count access monitoring.
reference-count access monitoring, software verification, Protagoras plug-in architecture, GNU compiler, compile-time software, runtime software, GIMPLE, GCC, C++ language, memory leak detection, array bounds checking
S. Callanan, E. Zadok, S. Smolka, Xiaowan Huang and R. Grosu, "Compiler-assisted software verification using plug-ins," Parallel and Distributed Processing Symposium, International(IPDPS), Rhodes Island, Greece, 2006, pp. 322.