GDB (xrefs)
Classes | Macros | Functions
/tmp/gdb-8.1/gdb/bcache.c File Reference
#include "defs.h"
#include "gdb_obstack.h"
#include "bcache.h"

Go to the source code of this file.

Classes

struct  bstring
 
struct  bcache
 

Macros

#define CHAIN_LENGTH_THRESHOLD   (5)
 
#define BSTRING_SIZE(n)   (offsetof (struct bstring, d.data) + (n))
 

Functions

unsigned long hash (const void *addr, int length)
 
unsigned long hash_continue (const void *addr, int length, unsigned long h)
 
static void expand_hash_table (struct bcache *bcache)
 
const void * bcache (const void *addr, int length, struct bcache *cache)
 
const void * bcache_full (const void *addr, int length, struct bcache *bcache, int *added)
 
static int bcache_compare (const void *addr1, const void *addr2, int length)
 
struct bcachebcache_xmalloc (unsigned long(*hash_function)(const void *, int length), int(*compare_function)(const void *, const void *, int length))
 
void bcache_xfree (struct bcache *bcache)
 
static void print_percentage (int portion, int total)
 
void print_bcache_statistics (struct bcache *c, const char *type)
 
int bcache_memory_used (struct bcache *bcache)
 

Macro Definition Documentation

◆ BSTRING_SIZE

#define BSTRING_SIZE (   n)    (offsetof (struct bstring, d.data) + (n))

Definition at line 200 of file bcache.c.

Referenced by bcache_full().

◆ CHAIN_LENGTH_THRESHOLD

#define CHAIN_LENGTH_THRESHOLD   (5)

Definition at line 124 of file bcache.c.

Referenced by bcache_full().

Function Documentation

◆ bcache()

const void* bcache ( const void *  addr,
int  length,
struct bcache cache 
)

Definition at line 206 of file bcache.c.

References bcache_full(), and bstring::length.

Referenced by macro_bcache(), and psymbol_bcache_init().

◆ bcache_compare()

static int bcache_compare ( const void *  addr1,
const void *  addr2,
int  length 
)
static

Definition at line 293 of file bcache.c.

References bstring::length.

Referenced by bcache_xmalloc().

◆ bcache_full()

const void* bcache_full ( const void *  addr,
int  length,
struct bcache bcache,
int *  added 
)

◆ bcache_memory_used()

int bcache_memory_used ( struct bcache bcache)

Definition at line 486 of file bcache.c.

References bcache::cache, and bcache::total_count.

Referenced by print_objfile_statistics().

◆ bcache_xfree()

void bcache_xfree ( struct bcache bcache)

◆ bcache_xmalloc()

struct bcache* bcache_xmalloc ( unsigned long(*)(const void *, int length)  hash_function,
int(*)(const void *, const void *, int length)  compare_function 
)

◆ expand_hash_table()

static void expand_hash_table ( struct bcache bcache)
static

◆ hash()

unsigned long hash ( const void *  addr,
int  length 
)

◆ hash_continue()

unsigned long hash_continue ( const void *  addr,
int  length,
unsigned long  h 
)

Definition at line 106 of file bcache.c.

References bstring::length.

Referenced by hash(), and psymbol_hash().

◆ print_bcache_statistics()

void print_bcache_statistics ( struct bcache c,
const char *  type 
)

◆ print_percentage()

static void print_percentage ( int  portion,
int  total 
)
static

Definition at line 344 of file bcache.c.

References _, and printf_filtered().

Referenced by print_bcache_statistics().