about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTaras Tsugrii <taras.tsugriy@gmail.com>2023-08-07 22:34:54 -0500
committerGitHub <noreply@github.com>2023-08-07 22:34:54 -0500
commitfcceef1838b09cffdc94eca97788b45a29e1299f (patch)
treeac5fdbe63b9575d4dc0d981ae6cc800a4512d9a3
parent31e9f7a6ef3ec981d4c9797f90f303e63c31f0b4 (diff)
downloadrust-fcceef1838b09cffdc94eca97788b45a29e1299f.tar.gz
rust-fcceef1838b09cffdc94eca97788b45a29e1299f.zip
[perf] Reserve capacity for argvs.
This avoids unnecessary allocations to grow vector to sufficient size.
-rw-r--r--src/tools/miri/src/eval.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/tools/miri/src/eval.rs b/src/tools/miri/src/eval.rs
index b761a6cf475..88e7d5386db 100644
--- a/src/tools/miri/src/eval.rs
+++ b/src/tools/miri/src/eval.rs
@@ -301,7 +301,7 @@ pub fn create_ecx<'mir, 'tcx: 'mir>(
     // Third argument (`argv`): created from `config.args`.
     let argv = {
         // Put each argument in memory, collect pointers.
-        let mut argvs = Vec::<Immediate<Provenance>>::new();
+        let mut argvs = Vec::<Immediate<Provenance>>::with_capacity(config.args.len());
         for arg in config.args.iter() {
             // Make space for `0` terminator.
             let size = u64::try_from(arg.len()).unwrap().checked_add(1).unwrap();