Add -faddrsig to ClangExtraCflags

Emit address-significance table which allows linker to perform safe ICF.
Clang does not emit the table by default on Android since NDK still uses
GNU binutils.

With the flag, binary size is decreased. For Marlin:
               -fno-addrsig  -faddrsig  diff
/system/bin    28012K        27108K     -3.33%
/system/lib    88220K        86964K     -1.44%
/system/lib64  151936K       148108K    -2.58%

Test: m checkbuild
Bug: 128940110
Change-Id: I99511f038a6d4b88b5c849a0f8943c24731ab6ea
Merged-In: I99511f038a6d4b88b5c849a0f8943c24731ab6ea
(cherry picked from commit a32b5e6a6bcf3d4c8120401f39cbeffd5efb7656)
diff --git a/cc/config/clang.go b/cc/config/clang.go
index 08c638d..75b8f93 100644
--- a/cc/config/clang.go
+++ b/cc/config/clang.go
@@ -97,6 +97,10 @@
 	pctx.StaticVariable("ClangExtraCflags", strings.Join([]string{
 		"-D__compiler_offsetof=__builtin_offsetof",
 
+		// Emit address-significance table which allows linker to perform safe ICF. Clang does
+		// not emit the table by default on Android since NDK still uses GNU binutils.
+		"-faddrsig",
+
 		// Make implicit fallthrough an error in the future.
 		"-Wimplicit-fallthrough",
 		"-Wno-error=implicit-fallthrough",