assem
Class OPER

java.lang.Object
  extended by assem.Instr
      extended by assem.OPER

public class OPER
extends Instr

Classe que representa operações de assembly x86 que não são 'mov'.


Constructor Summary
OPER(java.lang.String instruction)
           
OPER(java.lang.String instruction, List<Label> jumps)
           
OPER(java.lang.String instruction, List<Temp> defined, List<Temp> used)
           
OPER(java.lang.String instruction, List<Temp> defined, List<Temp> used, List<Label> label)
           
 
Method Summary
 List<Temp> def()
           
 Targets jumps()
           
 List<Temp> use()
           
 
Methods inherited from class assem.Instr
debug, format, getAssembly, isMoveBetweenTemps, isMoveFromConstant, setAssembly
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OPER

public OPER(java.lang.String instruction,
            List<Temp> defined,
            List<Temp> used,
            List<Label> label)
Parameters:
instruction - Instrução assembly que deverá ser executada naquele momento. Se for necessário utilizar os valores passados como parâmetros, utilizar "`di" para que seja utilizado o (i+1)-ésimo valor do registrador que é definido, "`uj" para o (j+1)-ésmo registrador utilizado e "`jk" para o (k+1)-ésimo label.
defined - Lista de registradores cujo valor poderá ser alterado (def). Estes valores serão utilizados na alocação de registradores.
used - Lista de registradores cujo valor poderá ser utilizados (use). Estes valores serão utilizados na alocação de registradores.
label - Lista de labels que a instrução poderá utilizar

OPER

public OPER(java.lang.String instruction,
            List<Temp> defined,
            List<Temp> used)
Parameters:
instruction - Instrução assembly que deverá ser executada naquele momento. Se for necessário utilizar os valores passados como parâmetros, utilizar "`di" para que seja utilizado o (i+1)-ésimo valor do registrador que é definido e "`uj" para o (j+1)-ésmo registrador utilizado
defined - Lista de registradores cujo valor poderá ser alterado (def). Estes valores serão utilizados na alocação de registradores.
used - Lista de registradores cujo valor poderá ser utilizados (use). Estes valores serão utilizados na alocação de registradores.

OPER

public OPER(java.lang.String instruction,
            List<Label> jumps)
Parameters:
instruction - Instrução assembly que deverá ser executada naquele momento. Se for necessário utilizar os valores passados como parâmetros, utilizar "`jk" para o (k+1)-ésimo label.
label - Lista de labels que a instrução poderá utilizar

OPER

public OPER(java.lang.String instruction)
Parameters:
instruction - Instrução assembly que deverá ser executada naquele momento. Se for necessário utilizar os valores passados como parâmetros
Method Detail

use

public List<Temp> use()
Specified by:
use in class Instr

def

public List<Temp> def()
Specified by:
def in class Instr

jumps

public Targets jumps()
Specified by:
jumps in class Instr