libafl_cc using hwasan on Linux/Android arm64 (#1399)

This commit is contained in:
David CARLIER 2023-08-04 00:50:41 +01:00 committed by GitHub
parent 5dd5b1efa8
commit 83f739f010
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -104,6 +104,16 @@ impl Configuration {
pub fn to_flags(&self) -> Result<Vec<String>, Error> { pub fn to_flags(&self) -> Result<Vec<String>, Error> {
Ok(match self { Ok(match self {
Configuration::Default => vec![], Configuration::Default => vec![],
// hardware asan is more memory efficient than asan on arm64
#[cfg(all(
any(target_os = "linux", target_os = "android"),
target_arch = "aarch64"
))]
Configuration::AddressSanitizer => vec!["-fsanitize=hwaddress".to_string()],
#[cfg(not(all(
any(target_os = "linux", target_os = "android"),
target_arch = "aarch64"
)))]
Configuration::AddressSanitizer => vec!["-fsanitize=address".to_string()], Configuration::AddressSanitizer => vec!["-fsanitize=address".to_string()],
Configuration::UndefinedBehaviorSanitizer => vec!["-fsanitize=undefined".to_string()], Configuration::UndefinedBehaviorSanitizer => vec!["-fsanitize=undefined".to_string()],
Configuration::GenerateCoverageMap => { Configuration::GenerateCoverageMap => {