Update rustc's information on Android's sanitizers

This patch updates sanitizier support definitions for Android inside the
compiler.  It also adjusts the logic to make sure no pre-built sanitizer
runtime libraries are emitted as these are instead provided dynamically
on Android targets.
This commit is contained in:
Chris Wailes
2022-09-08 16:33:44 -07:00
parent 11bb80a92b
commit 3d5a41724b
5 changed files with 22 additions and 7 deletions

View File

@@ -1,10 +1,12 @@
use crate::spec::TargetOptions;
use crate::spec::{SanitizerSet, TargetOptions};
pub fn opts() -> TargetOptions {
let mut base = super::linux_base::opts();
base.os = "android".into();
base.is_like_android = true;
base.default_dwarf_version = 2;
base.has_thread_local = false;
base.supported_sanitizers = SanitizerSet::ADDRESS;
// This is for backward compatibility, see https://github.com/rust-lang/rust/issues/49867
// for context. (At that time, there was no `-C force-unwind-tables`, so the only solution
// was to always emit `uwtable`).