gollvm: tweak cmake rules for aeshash.c to include correct flags

The libgo runtime source aeshash.c contains AES/SSE3-specific
intrinsics that require CPU features not ordinarily used for default
x86_64 compilation. This source file contains a "#pragma GCC target"
directive that asks for the features, but that pragma is not supported
by clang. Prior versions of clang would go ahead and inline in the AES
intrinsics anyhow, but newer versions issue an error. To work around
this, change the compile flags for aeshash.c to include "-maes -mssse3".

Change-Id: I638059cd429c5e1157deccd52d76cceea5d3c087
Reviewed-on: https://go-review.googlesource.com/c/gollvm/+/175197
Reviewed-by: Cherry Zhang <cherryyz@google.com>
diff --git a/libgo/CMakeLists.txt b/libgo/CMakeLists.txt
index 65f829c..aaf9b05 100644
--- a/libgo/CMakeLists.txt
+++ b/libgo/CMakeLists.txt
@@ -461,6 +461,11 @@
 endforeach()
 string(APPEND baseopts "${GOLLVM_EXTRA_CFLAGS} ")
 
+# Special flags required for aeshash.c (functions in this file are called
+# only when running on the proper architecture, so it is safe to ask for
+# specific architectural features).
+set_source_files_properties(${libgo_csrcroot}/runtime/aeshash.c PROPERTIES COMPILE_FLAGS "-maes -mssse3")
+
 # Object library based on libgo C code, PIC-compiled
 add_library(libgo_c_piclib OBJECT EXCLUDE_FROM_ALL ${runtimecpaths})
 set_target_properties(libgo_c_piclib PROPERTIES COMPILE_FLAGS "-fPIC ${baseopts}")