Otawa  0.10
Inst.h
Go to the documentation of this file.
1 /*
2  * $Id$
3  * Copyright (c) 2007, IRIT UPS <casse@irit.fr>
4  *
5  * loader::Inst class interface
6  */
7 #ifndef OTAWA_LOADER_NEW_GLISS_INST_H
8 #define OTAWA_LOADER_NEW_GLISS_INST_H
9 
10 #include <otawa/prog/Inst.h>
12 
13 namespace otawa { namespace loader { namespace new_gliss {
14 
15 // Inst class
16 class Inst: public otawa::Inst {
17 
18 public:
20  inline Process& process(void) const { return proc; }
21 
22  virtual void dump(io::Output& out);
23  virtual kind_t kind(void);
26  virtual address_t address(void) const;
27 
28 protected:
30  static const unsigned long REGS_DONE = 0x80000000;
31  static const unsigned long TARGET_DONE = 0x40000000;
32  static const unsigned long MASK = REGS_DONE | TARGET_DONE;
35 
36  virtual void decodeRegs(void);
37 
38 private:
41 };
42 
43 } } } // otawa::loader::new_gliss
44 
45 #endif // OTAWA_LOADER_NEW_GLISS_INST_H
Process & process(void) const
Definition: Inst.h:20
address_t addr
Definition: Inst.h:39
elm::genstruct::AllocatedTable< hard::Register * > in_regs
Definition: Inst.h:33
Inst(Process &process, kind_t kind, address_t addr)
elm::genstruct::AllocatedTable< hard::Register * > out_regs
Definition: Inst.h:34
Definition: Inst.h:16
virtual void decodeRegs(void)
virtual const elm::genstruct::Table< hard::Register * > & writtenRegs(void)
Get the registers written by the instruction.
virtual void dump(io::Output &out)
Output a displayable representation of the instruction.
virtual kind_t kind(void)
Get the kind of the current instruction.
The representation of an address in OTAWA.
Definition: base.h:54
elm::t::uint32 kind_t
Definition: Inst.h:67
sys::SystemOutStream & out
static const unsigned long TARGET_DONE
Definition: Inst.h:31
virtual address_t address(void) const
Get the address of the item .
kind_t _kind
Definition: Inst.h:29
static const unsigned long REGS_DONE
Definition: Inst.h:30
This class represents assembly instruction of a piece of code.
Definition: Inst.h:62
virtual const elm::genstruct::Table< hard::Register * > & readRegs(void)
Get the registers read by the instruction.
Process & proc
Definition: Inst.h:40
Definition: Process.h:22
static const unsigned long MASK
Definition: Inst.h:32