cc: remove --fix-cortex-a8 from non-Cortex A8 devcies

Pass --fix-cortex-a8 only on Cortex A8 and generic ARM builds, and
pass --no-fix-cortex-a8 on everything else.

Change-Id: I4b12afee4de443b5d55df66be3c6a05251715e31
diff --git a/cc/arm_device.go b/cc/arm_device.go
index 7d65e86..641f96e 100644
--- a/cc/arm_device.go
+++ b/cc/arm_device.go
@@ -88,12 +88,6 @@
 		},
 	}
 
-	armArchVariantLdflags = map[string][]string{
-		"armv7-a": []string{
-			"-Wl,--fix-cortex-a8",
-		},
-	}
-
 	armCpuVariantCflags = map[string][]string{
 		"cortex-a7": []string{
 			"-mcpu=cortex-a7",
@@ -158,9 +152,6 @@
 	pctx.StaticVariable("armArmv7ACflags", strings.Join(armArchVariantCflags["armv7-a"], " "))
 	pctx.StaticVariable("armArmv7ANeonCflags", strings.Join(armArchVariantCflags["armv7-a-neon"], " "))
 
-	// Architecture variant ldflags
-	pctx.StaticVariable("armArmv7ALdflags", strings.Join(armArchVariantLdflags["armv7-a"], " "))
-
 	// Cpu variant cflags
 	pctx.StaticVariable("armCortexA7Cflags", strings.Join(armCpuVariantCflags["cortex-a7"], " "))
 	pctx.StaticVariable("armCortexA8Cflags", strings.Join(armCpuVariantCflags["cortex-a8"], " "))
@@ -197,11 +188,6 @@
 		"armv7-a-neon": "${armArmv7ANeonCflags}",
 	}
 
-	armArchVariantLdflagsVar = map[string]string{
-		"armv7-a":      "${armArmv7ALdflags}",
-		"armv7-a-neon": "${armArmv7ALdflags}",
-	}
-
 	armCpuVariantCflagsVar = map[string]string{
 		"":           "",
 		"cortex-a7":  "${armCortexA7Cflags}",
@@ -292,6 +278,15 @@
 }
 
 func armToolchainFactory(archVariant string, cpuVariant string) Toolchain {
+	var fixCortexA8 string
+	switch cpuVariant {
+	case "cortex-a8", "":
+		// Generic ARM might be a Cortex A8 -- better safe than sorry
+		fixCortexA8 = "-Wl,--fix-cortex-a8"
+	default:
+		fixCortexA8 = "-Wl,--no-fix-cortex-a8"
+	}
+
 	return &toolchainArm{
 		cflags: strings.Join([]string{
 			"${armCflags}",
@@ -300,7 +295,7 @@
 		}, " "),
 		ldflags: strings.Join([]string{
 			"${armLdflags}",
-			armArchVariantLdflagsVar[archVariant],
+			fixCortexA8,
 		}, " "),
 		clangCflags: strings.Join([]string{
 			"${armClangCflags}",