{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

Compilers Project 1

Compilers Project 1 - CS 415 Compilers Fall 2010 Project 1...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
CS 415: Compilers Fall 2010, Project 1 Local Instruction Scheduling New due date code : Friday, March 5, at 11:59pm EST New due date report : Monday, March 8, at 11:59pm EST Modifications and Clarifications Project Description: PART I THIS IS NOT A GROUP PROJECT! Every student is expected to work on his own project. You may discuss overall design issues with your fellow students. Detailed discussions and/or code sharing is not allowed. The general rules for academic integrity apply. Write three local instruction schedulers (single basic block) based on forward list scheduling. Your scheduler has to be able to accept the following ILOC instructions. These instructions are implemented in sim , our ILOC simulator. Click here to look at a table of ILOC instructions and their semantics. The latencies of the instructions are given in parenthesis. no operation: nop (1) arithmetic: addI (1), add (1), subI (1), sub (1), mult (3), div (3) memory load (5), loadI (1), loadAO (5), loadAI (5), store (5), storeAO (5), storeAI (5) I/O: output (1) Code Shape Requirements All variables are scalar, statically allocated, i.e., there is no need for activation records. The static area starts at memory location 1024. Addresses above are reserved for register spilling. The register r0 should contain the starting address (namely 1024) of the static area during program execution. We provide you with a compiler that translates a simple language into ILOC code. Your schedulers has to be able to schedule this code in order to reduce its overall execution time.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}