Update prebuilt Clang to r365631c1 from Android.

The version we had was segfaulting.

Bug: 132420445
Change-Id: Icb45a6fe0b4e2166f7895e669df1157cec9fb4e0
diff --git a/linux-x64/clang/bin/clang-9 b/linux-x64/clang/bin/clang-9
index 3051fa5..0c45da5 100755
--- a/linux-x64/clang/bin/clang-9
+++ b/linux-x64/clang/bin/clang-9
Binary files differ
diff --git a/linux-x64/clang/bin/clang-check b/linux-x64/clang/bin/clang-check
index c239976..9d587b5 100755
--- a/linux-x64/clang/bin/clang-check
+++ b/linux-x64/clang/bin/clang-check
Binary files differ
diff --git a/linux-x64/clang/bin/clang-cl b/linux-x64/clang/bin/clang-cl
new file mode 120000
index 0000000..060d289
--- /dev/null
+++ b/linux-x64/clang/bin/clang-cl
@@ -0,0 +1 @@
+clang
\ No newline at end of file
diff --git a/linux-x64/clang/bin/clang-format b/linux-x64/clang/bin/clang-format
index 2064aa9..2e42c93 100755
--- a/linux-x64/clang/bin/clang-format
+++ b/linux-x64/clang/bin/clang-format
Binary files differ
diff --git a/linux-x64/clang/bin/clang-tidy.real b/linux-x64/clang/bin/clang-tidy.real
index 5d685db..4845cd1 100755
--- a/linux-x64/clang/bin/clang-tidy.real
+++ b/linux-x64/clang/bin/clang-tidy.real
Binary files differ
diff --git a/linux-x64/clang/bin/dsymutil b/linux-x64/clang/bin/dsymutil
index f4a2b58..fdddf16 100755
--- a/linux-x64/clang/bin/dsymutil
+++ b/linux-x64/clang/bin/dsymutil
Binary files differ
diff --git a/linux-x64/clang/bin/git-clang-format b/linux-x64/clang/bin/git-clang-format
index 2696d09..ef7f22d 100755
--- a/linux-x64/clang/bin/git-clang-format
+++ b/linux-x64/clang/bin/git-clang-format
@@ -8,19 +8,19 @@
 #
 #===------------------------------------------------------------------------===#
 
-r"""                                                                             
-clang-format git integration                                                     
-============================                                                     
-                                                                                 
-This file provides a clang-format integration for git. Put it somewhere in your  
-path and ensure that it is executable. Then, "git clang-format" will invoke      
-clang-format on the changes in current files or a specific commit.               
-                                                                                 
-For further details, run:                                                        
-git clang-format -h                                                              
-                                                                                 
-Requires Python 2.7 or Python 3                                                  
-"""               
+r"""
+clang-format git integration
+============================
+
+This file provides a clang-format integration for git. Put it somewhere in your
+path and ensure that it is executable. Then, "git clang-format" will invoke
+clang-format on the changes in current files or a specific commit.
+
+For further details, run:
+git clang-format -h
+
+Requires Python 2.7 or Python 3
+"""
 
 from __future__ import absolute_import, division, print_function
 import argparse
@@ -77,7 +77,7 @@
       'c', 'h',  # C
       'm',  # ObjC
       'mm',  # ObjC++
-      'cc', 'cp', 'cpp', 'c++', 'cxx', 'hpp',  # C++
+      'cc', 'cp', 'cpp', 'c++', 'cxx', 'hpp', 'hxx',  # C++
       'cu',  # CUDA
       # Other languages that clang-format supports
       'proto', 'protodevel',  # Protocol Buffers
