Skip to content

Add shadow memory instrumentation to ArrayVec#3243

Closed
zhassan-aws wants to merge 1 commit intomodel-checking:mainfrom
zhassan-aws:shadow-arrayvec
Closed

Add shadow memory instrumentation to ArrayVec#3243
zhassan-aws wants to merge 1 commit intomodel-checking:mainfrom
zhassan-aws:shadow-arrayvec

Conversation

@zhassan-aws
Copy link
Contributor

This PR adds shadow memory instrumentation inside the ArrayVec data structure (from the arrayvec crate) that check that accessed memory locations are properly initialized.

All instrumentation is marked by a comment of the following form:

// SHADOW: ...

and are only done in arrayvec.rs and arrayvec_impl.rs, so these are the only two files that need to be reviewed.

The PR includes one harness that checks that simple push/pop operations are safe with respect to accessing initialized memory.

Keeping this as a draft till we add modified copyright notices and a few more harnesses.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.

@zhassan-aws
Copy link
Contributor Author

This is subsumed by memory initialization checks (#3264). Closing.

@zhassan-aws zhassan-aws closed this Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant