MCPcopy Create free account
hub / github.com/AliveToolkit/alive2 / isBlockAlive

Method isBlockAlive

ir/memory.cpp:929–937  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

927}
928
929expr Memory::isBlockAlive(const expr &bid, bool local) const {
930 uint64_t bid_n;
931 if (!local && bid.isUInt(bid_n) && always_alive(bid_n))
932 return true;
933
934 return
935 load_bv(local ? local_block_liveness : non_local_block_liveness, bid) &&
936 (!local && has_null_block && !null_is_dereferenceable ? bid != 0 : true);
937}
938
939bool Memory::mayalias(bool local, unsigned bid0, const expr &offset0,
940 const expr &bytes, uint64_t align, bool write) const {

Callers 9

check_refinementFunction · 0.45
disjoint_local_blocksFunction · 0.45
startLifetimeMethod · 0.45
freeMethod · 0.45
blockRefinedMethod · 0.45
refinedMethod · 0.45
checkNocaptureMethod · 0.45
printMethod · 0.45
toSMTMethod · 0.45

Calls 3

always_aliveFunction · 0.85
load_bvFunction · 0.85
isUIntMethod · 0.80

Tested by

no test coverage detected