Merge "Allow SCS for riscv64 too."
This commit is contained in:
commit
c214e1ab8a
2 changed files with 7 additions and 3 deletions
|
@ -26,12 +26,16 @@ var (
|
|||
// Help catch common 32/64-bit errors.
|
||||
"-Werror=implicit-function-declaration",
|
||||
"-fno-emulated-tls",
|
||||
// For -fsanitize=shadow-call-stack.
|
||||
"-ffixed-x18",
|
||||
}
|
||||
|
||||
riscv64ArchVariantCflags = map[string][]string{}
|
||||
|
||||
riscv64Ldflags = []string{
|
||||
"-Wl,--hash-style=gnu",
|
||||
// For -fsanitize=shadow-call-stack.
|
||||
"-ffixed-x18",
|
||||
}
|
||||
|
||||
riscv64Lldflags = append(riscv64Ldflags,
|
||||
|
|
|
@ -254,7 +254,7 @@ type SanitizeUserProps struct {
|
|||
// This should not be used in Android 11+ : https://source.android.com/devices/tech/debug/scudo
|
||||
// deprecated
|
||||
Scudo *bool `android:"arch_variant"`
|
||||
// shadow-call-stack sanitizer, only available on arm64
|
||||
// shadow-call-stack sanitizer, only available on arm64/riscv64.
|
||||
Scs *bool `android:"arch_variant"`
|
||||
// Memory-tagging, only available on arm64
|
||||
// if diag.memtag unset or false, enables async memory tagging
|
||||
|
@ -593,8 +593,8 @@ func (sanitize *sanitize) begin(ctx BaseModuleContext) {
|
|||
s.Hwaddress = nil
|
||||
}
|
||||
|
||||
// SCS is only implemented on AArch64.
|
||||
if ctx.Arch().ArchType != android.Arm64 || !ctx.toolchain().Bionic() {
|
||||
// SCS is only implemented on AArch64/riscv64.
|
||||
if (ctx.Arch().ArchType != android.Arm64 && ctx.Arch().ArchType != android.Riscv64) || !ctx.toolchain().Bionic() {
|
||||
s.Scs = nil
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue