Fix X86 flags

Add extra clang cflags, and correct the clang triple for X86 device
builds.

Change-Id: I95abbd0f0f943ebdede905733785ee3659610058
diff --git a/cc/x86_device.go b/cc/x86_device.go
index 6b90f17..c1bdfd5 100644
--- a/cc/x86_device.go
+++ b/cc/x86_device.go
@@ -46,6 +46,15 @@
 		"-fno-strict-aliasing",
 	}
 
+	x86ClangCflags = append(x86Cflags, []string{
+		"-msse3",
+
+		// -mstackrealign is needed to realign stack in native code
+		// that could be called from JNI, so that movaps instruction
+		// will work on assumed stack aligned local variables.
+		"-mstackrealign",
+	}...)
+
 	x86Cppflags = []string{}
 
 	x86Ldflags = []string{
@@ -157,7 +166,7 @@
 	}, " "))
 
 	// Clang cflags
-	pctx.StaticVariable("x86ClangCflags", strings.Join(clangFilterUnknownCflags(x86Cflags), " "))
+	pctx.StaticVariable("x86ClangCflags", strings.Join(clangFilterUnknownCflags(x86ClangCflags), " "))
 	pctx.StaticVariable("x86ClangLdflags", strings.Join(clangFilterUnknownCflags(x86Ldflags), " "))
 	pctx.StaticVariable("x86ClangCppflags", strings.Join(clangFilterUnknownCflags(x86Cppflags), " "))
 
@@ -217,7 +226,11 @@
 }
 
 func (t *toolchainX86) ClangTriple() string {
-	return "${x86GccTriple}"
+	return "i686-linux-android"
+}
+
+func (t *toolchainX86) ToolchainClangLdflags() string {
+	return "${x86ToolchainLdflags}"
 }
 
 func (t *toolchainX86) ToolchainClangCflags() string {