diff --git a/linux-x64/clang/bin/lld b/linux-x64/clang/bin/lld
index 471628c..802778d 100755
--- a/linux-x64/clang/bin/lld
+++ b/linux-x64/clang/bin/lld
Binary files differ
diff --git a/linux-x64/clang/bin/lldb b/linux-x64/clang/bin/lldb
new file mode 100755
index 0000000..8d4888d
--- /dev/null
+++ b/linux-x64/clang/bin/lldb
Binary files differ
diff --git a/linux-x64/clang/bin/lldb-argdumper b/linux-x64/clang/bin/lldb-argdumper
new file mode 100755
index 0000000..6be5366
--- /dev/null
+++ b/linux-x64/clang/bin/lldb-argdumper
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-addr2line b/linux-x64/clang/bin/llvm-addr2line
new file mode 120000
index 0000000..51f8041
--- /dev/null
+++ b/linux-x64/clang/bin/llvm-addr2line
@@ -0,0 +1 @@
+llvm-symbolizer
\ No newline at end of file
diff --git a/linux-x64/clang/bin/llvm-ar b/linux-x64/clang/bin/llvm-ar
index ac10e0a..8af3d6a 100755
--- a/linux-x64/clang/bin/llvm-ar
+++ b/linux-x64/clang/bin/llvm-ar
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-as b/linux-x64/clang/bin/llvm-as
index 6d2f4a4..3fbcf26 100755
--- a/linux-x64/clang/bin/llvm-as
+++ b/linux-x64/clang/bin/llvm-as
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-cfi-verify b/linux-x64/clang/bin/llvm-cfi-verify
index 211ffcc..656006f 100755
--- a/linux-x64/clang/bin/llvm-cfi-verify
+++ b/linux-x64/clang/bin/llvm-cfi-verify
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-config b/linux-x64/clang/bin/llvm-config
index c991475..eaa11ad 100755
--- a/linux-x64/clang/bin/llvm-config
+++ b/linux-x64/clang/bin/llvm-config
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-cov b/linux-x64/clang/bin/llvm-cov
index 5d669a8..5b4774c 100755
--- a/linux-x64/clang/bin/llvm-cov
+++ b/linux-x64/clang/bin/llvm-cov
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-dis b/linux-x64/clang/bin/llvm-dis
index e59ad4f..9fb8b23 100755
--- a/linux-x64/clang/bin/llvm-dis
+++ b/linux-x64/clang/bin/llvm-dis
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-lib b/linux-x64/clang/bin/llvm-lib
new file mode 120000
index 0000000..3b94d1a
--- /dev/null
+++ b/linux-x64/clang/bin/llvm-lib
@@ -0,0 +1 @@
+llvm-ar
\ No newline at end of file
diff --git a/linux-x64/clang/bin/llvm-link b/linux-x64/clang/bin/llvm-link
index ea8c24e..a2f4315 100755
--- a/linux-x64/clang/bin/llvm-link
+++ b/linux-x64/clang/bin/llvm-link
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-modextract b/linux-x64/clang/bin/llvm-modextract
index 16f8272..183b3d8 100755
--- a/linux-x64/clang/bin/llvm-modextract
+++ b/linux-x64/clang/bin/llvm-modextract
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-nm b/linux-x64/clang/bin/llvm-nm
index 8a0caf1..acb9eb1 100755
--- a/linux-x64/clang/bin/llvm-nm
+++ b/linux-x64/clang/bin/llvm-nm
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-objcopy b/linux-x64/clang/bin/llvm-objcopy
index c1ad8e9..7f8e818 100755
--- a/linux-x64/clang/bin/llvm-objcopy
+++ b/linux-x64/clang/bin/llvm-objcopy
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-objdump b/linux-x64/clang/bin/llvm-objdump
index 9122f2f..e606975 100755
--- a/linux-x64/clang/bin/llvm-objdump
+++ b/linux-x64/clang/bin/llvm-objdump
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-profdata b/linux-x64/clang/bin/llvm-profdata
index b8ac3ae..8a17796 100755
--- a/linux-x64/clang/bin/llvm-profdata
+++ b/linux-x64/clang/bin/llvm-profdata
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-ranlib b/linux-x64/clang/bin/llvm-ranlib
new file mode 120000
index 0000000..3b94d1a
--- /dev/null
+++ b/linux-x64/clang/bin/llvm-ranlib
@@ -0,0 +1 @@
+llvm-ar
\ No newline at end of file
diff --git a/linux-x64/clang/bin/llvm-readelf b/linux-x64/clang/bin/llvm-readelf
new file mode 120000
index 0000000..a39a921
--- /dev/null
+++ b/linux-x64/clang/bin/llvm-readelf
@@ -0,0 +1 @@
+llvm-readobj
\ No newline at end of file
diff --git a/linux-x64/clang/bin/llvm-readobj b/linux-x64/clang/bin/llvm-readobj
index ea47277..c2f23c6 100755
--- a/linux-x64/clang/bin/llvm-readobj
+++ b/linux-x64/clang/bin/llvm-readobj
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-size b/linux-x64/clang/bin/llvm-size
new file mode 100755
index 0000000..5a94fe0
--- /dev/null
+++ b/linux-x64/clang/bin/llvm-size
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-strings b/linux-x64/clang/bin/llvm-strings
new file mode 100755
index 0000000..22ba580
--- /dev/null
+++ b/linux-x64/clang/bin/llvm-strings
Binary files differ
diff --git a/linux-x64/clang/bin/llvm-symbolizer b/linux-x64/clang/bin/llvm-symbolizer
index 7eea9d2..5518f3e 100755
--- a/linux-x64/clang/bin/llvm-symbolizer
+++ b/linux-x64/clang/bin/llvm-symbolizer
Binary files differ
diff --git a/linux-x64/clang/bin/sancov b/linux-x64/clang/bin/sancov
index ff57770..69af2f9 100755
--- a/linux-x64/clang/bin/sancov
+++ b/linux-x64/clang/bin/sancov
Binary files differ
diff --git a/linux-x64/clang/bin/sanstats b/linux-x64/clang/bin/sanstats
index 4a4e9f1..bfc01cd 100755
--- a/linux-x64/clang/bin/sanstats
+++ b/linux-x64/clang/bin/sanstats
Binary files differ
diff --git a/linux-x64/clang/bin/scan-build b/linux-x64/clang/bin/scan-build
index ed68b3b..903e19a 100755
--- a/linux-x64/clang/bin/scan-build
+++ b/linux-x64/clang/bin/scan-build
@@ -1460,6 +1460,16 @@
 }
 
 ##----------------------------------------------------------------------------##
