Lines Matching defs:Inv
837 Inv;
853 i->Inv.Stack0.addr, i->Inv.Stack0.szB);
857 i->Inv.StackN.nd->addr, i->Inv.StackN.nd->szB);
861 i->Inv.Global.nd->addr, i->Inv.Global.nd->szB);
879 return i1->Inv.Stack0.addr == i2->Inv.Stack0.addr
880 && i1->Inv.Stack0.szB == i2->Inv.Stack0.szB;
882 return i1->Inv.StackN.nd == i2->Inv.StackN.nd;
884 return i1->Inv.Global.nd == i2->Inv.Global.nd;
899 Invar* inv, Addr ea )
907 switch (inv->tag) {
912 block = inv->Inv.Stack0.addr;
913 szB = inv->Inv.Stack0.szB;
916 block = inv->Inv.StackN.nd->addr;
917 szB = inv->Inv.StackN.nd->szB;
920 block = inv->Inv.Global.nd->addr;
921 szB = inv->Inv.Global.nd->szB;
944 static void show_Invar( HChar* buf, Word nBuf, Invar* inv, Word depth )
949 switch (inv->tag) {
956 str, inv->Inv.Stack0.descr->name,
957 inv->Inv.Stack0.szB );
962 str, inv->Inv.StackN.nd->descr->name,
963 inv->Inv.StackN.nd->descr->szB,
964 depth - inv->Inv.StackN.nd->depth );
969 str, inv->Inv.Global.nd->descr->name,
970 inv->Inv.Global.nd->descr->szB,
971 inv->Inv.Global.nd->descr->soname );
1002 Invar inv;
1024 pp_Invar(&qc->elems[i].inv);
1252 static void preen_global_Invar ( Invar* inv, Addr a, SizeT len )
1256 tl_assert(inv);
1257 switch (inv->tag) {
1259 tl_assert(inv->Inv.Global.nd);
1260 tl_assert(inv->Inv.Global.nd->szB > 0);
1262 inv->Inv.Global.nd->addr,
1263 inv->Inv.Global.nd->szB);
1264 if (0 == cmp_nonempty_intervals(a, len, inv->Inv.Global.nd->addr,
1265 inv->Inv.Global.nd->szB)) {
1266 inv->tag = Inv_Unknown;
1513 write the result in 'inv'. This writes all relevant fields of
1514 'inv'. */
1516 static void classify_address ( /*OUT*/Invar* inv,
1533 inv->tag = Inv_Stack0;
1534 inv->Inv.Stack0.addr = bea;
1535 inv->Inv.Stack0.szB = descr->szB;
1536 inv->Inv.Stack0.descr = descr;
1561 *inv = cache->elems[i].inv;
1579 inv->tag = Inv_StackN;
1580 inv->Inv.StackN.nd = nd;
1595 inv->tag = Inv_Global;
1596 inv->Inv.Global.nd = nd;
1602 inv->tag = Inv_Unknown;
1617 switch (inv->tag) {
1619 toadd_addr = inv->Inv.Global.nd->addr;
1620 toadd_szB = inv->Inv.Global.nd->szB;
1623 toadd_addr = inv->Inv.StackN.nd->addr;
1624 toadd_szB = inv->Inv.StackN.nd->szB;
1744 } /* switch (inv->tag) */
1759 cache->elems[ip].inv = *inv;
1778 Invar* inv;
1799 inv = &iinstance->invar;
1802 if (inv->tag == Inv_Unset) {
1807 classify_address( inv,
1809 tl_assert(inv->tag != Inv_Unset);
1821 tl_assert(inv->tag != Inv_Unset);
1823 if (LIKELY(eq_Invar(&new_inv, inv)))
1827 show_Invar( bufE, sizeof(bufE)-1, inv, frame->depth );
1834 gen_delta_str( bufD, &absDelta, inv, ea );
1841 *inv = new_inv;