message: Cleanup argument parsing
diff: @@ -146,27 +146,26 @@ fn main() {
  "--" => {
  after_dashdash = true;
  }
  - _ => {
  - let split: Vec<String> = arg.split("-Zmiri-seed=").map(|s| s.to_owned()).collect();
  - if split.len() == 2 {
  + arg if arg.starts_with("-Zmiri-seed=") => {
  if seed.is_some() {
  panic!("Cannot specify -Zmiri-seed multiple times!");
  }
  - let seed_raw = hex::decode(&split[1]).unwrap();
  + let seed_raw = hex::decode(arg.trim_start_matches("-Zmiri-seed=")).unwrap();
  if seed_raw.len() > 8 {
  panic!(format!("-Zmiri-seed must be at most 8 bytes, was {}", seed_raw.len()));
  }
  let mut bytes = [0; 8];
  - bytes[..seed_raw.len()].copy_from_slice(&hex::decode(&split[1]).unwrap());
  + bytes[..seed_raw.len()].copy_from_slice(&seed_raw);
  seed = Some(u64::from_be_bytes(bytes));
  - } else {
  +
  + },
  + _ => {
  rustc_args.push(arg);
  }
  }
  }
  }
  - }
  // Determine sysroot and let rustc know about it.
  let sysroot_flag = String::from("--sysroot");
  