Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1751260 authored by Dan Albert's avatar Dan Albert Committed by Gerrit Code Review
Browse files

Merge "[arm64] Build NDK with PAuth and BTI"

parents 6e304f5a bca786d7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1442,7 +1442,7 @@ type archConfig struct {
func getNdkAbisConfig() []archConfig {
	return []archConfig{
		{"arm", "armv7-a", "", []string{"armeabi-v7a"}},
		{"arm64", "armv8-a", "", []string{"arm64-v8a"}},
		{"arm64", "armv8-a-branchprot", "", []string{"arm64-v8a"}},
		{"x86", "", "", []string{"x86"}},
		{"x86_64", "", "", []string{"x86_64"}},
	}
+1 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ var archVariants = map[ArchType][]string{
	},
	Arm64: {
		"armv8_a",
		"armv8_a_branchprot",
		"armv8_2a",
		"armv8-2a-dotprod",
		"cortex-a53",
+7 −0
Original line number Diff line number Diff line
@@ -31,6 +31,10 @@ var (
		"armv8-a": []string{
			"-march=armv8-a",
		},
		"armv8-a-branchprot": []string{
			"-march=armv8-a",
			"-mbranch-protection=standard",
		},
		"armv8-2a": []string{
			"-march=armv8.2-a",
		},
@@ -102,6 +106,7 @@ func init() {
	pctx.StaticVariable("Arm64ClangCppflags", strings.Join(ClangFilterUnknownCflags(arm64Cppflags), " "))

	pctx.StaticVariable("Arm64ClangArmv8ACflags", strings.Join(arm64ArchVariantCflags["armv8-a"], " "))
	pctx.StaticVariable("Arm64ClangArmv8ABranchProtCflags", strings.Join(arm64ArchVariantCflags["armv8-a-branchprot"], " "))
	pctx.StaticVariable("Arm64ClangArmv82ACflags", strings.Join(arm64ArchVariantCflags["armv8-2a"], " "))
	pctx.StaticVariable("Arm64ClangArmv82ADotprodCflags", strings.Join(arm64ArchVariantCflags["armv8-2a-dotprod"], " "))

@@ -124,6 +129,7 @@ func init() {
var (
	arm64ClangArchVariantCflagsVar = map[string]string{
		"armv8-a":  "${config.Arm64ClangArmv8ACflags}",
		"armv8-a-branchprot": "${config.Arm64ClangArmv8ABranchProtCflags}",
		"armv8-2a": "${config.Arm64ClangArmv82ACflags}",
		"armv8-2a-dotprod": "${config.Arm64ClangArmv82ADotprodCflags}",
	}
@@ -202,6 +208,7 @@ func (toolchainArm64) LibclangRuntimeLibraryArch() string {
func arm64ToolchainFactory(arch android.Arch) Toolchain {
	switch arch.ArchVariant {
	case "armv8-a":
	case "armv8-a-branchprot":
	case "armv8-2a":
	case "armv8-2a-dotprod":
		// Nothing extra for armv8-a/armv8-2a
+4 −3
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ var (

	Arm64ArchVariantRustFlags = map[string][]string{
		"armv8-a":            []string{},
		"armv8-a-branchprot": []string{},
		"armv8-2a":           []string{},
		"armv8-2a-dotprod":   []string{},
	}