Public Member Functions | Public Attributes

nanojit::LirWriter Class Reference

#include <LIR.h>

Inheritance diagram for nanojit::LirWriter:
Collaboration diagram for nanojit::LirWriter:

List of all members.

Public Member Functions

 LirWriter (LirWriter *out)
virtual ~LirWriter ()
virtual LInsp ins0 (LOpcode v)
virtual LInsp ins1 (LOpcode v, LIns *a)
virtual LInsp ins2 (LOpcode v, LIns *a, LIns *b)
virtual LInsp ins3 (LOpcode v, LIns *a, LIns *b, LIns *c)
virtual LInsp insGuard (LOpcode v, LIns *c, GuardRecord *gr)
virtual LInsp insBranch (LOpcode v, LInsp condition, LInsp to)
virtual LInsp insParam (int32_t arg, int32_t kind)
virtual LInsp insImm (int32_t imm)
virtual LInsp insImmq (uint64_t imm)
virtual LInsp insImmf (double d)
virtual LInsp insLoad (LOpcode op, LIns *base, int32_t d)
virtual LInsp insStore (LOpcode op, LIns *value, LIns *base, int32_t d)
virtual LInsp insCall (const CallInfo *call, LInsp args[])
virtual LInsp insAlloc (int32_t size)
virtual LInsp insJtbl (LIns *index, uint32_t size)
LInsins_choose (LIns *cond, LIns *iftrue, LIns *iffalse, bool use_cmov)
LInsins_eq0 (LIns *oprnd1)
LInsins_peq0 (LIns *oprnd1)
LInsins2i (LOpcode op, LIns *oprnd1, int32_t)
LInsqjoin (LInsp lo, LInsp hi)
LInsinsImmPtr (const void *ptr)
LInsinsImmWord (intptr_t ptr)
LInsins_i2p (LIns *intIns)
LInsins_u2p (LIns *uintIns)
LInsinsStorei (LIns *value, LIns *base, int32_t d)

Public Attributes

LirWriterout

Constructor & Destructor Documentation

nanojit::LirWriter::LirWriter ( LirWriter out  )  [inline]
virtual nanojit::LirWriter::~LirWriter (  )  [inline, virtual]

Member Function Documentation

virtual LInsp nanojit::LirWriter::ins0 ( LOpcode  v  )  [inline, virtual]
virtual LInsp nanojit::LirWriter::ins1 ( LOpcode  v,
LIns a 
) [inline, virtual]

Reimplemented in nanojit::ExprFilter.

virtual LInsp nanojit::LirWriter::ins2 ( LOpcode  v,
LIns a,
LIns b 
) [inline, virtual]

Reimplemented in nanojit::ExprFilter.

LIns* nanojit::LirWriter::ins2i ( LOpcode  op,
LIns oprnd1,
int32_t   
)
virtual LInsp nanojit::LirWriter::ins3 ( LOpcode  v,
LIns a,
LIns b,
LIns c 
) [inline, virtual]

Reimplemented in nanojit::ExprFilter.

LIns* nanojit::LirWriter::ins_choose ( LIns cond,
LIns iftrue,
LIns iffalse,
bool  use_cmov 
)
LIns* nanojit::LirWriter::ins_eq0 ( LIns oprnd1  ) 
LIns* nanojit::LirWriter::ins_i2p ( LIns intIns  ) 
LIns* nanojit::LirWriter::ins_peq0 ( LIns oprnd1  ) 
LIns* nanojit::LirWriter::ins_u2p ( LIns uintIns  ) 
virtual LInsp nanojit::LirWriter::insAlloc ( int32_t  size  )  [inline, virtual]

Reimplemented in nanojit::LirBufWriter.

virtual LInsp nanojit::LirWriter::insBranch ( LOpcode  v,
LInsp  condition,
LInsp  to 
) [inline, virtual]

Reimplemented in nanojit::LirBufWriter.

virtual LInsp nanojit::LirWriter::insCall ( const CallInfo call,
LInsp  args[] 
) [inline, virtual]
virtual LInsp nanojit::LirWriter::insGuard ( LOpcode  v,
LIns c,
GuardRecord gr 
) [inline, virtual]

Reimplemented in nanojit::ExprFilter.

virtual LInsp nanojit::LirWriter::insImm ( int32_t  imm  )  [inline, virtual]

Reimplemented in nanojit::CseFilter, and nanojit::LirBufWriter.

virtual LInsp nanojit::LirWriter::insImmf ( double  d  )  [inline, virtual]

Reimplemented in nanojit::CseFilter, and nanojit::LirBufWriter.

LIns* nanojit::LirWriter::insImmPtr ( const void *  ptr  ) 
virtual LInsp nanojit::LirWriter::insImmq ( uint64_t  imm  )  [inline, virtual]

Reimplemented in nanojit::CseFilter, and nanojit::LirBufWriter.

LIns* nanojit::LirWriter::insImmWord ( intptr_t  ptr  ) 
virtual LInsp nanojit::LirWriter::insJtbl ( LIns index,
uint32_t  size 
) [inline, virtual]

Reimplemented in nanojit::LirBufWriter.

virtual LInsp nanojit::LirWriter::insLoad ( LOpcode  op,
LIns base,
int32_t  d 
) [inline, virtual]
virtual LInsp nanojit::LirWriter::insParam ( int32_t  arg,
int32_t  kind 
) [inline, virtual]

Reimplemented in nanojit::LirBufWriter.

virtual LInsp nanojit::LirWriter::insStore ( LOpcode  op,
LIns value,
LIns base,
int32_t  d 
) [inline, virtual]
LIns* nanojit::LirWriter::insStorei ( LIns value,
LIns base,
int32_t  d 
)
LIns* nanojit::LirWriter::qjoin ( LInsp  lo,
LInsp  hi 
)

Member Data Documentation


The documentation for this class was generated from the following file: