};
// First compare file, then fn, then line.
-static Int cmp_CodeLoc_LineCC(void *vloc, void *vcc)
+static Word cmp_CodeLoc_LineCC(void *vloc, void *vcc)
{
- Int res;
+ Word res;
CodeLoc* a = (CodeLoc*)vloc;
CodeLoc* b = &(((LineCC*)vcc)->loc);
/*--- String table operations ---*/
/*------------------------------------------------------------*/
-static Int stringCmp( void* key, void* elem )
+static Word stringCmp( void* key, void* elem )
{
return VG_(strcmp)(*(Char**)key, *(Char**)elem);
}
}
// Compare the first word of each element. Inlining is *crucial*.
-static inline Int fast_cmp(void* k, AvlNode* n)
+static inline Word fast_cmp(void* k, AvlNode* n)
{
- return ( *(Int*)k - *(Int*)elem_of_node(n) );
+ return ( *(Word*)k - *(Word*)elem_of_node(n) );
}
// Compare a key and an element. Inlining is *crucial*.
-static inline Int slow_cmp(AvlTree* t, void* k, AvlNode* n)
+static inline Word slow_cmp(AvlTree* t, void* k, AvlNode* n)
{
return t->cmp(k, elem_of_node(n));
}
/*--- Insertion ---*/
/*--------------------------------------------------------------------*/
-static inline Int cmp_key_root(AvlTree* t, AvlNode* n)
+static inline Word cmp_key_root(AvlTree* t, AvlNode* n)
{
return t->cmp
? slow_cmp(t, slow_key_of_node(t, n), t->root)
// Returns True if the depth of the tree has grown.
static Bool avl_insert(AvlTree* t, AvlNode* n)
{
- Int cmpres = cmp_key_root(t, n);
+ Word cmpres = cmp_key_root(t, n);
if (cmpres < 0) {
// Insert into the left subtree.
// Find the *node* in t matching k, or NULL if not found.
static AvlNode* avl_lookup(AvlTree* t, void* k)
{
- Int cmpres;
+ Word cmpres;
AvlNode* curr = t->root;
if (t->cmp) {
// elem_of_node because it saves about 10% on lookup time. This
// shouldn't be very dangerous because each node will have been
// checked on insertion.
- Int kk = *(Int*)k;
+ Word kk = *(Word*)k;
while (True) {
if (curr == NULL) return NULL;
- cmpres = kk - *(Int*)elem_of_node_no_check(curr);
+ cmpres = kk - *(Word*)elem_of_node_no_check(curr);
if (cmpres < 0) curr = curr->left; else
if (cmpres > 0) curr = curr->right; else
return curr;
static Bool avl_remove(AvlTree* t, AvlNode* n)
{
Bool ch;
- Int cmpres = cmp_key_root(t, n);
+ Word cmpres = cmp_key_root(t, n);
if (cmpres < 0) {
AvlTree left_subtree;
// Returns True if the depth of the tree has shrunk.
static Bool avl_removeroot(AvlTree* t)
{
- Int ch;
+ Bool ch;
AvlNode* n;
if (!t->root->left) {
typedef struct _OSet OSet;
typedef struct _OSetNode OSetNode;
-typedef Int (*OSetCmp_t) ( void* key, void* elem );
-typedef void* (*OSetAlloc_t) ( SizeT szB );
-typedef void (*OSetFree_t) ( void* p );
+typedef Word (*OSetCmp_t) ( void* key, void* elem );
+typedef void* (*OSetAlloc_t) ( SizeT szB );
+typedef void (*OSetFree_t) ( void* p );
/*--------------------------------------------------------------------*/
/*--- Creating and destroying OSets and OSet members ---*/