Ask a Librarian

Threre are lots of ways to contact a librarian. Choose what works best for you.

HOURS TODAY

11:00 am - 3:00 pm

Reference Desk

CONTACT US BY PHONE

(802) 656-2022

Voice

(802) 503-1703

Text

MAKE AN APPOINTMENT OR EMAIL A QUESTION

Schedule an Appointment

Meet with a librarian or subject specialist for in-depth help.

Email a Librarian

Submit a question for reply by e-mail.

WANT TO TALK TO SOMEONE RIGHT AWAY?

Library Hours for Friday, April 19th

All of the hours for today can be found below. We look forward to seeing you in the library.
HOURS TODAY
8:00 am - 6:00 pm
MAIN LIBRARY

SEE ALL LIBRARY HOURS
WITHIN HOWE LIBRARY

MapsM-Th by appointment, email govdocs@uvm.edu

Media Services8:00 am - 4:30 pm

Reference Desk11:00 am - 3:00 pm

OTHER DEPARTMENTS

Special Collections10:00 am - 5:00 pm

Dana Health Sciences Library7:30 am - 6:00 pm

 

CATQuest

Search the UVM Libraries' collections

UVM Theses and Dissertations

Browse by Department
Format:
Print
Author:
Blaisdell, Jeffrey O.
Dept./Program:
Computer Science
Year:
2006
Degree:
MS
Abstract:
Information obtained from static software analyses is valuable to applications ranging from compiler optimizations to program understanding tools, from software validation to security. One such analysis is flow analysis. Traditionally, program flow analysis has been modeled using directed graphs called control flow graphs. Though they provide natural flow sensitivity, control flow graphs are unable to provide complete context sensitivity. This thesis describes a new representation of control flow information termed path grammars. Path grammars, being inherently both flow and context sensitive, overcome the limitations of standard control flow graphs and permit the incorporation of both intraprocedural and interprocedural analyses into a single comprehensive model. The algorithm for the generation of path grammars from an abstract syntax tree or intermediate representation is described, and numerous examples are presented. Reaching definitions, a classic data flow analysis problem, was implemented in both path grammar and control flow graph frameworks. Empirical tests with both frameworks are compared for a number of SPEC2000 benchmark programs, and numerous statistics are collected. For the benchmarks tested, a thirty fold speedup on average and approximate three fold savings in maximum memory usage was seen using path grammars, demonstrating their practicality in both time and space.