loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Sixth IEEE International Workshop on Source Code Analysis and Manipulation (SCAM'06)
SMART C: A Semantic Macro Replacement Translator for C
Philadelphia, Pennsylvania
September 27-September 29
ISBN: 0-7695-2353-6
Matthew Jacobs, University of Pennsylvania, USA
E Christopher Lewis, University of Pennsylvania, USA
Programmers often want to transform the source or binary representations of their programs (e.g., to optimize, add dynamic safety checks, or add profile gathering code). Unfortunately, existing approaches to program transformation are either disruptive to the source (hand transformation), difficult to implement (ad hoc analysis tools), or functionally limited (macros). We propose an extension to the C programming language called the Semantic Macro Replacement Translator (SMART C). SMART C allows for the specification of very general type-aware transformations of all operations, statements, and declarations of the C programming language without exposing the programmer to the complexities of the system?s internal representations. We have implemented a prototype SMART C sourceto- source translator and show its use in transforming programs for buffer overflow detection, format string vulnerability detection, and weighted call graph profiling. We show that SMART C achieves a pragmatic balance between generality and ease of use.
Citation:
Matthew Jacobs, E Christopher Lewis, "SMART C: A Semantic Macro Replacement Translator for C," scam, pp.95-106, Sixth IEEE International Workshop on Source Code Analysis and Manipulation (SCAM'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.