10
Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Embed Size (px)

DESCRIPTION

 Code Generator ◦ Intel Architecture (X86) ◦ MIPS Architecture ◦ Java Virtual Machine (JVM) ◦ Common Language runtime (CLR)  Our Target: MIPS Architecture  SPIM Simulator

Citation preview

Page 1: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Md. Zahurul IslamCenter for Research on Bangla Language Processing (CRBLP)

BRAC University

Page 2: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Project Details What to do? New classes Changes on previous program Lvalue and Rvalue MIPS

Page 3: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Code Generator◦ Intel Architecture (X86)◦ MIPS Architecture◦ Java Virtual Machine (JVM)◦ Common Language runtime (CLR)

Our Target: MIPS Architecture SPIM Simulator

Page 4: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Download starter-kit Find out what you have to do Try to understand our starter-kit Take a look on our given solution Read MIPS references

◦ Online references on course website◦ Computer architecture book

Lets start!

Page 5: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Codegen.java◦ Utility class for code generation

MIPSVisitor.java◦ New visitor class to generate MIPS assembly code

Page 6: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Symbol class changes◦ getOffset()◦ setOffset()◦ symOffset

FunDeclAst changes◦ FuncFrameSize◦ setFrameSize()◦ getFrameSize()

NameVisitor changes◦ cuFrameOffset◦ …

Page 7: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Load (default) Store Manage it carefully

Page 8: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Prolog Epilog Variables Parameter Arguments Return value

Page 9: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Stack◦ Push◦ pop

Registers◦ Arguments ◦ Frame pointer◦ Stack pointer◦ Return address◦ Return value

Page 10: Md. Zahurul Islam Center for Research on Bangla Language Processing (CRBLP) BRAC University

Project Details What to Do? New classes Changes on previous program Lvalue and Rvalue MIPS