Skip to content

Commit

Permalink
Bug 1262781 - Update to clang 3.8 final. r=froydnj
Browse files Browse the repository at this point in the history
Ideally, we'd use the tarballs from
http://llvm.org/releases/download.html but I didn't feel like modifying
the script more than I already did to make it work at all (bug 1262735).

The new tarball for Linux was built on
https://tools.taskcluster.net/task-inspector/#LCUn8aEgTBeRJ11a3qTlDQ/0

The new tarball for Mac was built on a loaner, after installing cmake
and ninja, as well as building ld64 127.2 from source because the
installed version would assert while building clang. The latter required
manually adding some missing headers to /usr/include. TSAN was also
disabled because it requires APIs that are not available on the OSX
version on the build slaves (e.g. pthread_introspection_hook_install).
Building clang also required using a mac clang from tooltool, the system
one lacking support for atomics.
  • Loading branch information
glandium committed Apr 12, 2016
1 parent de961c9 commit 9e6fb19
Show file tree
Hide file tree
Showing 12 changed files with 50 additions and 46 deletions.
6 changes: 3 additions & 3 deletions b2g/config/tooltool-manifests/macosx64/releng.manifest
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 121389802,
"digest": "2be6b42cfa1e92de4b49a57123f54043fec2d3cf8385276516dc6aaed99c88768ac4aebd7ce2e007ab074163523da29223436a4d1aef82f0f750f08f1b14cd71",
"version": "clang 3.8.0",
"size": 133060926,
"digest": "aff5ad3ac2d41db19d1ba0df5f97b189a7d7e1b6af8c56e22c2b0cced84d75fa98394ded6a4ba5713652e6684a0a46f47aeccf87991f9e849bf8d7d82e564f6f",
"algorithm": "sha512",
"filename": "clang.tar.bz2",
"unpack": true
Expand Down
6 changes: 3 additions & 3 deletions b2g/dev/config/tooltool-manifests/macosx64/releng.manifest
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 121389802,
"digest": "2be6b42cfa1e92de4b49a57123f54043fec2d3cf8385276516dc6aaed99c88768ac4aebd7ce2e007ab074163523da29223436a4d1aef82f0f750f08f1b14cd71",
"version": "clang 3.8.0",
"size": 133060926,
"digest": "aff5ad3ac2d41db19d1ba0df5f97b189a7d7e1b6af8c56e22c2b0cced84d75fa98394ded6a4ba5713652e6684a0a46f47aeccf87991f9e849bf8d7d82e564f6f",
"algorithm": "sha512",
"filename": "clang.tar.bz2",
"unpack": true
Expand Down
6 changes: 3 additions & 3 deletions browser/config/tooltool-manifests/linux32/clang.manifest
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 106877168,
"digest": "1c50c6348eaf429ed59bb603cff63bcc1f870f59216dd3c234db5b1156cfd351d5ee7b820ec31be4d2661eb4213b2e0030e2ba2782b42905d1ec19c7f8bd322a",
"version": "clang 3.8.0, libgcc 4.8.5",
"size": 118876936,
"digest": "f021d7b23cbbcc4086514b4bf20c86c9f94dbe5b4e0f1ef3aaf2bea337430f7c0d0965c55fe8be0e944a46c3b1555b9245c7af8b8b141eac4b47deea977b4852",
"algorithm": "sha512",
"filename": "clang.tar.xz",
"unpack": true,
Expand Down
6 changes: 3 additions & 3 deletions browser/config/tooltool-manifests/linux64/clang.manifest
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 106877168,
"digest": "1c50c6348eaf429ed59bb603cff63bcc1f870f59216dd3c234db5b1156cfd351d5ee7b820ec31be4d2661eb4213b2e0030e2ba2782b42905d1ec19c7f8bd322a",
"version": "clang 3.8.0, libgcc 4.8.5",
"size": 118876936,
"digest": "f021d7b23cbbcc4086514b4bf20c86c9f94dbe5b4e0f1ef3aaf2bea337430f7c0d0965c55fe8be0e944a46c3b1555b9245c7af8b8b141eac4b47deea977b4852",
"algorithm": "sha512",
"filename": "clang.tar.xz",
"unpack": true
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 106877168,
"digest": "1c50c6348eaf429ed59bb603cff63bcc1f870f59216dd3c234db5b1156cfd351d5ee7b820ec31be4d2661eb4213b2e0030e2ba2782b42905d1ec19c7f8bd322a",
"version": "clang 3.8.0, libgcc 4.8.5",
"size": 118876936,
"digest": "f021d7b23cbbcc4086514b4bf20c86c9f94dbe5b4e0f1ef3aaf2bea337430f7c0d0965c55fe8be0e944a46c3b1555b9245c7af8b8b141eac4b47deea977b4852",
"algorithm": "sha512",
"filename": "clang.tar.xz",
"unpack": true
Expand Down
6 changes: 3 additions & 3 deletions browser/config/tooltool-manifests/macosx64/clang.manifest
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 121389802,
"digest": "2be6b42cfa1e92de4b49a57123f54043fec2d3cf8385276516dc6aaed99c88768ac4aebd7ce2e007ab074163523da29223436a4d1aef82f0f750f08f1b14cd71",
"version": "clang 3.8.0",
"size": 133060926,
"digest": "aff5ad3ac2d41db19d1ba0df5f97b189a7d7e1b6af8c56e22c2b0cced84d75fa98394ded6a4ba5713652e6684a0a46f47aeccf87991f9e849bf8d7d82e564f6f",
"algorithm": "sha512",
"filename": "clang.tar.bz2",
"unpack": true
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 106877168,
"digest": "1c50c6348eaf429ed59bb603cff63bcc1f870f59216dd3c234db5b1156cfd351d5ee7b820ec31be4d2661eb4213b2e0030e2ba2782b42905d1ec19c7f8bd322a",
"version": "clang 3.8.0, libgcc 4.8.5",
"size": 118876936,
"digest": "f021d7b23cbbcc4086514b4bf20c86c9f94dbe5b4e0f1ef3aaf2bea337430f7c0d0965c55fe8be0e944a46c3b1555b9245c7af8b8b141eac4b47deea977b4852",
"algorithm": "sha512",
"filename": "clang.tar.xz",
"unpack": true
Expand Down
6 changes: 3 additions & 3 deletions browser/config/tooltool-manifests/macosx64/releng.manifest
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[
{
"version": "clang 3.8.0/r247539",
"size": 121389802,
"digest": "2be6b42cfa1e92de4b49a57123f54043fec2d3cf8385276516dc6aaed99c88768ac4aebd7ce2e007ab074163523da29223436a4d1aef82f0f750f08f1b14cd71",
"version": "clang 3.8.0",
"size": 133060926,
"digest": "aff5ad3ac2d41db19d1ba0df5f97b189a7d7e1b6af8c56e22c2b0cced84d75fa98394ded6a4ba5713652e6684a0a46f47aeccf87991f9e849bf8d7d82e564f6f",
"algorithm": "sha512",
"filename": "clang.tar.bz2",
"unpack": true
Expand Down
13 changes: 5 additions & 8 deletions build/build-clang/clang-static-analysis-linux64.json
Original file line number Diff line number Diff line change
@@ -1,31 +1,28 @@
{
"llvm_revision": "247539",
"llvm_revision": "262557",
"stages": "3",
"build_libcxx": false,
"build_type": "Release",
"assertions": false,
"llvm_repo": "https://llvm.org/svn/llvm-project/llvm/trunk",
"clang_repo": "https://llvm.org/svn/llvm-project/cfe/trunk",
"compiler_repo": "https://llvm.org/svn/llvm-project/compiler-rt/trunk",
"libcxx_repo": "https://llvm.org/svn/llvm-project/libcxx/trunk",
"llvm_repo": "https://llvm.org/svn/llvm-project/llvm/tags/RELEASE_380/final",
"clang_repo": "https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_380/final",
"compiler_repo": "https://llvm.org/svn/llvm-project/compiler-rt/tags/RELEASE_380/final",
"libcxx_repo": "https://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_380/final",
"python_path": "/usr/bin/python2.7",
"gcc_dir": "/home/worker/workspace/build/src/gcc",
"cc": "/home/worker/workspace/build/src/gcc/bin/gcc",
"cxx": "/home/worker/workspace/build/src/gcc/bin/g++",
"patches": {
"macosx64": [
"llvm-debug-frame.patch",
"query-selector-visibility.patch",
"return-empty-string-non-mangled.patch"
],
"linux64": [
"llvm-debug-frame.patch",
"query-selector-visibility.patch",
"return-empty-string-non-mangled.patch"
],
"linux32": [
"llvm-debug-frame.patch",
"query-selector-visibility.patch",
"return-empty-string-non-mangled.patch"
]
}
Expand Down
18 changes: 8 additions & 10 deletions build/build-clang/clang-static-analysis-macosx64.json
Original file line number Diff line number Diff line change
@@ -1,30 +1,28 @@
{
"llvm_revision": "247539",
"llvm_revision": "262557",
"stages": "3",
"build_libcxx": true,
"build_type": "Release",
"assertions": false,
"llvm_repo": "https://llvm.org/svn/llvm-project/llvm/trunk",
"clang_repo": "https://llvm.org/svn/llvm-project/cfe/trunk",
"compiler_repo": "https://llvm.org/svn/llvm-project/compiler-rt/trunk",
"libcxx_repo": "https://llvm.org/svn/llvm-project/libcxx/trunk",
"llvm_repo": "https://llvm.org/svn/llvm-project/llvm/tags/RELEASE_380/final",
"clang_repo": "https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_380/final",
"compiler_repo": "https://llvm.org/svn/llvm-project/compiler-rt/tags/RELEASE_380/final",
"libcxx_repo": "https://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_380/final",
"python_path": "/usr/local/bin/python2.7",
"cc": "/usr/bin/clang",
"cxx": "/usr/bin/clang++",
"cc": "/Users/cltbld/clang/bin/clang",
"cxx": "/Users/cltbld/clang/bin/clang++",
"patches": {
"macosx64": [
"disable-mac-tsan.patch",
"llvm-debug-frame.patch",
"query-selector-visibility.patch",
"return-empty-string-non-mangled.patch"
],
"linux64": [
"llvm-debug-frame.patch",
"query-selector-visibility.patch",
"return-empty-string-non-mangled.patch"
],
"linux32": [
"llvm-debug-frame.patch",
"query-selector-visibility.patch",
"return-empty-string-non-mangled.patch"
]
}
Expand Down
11 changes: 11 additions & 0 deletions build/build-clang/disable-mac-tsan.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/compiler-rt/cmake/config-ix.cmake
+++ b/compiler-rt/cmake/config-ix.cmake
@@ -617,7 +617,7 @@
endif()

if (COMPILER_RT_HAS_SANITIZER_COMMON AND TSAN_SUPPORTED_ARCH AND
- OS_NAME MATCHES "Darwin|Linux|FreeBSD")
+ OS_NAME MATCHES "Linux|FreeBSD")
set(COMPILER_RT_HAS_TSAN TRUE)
else()
set(COMPILER_RT_HAS_TSAN FALSE)
6 changes: 2 additions & 4 deletions build/build-clang/return-empty-string-non-mangled.patch
Original file line number Diff line number Diff line change
@@ -1,14 +1,12 @@
commit 009de5ea7a1913f0b4619cf514787bd52af38c28
Author: Michael Wu <[email protected]>
Date: Thu Sep 24 11:36:08 2015 -0400

Return an empty string when a symbol isn't mangled

diff --git a/clang/tools/libclang/CIndex.cpp b/clang/tools/libclang/CIndex.cpp
index 9fa18d3..1253832 100644
--- a/clang/tools/libclang/CIndex.cpp
+++ b/clang/tools/libclang/CIndex.cpp
@@ -3891,6 +3891,10 @@ CXString clang_Cursor_getMangling(CXCursor C) {
@@ -3990,6 +3990,10 @@
ASTContext &Ctx = ND->getASTContext();
std::unique_ptr<MangleContext> MC(Ctx.createMangleContext());

Expand All @@ -18,4 +16,4 @@ index 9fa18d3..1253832 100644
+
std::string FrontendBuf;
llvm::raw_string_ostream FrontendBufOS(FrontendBuf);
MC->mangleName(ND, FrontendBufOS);
if (MC->shouldMangleDeclName(ND)) {

0 comments on commit 9e6fb19

Please sign in to comment.