Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/BorrowSanitizer/bsan
/ functions
Functions
2,093 in github.com/BorrowSanitizer/bsan
⨍
Functions
2,093
◇
Types & classes
426
↓ 75 callers
Method
push
Record an additional event to the history.
bsan-rt/src/tree_borrows/diagnostics.rs:129
↓ 73 callers
Method
get
Returns the current reference count at the time this function is called.
bsan-rt/src/tree_borrows/refcount.rs:80
↓ 68 callers
Method
iter
Iterates over all key-value pairs in the map.
bsan-rt/src/tree_borrows/data_structures/unimap.rs:237
↓ 60 callers
Function
transmute
()
tests/miri-tests/pass/intptrcast.rs:40
↓ 60 callers
Method
write
Print the current indentation.
bsan-rt/src/tree_borrows/diagnostics.rs:625
↓ 53 callers
Function
default
()
tests/test-cargo-bsan/src/main.rs:6
↓ 44 callers
Function
from
()
tests/miri-tests/pass/arrays.rs:37
↓ 42 callers
Function
f
(x: S<[u8]>)
tests/miri-tests/pass/unsized.rs:29
↓ 40 callers
Method
clone
Snapshots the current count into a fresh `RefCount`.
bsan-rt/src/tree_borrows/refcount.rs:13
↓ 40 callers
Method
clone
(&self)
tests/miri-tests/excluded/pass/intrinsics/portable-simd.rs:27
↓ 40 callers
Method
into
(self)
bsan-rt/src/memory/mod.rs:30
↓ 40 callers
Function
test_abi_compat
(t: T, u: U)
tests/miri-tests/pass/function_calls/abi_compat.rs:30
↓ 37 callers
Method
as_mut_ptr
(&mut self)
tests/miri-tests/pass/both_borrows/smallvec.rs:81
↓ 34 callers
Method
run
bsan-pass/BorrowSanitizer.cpp:713
↓ 33 callers
Method
len
(&self)
tests/miri-tests/pass/both_borrows/smallvec.rs:90
↓ 32 callers
Method
iter_mut
Provides mutable iteration over everything in the given range. As a side-effect, this will split entries in the map that are only partially hit by the
bsan-rt/src/tree_borrows/data_structures/dedup_range_map.rs:139
↓ 29 callers
Method
get
(&self)
bsan-rt/src/lib.rs:100
↓ 26 callers
Method
push
Pretends to not be a throwaway allocation method like this. A more realistic substitute is using intrusive linked lists, which requires access to the
tests/miri-tests/pass/box-custom-alloc-aliasing.rs:43
↓ 24 callers
Method
get
(&self)
tests/miri-tests/pass/issues/issue-23261.rs:14
↓ 23 callers
Method
insert
(&mut self, key: K)
bsan-rt/src/tree_borrows/data_structures/unimap.rs:128
↓ 23 callers
Method
len
How many keys/index pairs are currently active.
bsan-rt/src/tree_borrows/data_structures/unimap.rs:115
↓ 21 callers
Method
contains
bsan-rt/llvm-wrapper/bsan_set.cpp:21
↓ 21 callers
Method
size
bsan-rt/llvm-wrapper/bsan_set.h:36
↓ 20 callers
Method
add
(&mut self, n: u64)
tests/miri-tests/fail/aliasing/stacked_borrows/stacked-borrows.rs:39
↓ 20 callers
Method
get_mut
Get the value at this index mutably, if it exists.
bsan-rt/src/tree_borrows/data_structures/unimap.rs:215
↓ 20 callers
Method
insert
bsan-rt/llvm-wrapper/bsan_set.cpp:26
↓ 20 callers
Method
set
bsan-pass/BorrowSanitizer.cpp:669
↓ 18 callers
Method
get
(&self)
tests/miri-tests/pass/dst-field-align.rs:13
↓ 18 callers
Function
into_raw
()
tests/miri-tests/pass/box.rs:11
↓ 17 callers
Method
is_empty
Returns true if the map is empty.
bsan-rt/src/tree_borrows/data_structures/unimap.rs:232
↓ 16 callers
Function
global_ctx
()
bsan-rt/src/global.rs:301
↓ 14 callers
Method
pop
(&self)
tests/miri-tests/pass/box-custom-alloc-aliasing.rs:27
↓ 13 callers
Function
BlockInterception
bsan-rt/llvm-wrapper/bsan_interceptors.cpp:28
↓ 13 callers
Method
bytes
Get the number of bytes in a size
bsan-rt/src/helpers.rs:40
↓ 13 callers
Method
getProvenanceDesc
Provides a list of the locations of provenance values inside a type.
bsan-pass/BorrowSanitizer.cpp:352
↓ 13 callers
Function
global_ctx
bsan-rt/llvm-wrapper/bsan_global.cpp:125
↓ 13 callers
Method
next
(&mut self)
cargo-bsan/src/arg.rs:34
↓ 12 callers
Method
end
(self)
bsan-rt/src/helpers.rs:93
↓ 12 callers
Method
get
If it exists, the index this key maps to.
bsan-rt/src/tree_borrows/data_structures/unimap.rs:145
↓ 12 callers
Function
has_arg_flag
Determines whether a `--flag` is present.
cargo-bsan/src/arg.rs:7
↓ 12 callers
Method
path
(&self)
tests/fix_utils.rs:105
↓ 11 callers
Function
count_rs
(path: &Path)
bsan-script/src/stats.rs:6
↓ 11 callers
Function
dealloc
Checks that we can deallocate through a wildcard reference.
tests/miri-tests/pass/tree_borrows/wildcard/wildcard.rs:101
↓ 11 callers
Function
test
(expect_msg: Option<&str>, do_panic: impl FnOnce(usize) -> !)
tests/miri-tests/should-pass/performance/panic/catch_panic.rs:91
↓ 10 callers
Method
build_artifact
(&mut self, b: impl Buildable, args: &[String])
bsan-script/src/env.rs:380
↓ 10 callers
Function
call_once
(f: impl async FnOnce() -> T)
tests/miri-tests/pass/async-closure-captures.rs:30
↓ 9 callers
Function
BsanAllocate
bsan-rt/llvm-wrapper/bsan_allocator.cpp:77
↓ 9 callers
Function
GetParamSlot
Returns a pointer to the slot on the shadow stack at the given index. The shadow stack grows downward, so we subtract by the given index plus one to a
bsan-rt/llvm-wrapper/bsan.cpp:104
↓ 9 callers
Function
alloc_range
(start: Size, size: Size)
bsan-rt/src/helpers.rs:86
↓ 9 callers
Method
default_location_state
(&self)
bsan-rt/src/tree_borrows/tree.rs:1013
↓ 9 callers
Function
foo
x is a fat pointer
tests/miri-tests/pass/dst-struct.rs:9
↓ 9 callers
Method
insert_at_pos
Inserts an object and its occupied range at given position The Position can be calculated from AllocRange, but the only user of AllocationMap always c
bsan-rt/src/tree_borrows/data_structures/range_object_map.rs:106
↓ 9 callers
Method
permission
(&self)
bsan-rt/src/tree_borrows/tree.rs:96
↓ 9 callers
Function
ptrsub
bsan-pass/BorrowSanitizer.cpp:90
↓ 9 callers
Method
strongest_allowed_local_access
Returns the strongest access allowed that is local to this node without causing UB (only considers possible transitions to this permission).
bsan-rt/src/tree_borrows/perms.rs:427
↓ 9 callers
Method
to_usize
(self)
bsan-rt/src/helpers.rs:137
↓ 9 callers
Function
ui
( mode: Mode, path: &str, target: &VersionMeta, with_dependencies: Dependencies, tmpdir: &
tests/ui.rs:290
↓ 9 callers
Method
value
(&self)
bsan-script/src/utils.rs:112
↓ 8 callers
Function
cargo_bsan
(cmd, quiet=True, nop=False)
tests/test-cargo-bsan/run_test.py:18
↓ 8 callers
Function
finish
(mut amt: usize, self_referential: bool, mut t: T)
tests/miri-tests/pass/coroutine.rs:15
↓ 8 callers
Function
once
(f: F)
tests/miri-tests/pass/closures.rs:26
↓ 8 callers
Method
protected_tags
(&'a self)
bsan-rt/src/global.rs:126
↓ 8 callers
Function
ptradd
bsan-pass/BorrowSanitizer.cpp:84
↓ 7 callers
Function
CurrentThread
bsan-rt/llvm-wrapper/bsan_linux.cpp:12
↓ 7 callers
Function
expect_env_path
(key: &str)
cargo-bsan/src/util.rs:193
↓ 7 callers
Function
fail
(msg)
tests/test-cargo-bsan/run_test.py:13
↓ 7 callers
Method
iter_all
Provides iteration over all elements. The iterator also provides the range of the given element. How exactly the ranges are split can differ even for
bsan-rt/src/tree_borrows/data_structures/dedup_range_map.rs:100
↓ 7 callers
Function
perform_access
Dispatch handler depending on the kind of access and its position.
bsan-rt/src/tree_borrows/perms.rs:258
↓ 7 callers
Method
remove
Removes a node from the datastructure. The caller needs to ensure that the node does not have any children.
bsan-rt/src/tree_borrows/wildcard.rs:188
↓ 7 callers
Method
take
(&mut self)
bsan-rt/src/borrow_tracker.rs:86
↓ 7 callers
Function
test
( name, cmd, stdout_ref=None, stderr_ref=None, stdin=b"", stdout_regex=False, stde
tests/test-cargo-bsan/run_test.py:57
↓ 6 callers
Function
AlignRange8
bsan-rt/llvm-wrapper/bsan_shadow.cpp:210
↓ 6 callers
Function
assert_panicked
(f: impl FnOnce() + std::panic::UnwindSafe)
tests/miri-tests/should-pass/performance/panic/std-panic-locations.rs:20
↓ 6 callers
Method
build
(&self, env: &mut BsanEnv, args: &[String])
bsan-script/src/commands.rs:474
↓ 6 callers
Method
deallocate
(&self, _ptr: NonNull<u8>, _layout: Layout)
tests/miri-tests/pass/box-custom-alloc.rs:29
↓ 6 callers
Function
drain
( gen_: &mut G, inout: Vec<(R, CoroutineState<Y, G::Return>)>, )
tests/miri-tests/pass/coroutine.rs:186
↓ 6 callers
Method
drain
bsan-rt/llvm-wrapper/bsan_set.h:80
↓ 6 callers
Method
extend_to_length
Reserve enough space to insert the value at the right index.
bsan-rt/src/tree_borrows/data_structures/unimap.rs:193
↓ 6 callers
Method
find
bsan-pass/BorrowSanitizer.cpp:646
↓ 6 callers
Function
g
(x: *const i32)
tests/miri-tests/fail/baseline/tail_calls/dangling-local-var.rs:5
↓ 6 callers
Method
get_protector_kind
(&self, tag: BorTag)
bsan-rt/src/global.rs:27
↓ 6 callers
Method
is_wildcard
(self)
bsan-rt/src/lib.rs:157
↓ 6 callers
Method
iter_mut_all
Provides mutable iteration over all elements. The iterator also provides the range of the given element. How exactly the ranges are split can differ e
bsan-rt/src/tree_borrows/data_structures/dedup_range_map.rs:92
↓ 6 callers
Method
poll
(self: Pin<&mut Self>, _cx: &mut Context<'_>)
tests/miri-tests/pass/async-niche-aliasing.rs:19
↓ 6 callers
Function
rustc
()
cargo-bsan/src/util.rs:211
↓ 6 callers
Method
sub
(self, other: Size)
bsan-rt/src/helpers.rs:72
↓ 6 callers
Method
with_flags
(&mut self, var: &str, flags: &[&str], f: F)
bsan-script/src/env.rs:206
↓ 5 callers
Function
AlignPtr8
bsan-rt/llvm-wrapper/bsan_shadow.cpp:207
↓ 5 callers
Function
BsanAllocateMetaIntoStack
bsan-rt/llvm-wrapper/bsan_interceptors.cpp:165
↓ 5 callers
Function
CheckMemoryRangeAvailability
TODO: CheckMemoryRangeAvailability is based on msan. Consider refactoring these into a shared implementation.
bsan-rt/llvm-wrapper/bsan_shadow.cpp:44
↓ 5 callers
Method
add
(&mut self, n: u64)
tests/miri-tests/fail/aliasing/tree_borrows/write-during-2phase.rs:12
↓ 5 callers
Method
allocate
(&self, layout: Layout)
tests/miri-tests/pass/box-custom-alloc.rs:16
↓ 5 callers
Method
cargo_cmd
(&self, crate_dir: impl AsRef<OsStr>, cmd: &str)
bsan-script/src/env.rs:251
↓ 5 callers
Method
dealloc
(&self, ptr: NonNull<T>)
bsan-rt/src/memory/heap.rs:87
↓ 5 callers
Method
erase
bsan-rt/llvm-wrapper/bsan_set.cpp:38
↓ 5 callers
Function
expect_drops
(expected_drops: usize, f: impl FnOnce() -> T)
tests/miri-tests/pass/coroutine.rs:213
↓ 5 callers
Function
f
(x: [usize; 2], i: u32)
tests/miri-tests/pass/function_calls/tail_call.rs:44
↓ 5 callers
Function
foo
x is a fat pointer
tests/miri-tests/pass/dst-struct-sole.rs:9
↓ 5 callers
Function
foo2
(x: &Fat<[T]>)
tests/miri-tests/pass/dst-struct.rs:18
↓ 5 callers
Function
foo2
(x: &Fat<[T]>)
tests/miri-tests/pass/dst-struct-sole.rs:16
next →
1–100 of 2,093, ranked by callers