x86
Class Frame
java.lang.Object
frame.Frame
x86.Frame
- All Implemented Interfaces:
- temp.TempMap
public class Frame
- extends Frame
Field Summary |
static temp.Temp |
eax
|
static temp.Temp |
ebp
|
static temp.Temp |
ebx
|
static temp.Temp |
ecx
|
static temp.Temp |
edi
|
static temp.Temp |
edx
|
static temp.Temp |
esi
|
static temp.Temp |
esp
|
Frame |
parent
|
Constructor Summary |
Frame()
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
parent
public Frame parent
ebp
public static temp.Temp ebp
esp
public static temp.Temp esp
eax
public static temp.Temp eax
ebx
public static temp.Temp ebx
ecx
public static temp.Temp ecx
edx
public static temp.Temp edx
esi
public static temp.Temp esi
edi
public static temp.Temp edi
Frame
public Frame()
newFrame
public Frame newFrame(temp.Label name,
List<java.lang.Boolean> formals)
- Specified by:
newFrame
in class Frame
allocLocal
public frame.Access allocLocal(boolean escapes)
- Specified by:
allocLocal
in class Frame
wordsize
public int wordsize()
- Specified by:
wordsize
in class Frame
FP
public temp.Temp FP()
- Specified by:
FP
in class Frame
- Returns:
- Registrador que guarda o frame pointer
externalCall
public Exp externalCall(java.lang.String s,
List<Exp> args)
- Specified by:
externalCall
in class Frame
RV
public temp.Temp RV()
- Specified by:
RV
in class Frame
- Returns:
- Registrador que guarda o valor de retorno de uma função
procEntryExit1
public Stm procEntryExit1(Exp body)
- Specified by:
procEntryExit1
in class Frame
tempMap
public java.lang.String tempMap(temp.Temp t)
procEntryExit2
public List<Instr> procEntryExit2(List<Instr> body)
- Specified by:
procEntryExit2
in class Frame
codegen
public List<Instr> codegen(List<Stm> body)
- Specified by:
codegen
in class Frame
registers
public List<temp.Temp> registers()
- Specified by:
registers
in class Frame
procEntryExit3
public frame.Proc procEntryExit3(List<Instr> body)
- Specified by:
procEntryExit3
in class Frame
SP
public temp.Temp SP()
- Specified by:
SP
in class Frame
- Returns:
- Registrador que guarda o stack pointer
calleeDefs
public List<temp.Temp> calleeDefs()
- Specified by:
calleeDefs
in class Frame
- Returns:
- Lista de registradores "callee def".