Lines Matching refs:sf
1328 static void initialise_II_hash_table ( StackFrame* sf ) in initialise_II_hash_table() argument
1331 sf->htab_size = N_HTAB_FIXED; /* initial hash table size */ in initialise_II_hash_table()
1332 sf->htab = &sf->htab_fixed[0]; in initialise_II_hash_table()
1333 tl_assert(sf->htab); in initialise_II_hash_table()
1334 sf->htab_used = 0; in initialise_II_hash_table()
1335 for (i = 0; i < sf->htab_size; i++) in initialise_II_hash_table()
1336 sf->htab[i].insn_addr = 0; /* NOT IN USE */ in initialise_II_hash_table()
1341 static void resize_II_hash_table ( StackFrame* sf ) in resize_II_hash_table() argument
1346 tl_assert(sf && sf->htab); in resize_II_hash_table()
1347 old_size = sf->htab_size; in resize_II_hash_table()
1349 old_htab = sf->htab; in resize_II_hash_table()
1379 if (old_htab != &sf->htab_fixed[0]) in resize_II_hash_table()
1381 sf->htab = new_htab; in resize_II_hash_table()
1382 sf->htab_size = new_size; in resize_II_hash_table()
1391 tl_assert(j == sf->htab_used); in resize_II_hash_table()
1392 if (0) VG_(printf)("resized tab for SF %p to %lu\n", sf, new_size); in resize_II_hash_table()
1398 StackFrame* sf, in find_or_create_IInstance_SLOW() argument
1407 tl_assert(sf); in find_or_create_IInstance_SLOW()
1408 tl_assert(sf->htab); in find_or_create_IInstance_SLOW()
1411 if (UNLIKELY(2 * sf->htab_used >= 1 * sf->htab_size)) { in find_or_create_IInstance_SLOW()
1413 resize_II_hash_table(sf); in find_or_create_IInstance_SLOW()
1415 tl_assert(2 * sf->htab_used <= sf->htab_size); in find_or_create_IInstance_SLOW()
1417 ix = compute_II_hash(ip, sf->htab_size); in find_or_create_IInstance_SLOW()
1418 i = sf->htab_size; in find_or_create_IInstance_SLOW()
1425 if (sf->htab[ix].insn_addr == ip) in find_or_create_IInstance_SLOW()
1426 return &sf->htab[ix]; in find_or_create_IInstance_SLOW()
1427 if (sf->htab[ix].insn_addr == 0) in find_or_create_IInstance_SLOW()
1437 if (ix == sf->htab_size) ix = 0; in find_or_create_IInstance_SLOW()
1441 tl_assert(sf->htab[ix].insn_addr == 0); in find_or_create_IInstance_SLOW()
1445 sf->htab[ix].insn_addr = ip; in find_or_create_IInstance_SLOW()
1446 sf->htab[ix].blocks = ip_frameblocks; in find_or_create_IInstance_SLOW()
1447 sf->htab[ix].invar.tag = Inv_Unset; in find_or_create_IInstance_SLOW()
1448 sf->htab_used++; in find_or_create_IInstance_SLOW()
1449 return &sf->htab[ix]; in find_or_create_IInstance_SLOW()
1455 StackFrame* sf, in find_or_create_IInstance() argument
1460 UWord ix = compute_II_hash(ip, sf->htab_size); in find_or_create_IInstance()
1462 if (LIKELY(sf->htab[ix].insn_addr == ip)) { in find_or_create_IInstance()
1464 return &sf->htab[ix]; in find_or_create_IInstance()
1467 if (LIKELY(sf->htab[ix].insn_addr == 0)) { in find_or_create_IInstance()
1470 sf->htab[ix].insn_addr = ip; in find_or_create_IInstance()
1471 sf->htab[ix].blocks = ip_frameblocks; in find_or_create_IInstance()
1472 sf->htab[ix].invar.tag = Inv_Unset; in find_or_create_IInstance()
1473 sf->htab_used++; in find_or_create_IInstance()
1474 return &sf->htab[ix]; in find_or_create_IInstance()
1478 return find_or_create_IInstance_SLOW( sf, ip, ip_frameblocks ); in find_or_create_IInstance()
2477 StackFrame* sf; in shadowStack_set_initial_SP() local
2479 sf = shadowStacks[tid]; in shadowStack_set_initial_SP()
2480 tl_assert(sf != NULL); in shadowStack_set_initial_SP()
2481 tl_assert(sf->outer == NULL); in shadowStack_set_initial_SP()
2482 tl_assert(sf->inner == NULL); in shadowStack_set_initial_SP()
2483 tl_assert(sf->creation_sp == ~0UL); in shadowStack_set_initial_SP()