Do exercise 5.2.5 on page 317. Ignore the hint in exercise
5.2.4. A hint for 5.2.5 would be as follows: 101.101
can
also be thought of as representing 5 5/8.
Draw a DAG for the expression
a-a-a-(a-a)-(a-a-a-a)
. Your DAG should show as much
sharing as possible, the way the DAG produced by value numbering does.
Translate the following assignment statement into three address code:
a[i] = b[a[i]][j] + c[i+j];
Assume that all array indexes start at zero, that the starting
addresses of the three arrays are available as
basea, baseb, and
basec, that array b
has 10 rows and
20 columns and is
stored in row-major order, and that all array elements are 8 bytes in
size.