nanojit::LInsHashSet Class Reference

#include <LIR.h>

List of all members.

Public Member Functions

 LInsHashSet (GC *gc)
LInsp find32 (int32_t a, uint32_t &i)
LInsp find64 (uint64_t a, uint32_t &i)
LInsp find1 (LOpcode v, LInsp a, uint32_t &i)
LInsp find2 (LOpcode v, LInsp a, LInsp b, uint32_t &i)
LInsp findcall (uint32_t fid, uint32_t argc, LInsp args[], uint32_t &i)
LInsp add (LInsp i, uint32_t k)
void replace (LInsp i)
void clear ()

Static Public Member Functions

static uint32_t FASTCALL hashimm (int32_t)
static uint32_t FASTCALL hashimmq (uint64_t)
static uint32_t FASTCALL hash1 (LOpcode v, LInsp)
static uint32_t FASTCALL hash2 (LOpcode v, LInsp, LInsp)
static uint32_t FASTCALL hashcall (uint32_t fid, uint32_t argc, LInsp args[])

Private Member Functions

uint32_t FASTCALL find (LInsp name, uint32_t hash, const LInsp *list, uint32_t cap)
void FASTCALL grow ()

Static Private Member Functions

static uint32_t FASTCALL hashcode (LInsp i)
static bool FASTCALL equals (LInsp a, LInsp b)

Private Attributes

LInspm_list
uint32_t m_used
uint32_t m_cap
GCm_gc

Static Private Attributes

static const uint32_t kInitialCap = 64


Detailed Description

Definition at line 679 of file LIR.h.


Constructor & Destructor Documentation

nanojit::LInsHashSet::LInsHashSet GC gc  ) 
 


Member Function Documentation

LInsp nanojit::LInsHashSet::add LInsp  i,
uint32_t  k
 

void nanojit::LInsHashSet::clear  ) 
 

static bool FASTCALL nanojit::LInsHashSet::equals LInsp  a,
LInsp  b
[static, private]
 

uint32_t FASTCALL nanojit::LInsHashSet::find LInsp  name,
uint32_t  hash,
const LInsp list,
uint32_t  cap
[private]
 

LInsp nanojit::LInsHashSet::find1 LOpcode  v,
LInsp  a,
uint32_t &  i
 

LInsp nanojit::LInsHashSet::find2 LOpcode  v,
LInsp  a,
LInsp  b,
uint32_t &  i
 

LInsp nanojit::LInsHashSet::find32 int32_t  a,
uint32_t &  i
 

LInsp nanojit::LInsHashSet::find64 uint64_t  a,
uint32_t &  i
 

LInsp nanojit::LInsHashSet::findcall uint32_t  fid,
uint32_t  argc,
LInsp  args[],
uint32_t &  i
 

void FASTCALL nanojit::LInsHashSet::grow  )  [private]
 

static uint32_t FASTCALL nanojit::LInsHashSet::hash1 LOpcode  v,
LInsp 
[static]
 

static uint32_t FASTCALL nanojit::LInsHashSet::hash2 LOpcode  v,
LInsp  ,
LInsp 
[static]
 

static uint32_t FASTCALL nanojit::LInsHashSet::hashcall uint32_t  fid,
uint32_t  argc,
LInsp  args[]
[static]
 

static uint32_t FASTCALL nanojit::LInsHashSet::hashcode LInsp  i  )  [static, private]
 

static uint32_t FASTCALL nanojit::LInsHashSet::hashimm int32_t   )  [static]
 

static uint32_t FASTCALL nanojit::LInsHashSet::hashimmq uint64_t   )  [static]
 

void nanojit::LInsHashSet::replace LInsp  i  ) 
 


Member Data Documentation

const uint32_t nanojit::LInsHashSet::kInitialCap = 64 [static, private]
 

Definition at line 684 of file LIR.h.

uint32_t nanojit::LInsHashSet::m_cap [private]
 

Definition at line 687 of file LIR.h.

GC* nanojit::LInsHashSet::m_gc [private]
 

Definition at line 688 of file LIR.h.

LInsp* nanojit::LInsHashSet::m_list [private]
 

Definition at line 686 of file LIR.h.

uint32_t nanojit::LInsHashSet::m_used [private]
 

Definition at line 687 of file LIR.h.


The documentation for this class was generated from the following file:
Generated on Sun Oct 12 18:51:42 2008 for Tamarin by  doxygen 1.4.6