Software Assurance            Software Hardening            Autonomic Computing

GrammaTech Releases CodeSurfer® 1.5 for C

Ithaca, New York -- GrammaTech, Inc. today announced the release of CodeSurfer® 1.5, a next-generation maintenance, understanding, inspection, and analysis tool. CodeSurfer is useful for software understanding, inspection, restructuring, maintenance, debugging, testing, feature extraction, impact analysis, specialization, reuse, anomaly detection, and security and safety assurance tasks.

CodeSurfer's powerful program-analysis techniques precompute program properties allowing you to quickly and precisely analyze and understand ANSI C source code. CodeSurfer is the first commercial tool to provide precise interprocedural program slicing and pointer analysis. CodeSurfer automatically generates hyperlinks in your project so that navigating the dependences in your code is as easy as surfing the web.

CodeSurfer's interprocedural program slicing is a technique that reveals the deep structure within source code. A forward slice from any point of interest shows all the code that is impacted by that point of interest. A backward slice shows all the code that impacts the point of interest.

CodeSurfer can help you understand the far-reaching effects of statements in your program, which are not otherwise easily discovered. CodeSurfer performs pointer analysis so it knows which pointers point to which variables and procedures. CodeSurfer provides advanced searching capabilities that take into account control flow, data flow, and program structure to deliver precise query results.

Major New Features in CodeSurfer 1.5

  • Improved queries - The query mechanism for CodeSurfer has been enhanced to allow the user to express queries in terms of functions, program points, variables, or both program points and variables.
  • Custom analysis levels - Users can now selectively turn different analyses on or off. This allows the user to control the performance/functionality tradeoff.
  • Include file browsing - CodeSurfer now supports browsing of dependences to and within include files.
  • New C front end - CodeSurfer now uses a completely new C front end that offers much more complete and correct coverage of the C language, including support for non-standard language features.

Performance, Precision, and Scalability Improvements

  • More precise points-to-graph - The pointer analysis algorithm can now take structure fields into account, so the points-to graph can be computed much more precisely than before.
  • Improved query precision - The slicing and predecessor operations have been improved to give more precise query results in the presence of goto and switch statements.
  • Improved building and query performance - Numerous advances have been made on our internal algorithms and data structures improving the performance of building and queries.
  • Improved project scalability - CodeSurfer can now handle much larger projects than previous versions.

Packaging & Platform

CodeSurfer is now available in two different packages: the CodeSurfer Programmable Package (starting at $3,995) and the CodeSurfer Entry Package (starting at $795). CodeSurfer runs under Windows and Solaris 2.5 and later.

About GrammaTech:
GrammaTech's static-analysis tools are used worldwide by startups, Fortune 500 companies, educational institutions, and government agencies. The staff includes fourteen researchers with PhDs in programming languages and program analysis.