content: [target."x86_64-unknown-linux-gnu"]
  # Compressing debug information can yield hundreds of megabytes of savings.
  # The Rust toolchain does not currently perform dead code elimination on
  # debug info.
  #
  # See: https://github.com/rust-lang/rust/issues/56068
  # See: https://reviews.llvm.org/D74169#1990180
  #
  # As of Jan 2024 all of the x86-64 hardware we run on supports the V3 micro architecture.
  #
  # See: https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels
  #
  # Sync: This target-cpu and list of features should be kept in sync with the ones in ci-builder and
  # xcompile.
  rustflags = [
      "-Clink-arg=-Wl,--compress-debug-sections=zlib",
      "-Clink-arg=-Wl,-O3",
      "-Clink-arg=-fuse-ld=lld",
      "-Csymbol-mangling-version=v0",
      "-Ctarget-cpu=x86-64-v3",
      "-Ctarget-feature=+aes,+pclmulqdq",
      "--cfg=tokio_unstable",
  ]
  
  # As of Jan 2024 all of the Linux based aarch64 hardware we run on supports the Neoverse N1 micro
  # architecture.
  #
  # See: https://en.wikipedia.org/wiki/AWS_Graviton#Graviton2
  # See: https://github.com/aws/aws-graviton-getting-started/blob/2e6293f27f19df560c12c6d526b78c3384513f99/rust.md
  #
  # Sync: This target-cpu and list of features should be kept in sync with the ones in ci-builder and
  # xcompile.
  [target."aarch64-unknown-linux-gnu"]
  rustflags = [
      "-Clink-arg=-Wl,--compress-debug-sections=zlib",
      "-Clink-arg=-Wl,-O3",
      "-Clink-arg=-fuse-ld=lld",
      "-Csymbol-mangling-version=v0",
      "-Ctarget-cpu=neoverse-n1",
      "-Ctarget-feature=+aes,+sha2",
      "--cfg=tokio_unstable",
  ]
  
  [build]
  # Always reserve at least one core so Cargo doesn't pin our CPU
  jobs = -1
  rustflags = ["--cfg=tokio_unstable"]
  