Christian Christmann <plfriko@yahoo.dewrote:
for my master's thesis I'm looking for the definition of basic blocks that
are used in the compiler back end.
Some early references I know include:
@Article{allen70cfg,
author = "F. E. Allen",
title = "Control Flow Analysis",
journal = "{ACM SIGPLAN} Notices",
volume = "5",
number = "7",
pages = "1",
year = "1970",
online = "no paper",
}
If I recall correctly, there's a problem in this CFG definition, as it
doesn't define the starting basic block of a control flow graph. In a
later survey, there's a definition that cures this:
@inbook{kennedy81survey,
editor="S. S. Muchnick and N. D. Jones",
author="K. Kennedy",
title={Program Flow Analysis: Theory and Applications},
chapter="1. A Survey of Data Flow analysis Techniques",
publisher="Prentice Hall",
location="New Jersey",
year="1981",
}
Algorithm for generating basic blocks is avilable e.g. on page 528 of
the Dragon book.
br,
Pietu Pohjalainen