Package avrora.core

Interface Summary
InstrPrototype The InstrPrototype interface represents an object that is capable of building Instr instances given an array of Operand instances.
InstrVisitor  
Operand The Operand class encapsulates the notion of an operand to an instruction.
Operand.Constant The Operand.Constant class encapsulates the notion of a constant operand to an instruction.
Operand.Register The Operand.Register class encapsulates the notion of a register operand to an instruction.
 

Class Summary
Assembler The Assembler class represents an assembler that is capable of encoding AVR assembly instructions into binary machine code.
ControlFlowGraph The ControlFlowGraph represents a control flow graph for an entire program, including all basic blocks and all procedures.
Disassembler The Disassembler class is (partially) generated from the instruction set description.
Instr The Instr class and its descendants represent instructions within the assembly code.
Instr.ADC ---------------------------------------------------------------- I N S T R U C T I O N D E S C R I P T I O N S ----------------------------------------------------------------

These are the actual instruction descriptions that contain the constraints on operands and sizes, etc.

Instr.ADD  
Instr.ADIW  
Instr.AND  
Instr.ANDI  
Instr.ASR  
Instr.BCLR  
Instr.BLD  
Instr.BRBC  
Instr.BRBS  
Instr.BRCC  
Instr.BRCS  
Instr.BREAK  
Instr.BREQ  
Instr.BRGE  
Instr.BRHC  
Instr.BRHS  
Instr.BRID  
Instr.BRIE  
Instr.BRLO  
Instr.BRLT  
Instr.BRMI  
Instr.BRNE  
Instr.BRPL  
Instr.BRSH  
Instr.BRTC  
Instr.BRTS  
Instr.BRVC  
Instr.BRVS  
Instr.BSET  
Instr.BST  
Instr.CALL  
Instr.CBI  
Instr.CBR  
Instr.CLC  
Instr.CLH  
Instr.CLI  
Instr.CLN  
Instr.CLR  
Instr.CLS  
Instr.CLT  
Instr.CLV  
Instr.CLZ  
Instr.COM  
Instr.CP  
Instr.CPC  
Instr.CPI  
Instr.CPSE  
Instr.DEC  
Instr.EICALL  
Instr.EIJMP  
Instr.ELPM  
Instr.ELPMD  
Instr.ELPMPI  
Instr.EOR  
Instr.FMUL  
Instr.FMULS  
Instr.FMULSU  
Instr.ICALL  
Instr.IJMP  
Instr.IMM_class  
Instr.IMMIMM_class  
Instr.IMMREG_class  
Instr.IMMWORD_class  
Instr.IN  
Instr.INC  
Instr.JMP  
Instr.LD  
Instr.LDD  
Instr.LDI  
Instr.LDPD  
Instr.LDPI  
Instr.LDS  
Instr.LPM  
Instr.LPMD  
Instr.LPMPI  
Instr.LSL  
Instr.LSR  
Instr.MOV  
Instr.MOVW  
Instr.MUL  
Instr.MULS  
Instr.MULSU  
Instr.NEG  
Instr.NONE_class  
Instr.NOP  
Instr.OR  
Instr.ORI  
Instr.OUT  
Instr.POP  
Instr.PUSH  
Instr.RCALL  
Instr.REG_class  
Instr.REGIMM_class  
Instr.REGIMMREG_class  
Instr.REGREG_class -------------------------------------------------------- A B S T R A C T C L A S S E S --------------------------------------------------------

These abstract implementations of the instruction simplify the specification of each individual instruction considerably.

Instr.REGREGIMM_class  
Instr.RET  
Instr.RETI  
Instr.RJMP  
Instr.ROL  
Instr.ROR  
Instr.SBC  
Instr.SBCI  
Instr.SBI  
Instr.SBIC  
Instr.SBIS  
Instr.SBIW  
Instr.SBR  
Instr.SBRC  
Instr.SBRS  
Instr.SEC  
Instr.SEH  
Instr.SEI  
Instr.SEN  
Instr.SER  
Instr.SES  
Instr.SET  
Instr.SEV  
Instr.SEZ  
Instr.SLEEP  
Instr.SPM  
Instr.ST  
Instr.STD  
Instr.STPD  
Instr.STPI  
Instr.STS  
Instr.SUB  
Instr.SUBI  
Instr.SWAP  
Instr.TST  
Instr.WDR  
Instr.WORD_class  
InstrProperties The InstrProperties represents a grab bag of the properties of an instruction.
InstructionSet The InstructionSet class contains static methods that allow the instruction set of the AVR microcontroller to be accessed from one place.
LabelMapping The LabelMapping class is a simple implementation of the SourceMapping class that maps labels to addresses in the program.
LoadableProgram The LoadableProgram class represents a reference to a program on the disk.
ProcedureMap The ProcedureMap class represents a mapping from basic blocks to the procedures that contain them.
Program The Program class represents a complete program of AVR instructions.
ProgramReader The ProgramReader class represents an object capable of reading a program given the special command line arguments.
Register The Register class represents a register available on the AVR instruction set.
Register.Set The Set class represents a set of registers.
SourceMapping The SourceMapping class embodies the concept of mapping machine code level addresses and constructions in the Program class back to a source code program, either in assembly language (labels), or a high-level programming lagnguage like C.
 

Exception Summary
Instr.ImmediateRequired The ImmediateRequired class represents an error in construction of an instance of Instr where the given operand is expected to be an immediate but is not.
Instr.InvalidImmediate The InvalidImmediate class represents an error in construction of an instance of Instr where the given immediate operand is not within the range that is specified by the instruction set manual.
Instr.InvalidOperand The InvalidOperand class represents a runtime error thrown by the constructor of an instruction or the build method of a prototype when an operand does not meet the restrictions imposed by the AVR instruction set architecture.
Instr.InvalidRegister The InvalidRegister class represents an error in constructing an instance of Instr where a register operand does not meet the instruction set specification.
Instr.RegisterRequired The RegisterRequired class represents an error in construction of an instance of Instr where the given operand is expected to be a register but is not.
Instr.WrongNumberOfOperands The WrongNumberOfOperands class represents a runtime error thrown by the build method of a prototype when the wrong number of operands is passed to build an instruction.