Reading an assembly program can often be a tedious and slow process, and one can easily lose patience while looking for important features such as nested loops or function calls. In this paper the authors describe a tool in which this process is automated. Furthermore, we designed our tool in such a way that it can work for any assembly language. The tool actually consists of two programs that can be run independently - one program performs a basic parse of the assembly code to detect all the control-flow features. The other program takes this control-flow information and presents it in a Java GUI Frame. Although it is in the prototype stage and we are only using it in class for the first time, we have found our tool saves much human effort and is computationally efficient in discovering the structure of assembly code.
[1]
David B. Whalley,et al.
Graphical visualization of compiler optimizations
,
1995,
J. Program. Lang..
[2]
David A. Patterson,et al.
Computer organization and design (2nd ed.): the hardware/software interface
,
1997
.
[3]
David Whalley,et al.
Automatic utilization of constraints for timing analysis
,
1999
.
[4]
David B. Whalley,et al.
Bounding Pipeline and Instruction Cache Performance
,
1999,
IEEE Trans. Computers.
[5]
Manuel E. Benitez,et al.
A portable global optimizer and linker
,
1988,
PLDI '88.
[6]
Alfred V. Aho,et al.
Compilers: Principles, Techniques, and Tools
,
1986,
Addison-Wesley series in computer science / World student series edition.