6
Implementation How to describe effectively? An example:- BRC=10; (Block Repeat Count) RSA=L1;REA=EN[L1]; (Repeat Start Address and Repeat End Address) L1: w[0]=w[0]+1;W[w[0]]=0; PC=BRC>0,L1;BRC=BRC-1;

Implementation

Embed Size (px)

DESCRIPTION

Implementation. How to describe effectively? An example:- BRC=10; (Block Repeat Count) RSA=L1;REA=EN[L1]; (Repeat Start Address and Repeat End Address) L1: w[0]=w[0]+1;W[w[0]]=0; PC=BRC>0,L1;BRC=BRC-1;. Issues (ZOLB). - PowerPoint PPT Presentation

Citation preview

Page 1: Implementation

Implementation

• How to describe effectively?

An example:-BRC=10; (Block Repeat Count)

RSA=L1;REA=EN[L1];

(Repeat Start Address and Repeat End Address)

L1:

w[0]=w[0]+1;W[w[0]]=0;

PC=BRC>0,L1;BRC=BRC-1;

Page 2: Implementation

Issues (ZOLB)

• How to bind the rpt instruction to the start of the rpt block (on the tms320c54x, the start of the rpt block is implicitly the instruction after the rpt instruction)– Changing vpo to support ‘binding’ of an

instruction to the next would be overkill.– Solution: Make fixentry() take care of this.

(after vpo has finished its optimization loop).

Page 3: Implementation

Issues (ZOLB)

• How to describe unrepeatable instructions?– The machine description sets the

UNREPEATABLE flag for each unrepeatable instruction.

– Machine description also provides an ignore list because some UNREPEATABLE instructions may disappear after conversion.

Page 4: Implementation

Issues (ZOLB)

• How to specify end-label?– If we simply label the next-block, vpo wont print the

label since it cannot see a jump to that label.

– Solution: Use mangled version of the start label (eg. L1_end) as the end label for the rpt instruction.

Output same mangled version of the start label when the last instruction in the rptblock is encountered in fixentry. Note that this last instruction contains the start label.

Page 5: Implementation

Future work

• How to implement the special single repeat instruction?

• How to prevent vpo from changing block size (for eg. when spills are added)?

Page 6: Implementation