x86
Class Frame
java.lang.Object
frame.Frame
x86.Frame
- All Implemented Interfaces:
- temp.TempMap
public class Frame
- extends Frame
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 ebp
esp
public static Temp esp
eax
public static Temp eax
ebx
public static Temp ebx
ecx
public static Temp ecx
edx
public static Temp edx
esi
public static Temp esi
edi
public static Temp edi
Frame
public Frame()
newFrame
public Frame newFrame(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 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 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 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> registers()
- Specified by:
registers
in class Frame
procEntryExit3
public frame.Proc procEntryExit3(List<Instr> body)
- Specified by:
procEntryExit3
in class Frame
SP
public Temp SP()
- Specified by:
SP
in class Frame
- Returns:
- Registrador que guarda o stack pointer
calleeDefs
public List<Temp> calleeDefs()
- Specified by:
calleeDefs
in class Frame
- Returns:
- Lista de registradores "callee def".