+# FindXcrun - searches for the 'xcrun' executable. Returns "" if not found.
+##----------------------------------------------------------------------------##
+
+sub FindXcrun {
+  my $xcrun = `which xcrun`;
+  chomp $xcrun;
+  return $xcrun;
+}
+
+##----------------------------------------------------------------------------##
 # FindClang - searches for 'clang' executable.
 ##----------------------------------------------------------------------------##
 
@@ -1468,6 +1478,16 @@
     $Clang = Cwd::realpath("$RealBin/bin/clang") if (-f "$RealBin/bin/clang");
     if (!defined $Clang || ! -x $Clang) {
       $Clang = Cwd::realpath("$RealBin/clang") if (-f "$RealBin/clang");
+      if (!defined $Clang || ! -x $Clang) {
+        # When an Xcode toolchain is present, look for a clang in the sibling bin
+        # of the parent of the bin directory. So if scan-build is at
+        # $TOOLCHAIN/usr/local/bin/scan-build look for clang at
+        # $TOOLCHAIN/usr/bin/clang.
+        my $has_xcode_toolchain = FindXcrun() ne "";
+        if ($has_xcode_toolchain && -f "$RealBin/../../bin/clang") {
+          $Clang = Cwd::realpath("$RealBin/../../bin/clang");
+        }
+      }
     }
     if (!defined $Clang || ! -x $Clang) {
       return "error: Cannot find an executable 'clang' relative to" .
@@ -1477,8 +1497,7 @@
   }
   else {
     if ($Options{AnalyzerDiscoveryMethod} =~ /^[Xx]code$/) {
-      my $xcrun = `which xcrun`;
-      chomp $xcrun;
+      my $xcrun = FindXcrun();
       if ($xcrun eq "") {
         return "Cannot find 'xcrun' to find 'clang' for analysis.\n";
       }