Closed
Bug 693605
Opened 14 years ago
Closed 14 years ago
Upgrade clang version on slaves
Categories
(Release Engineering :: General, defect, P2)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: rail, Assigned: rail)
Details
(Whiteboard: [buildslaves][clang])
Attachments
(3 files, 4 obsolete files)
|
1.79 KB,
patch
|
rail
:
review+
espindola
:
checked-in+
|
Details | Diff | Splinter Review |
|
378 bytes,
patch
|
espindola
:
review+
rail
:
checked-in+
|
Details | Diff | Splinter Review |
|
2.16 KB,
patch
|
catlee
:
review+
rail
:
checked-in+
|
Details | Diff | Splinter Review |
Rafael said me that we need to upgrade clang version on slaves.
Rafael, could you provide version/revision to be used?
Yes, I just started looking at 693323 and will give you a revision number once I have a patch for that one.
I just finished both a OS X and a linux build with clang revision 141703.
| Assignee | ||
Comment 3•14 years ago
|
||
(In reply to Rafael Ávila de Espíndola (:espindola) from comment #2)
> I just finished both a OS X and a linux build with clang revision 141703.
Just to be clear. Should I upgrade clang to rev 141703?
Yes, that should be a good revision. We can also use the opportunity to drop the hack we had for bug 671711.
Attachment #566615 -
Flags: review?(rail)
| Assignee | ||
Comment 5•14 years ago
|
||
Comment on attachment 566615 [details] [diff] [review]
update clang
Looks good. I'll take care of packaging and deploying. Thank a lot!
Attachment #566615 -
Flags: review?(rail) → review+
Attachment #566615 -
Flags: checked-in+
| Assignee | ||
Comment 6•14 years ago
|
||
Hmmm, just failed on linux64:
llvm[4]: Compiling DriverOptions.cpp for Release+Asserts build
llvm[4]: Compiling HostInfo.cpp for Release+Asserts build
/usr/src/redhat/SOURCES/clang/lib/Frontend/InitHeaderSearch.cpp: In member function 'void<unnamed>::InitHeaderSearch::AddMinGWCPlusPlusIn
cludePaths(llvm::StringRef, llvm::StringRef, llvm::StringRef)':
/usr/src/redhat/SOURCES/clang/lib/Frontend/InitHeaderSearch.cpp:195:1: error: unrecognizable insn:
(insn 318 317 46 2 /usr/src/redhat/SOURCES/llvm/include/llvm/ADT/Twine.h:180 (set (reg:DI 23 xmm2)
(plus:DI (reg:DI 23 xmm2)
(mem/u/c/i:DI (symbol_ref/u:DI ("*.LC22") [flags 0x2]) [0 S8 A64]))) -1 (expr_list:REG_EQUIV (plus:DI (reg/f:DI 7 sp)
(mem/u/c/i:DI (symbol_ref/u:DI ("*.LC22") [flags 0x2]) [0 S8 A64]))
(nil)))
/usr/src/redhat/SOURCES/clang/lib/Frontend/InitHeaderSearch.cpp:195:1: internal compiler error: in extract_insn, at recog.c:2103
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
/bin/rm: cannot remove `/usr/src/redhat/BUILD/clang-3.0-r141703.moz0/tools/clang/lib/Frontend/Release+Asserts/InitHeaderSearch.d.tmp': No
such file or directory
make[4]: *** [/usr/src/redhat/BUILD/clang-3.0-r141703.moz0/tools/clang/lib/Frontend/Release+Asserts/InitHeaderSearch.o] Error 1
| Assignee | ||
Comment 7•14 years ago
|
||
BTW, linux32 build is OK.
| Assignee | ||
Comment 8•14 years ago
|
||
Build on darwin9 (10.5) failed as well:
llvm[4]: Compiling Diagnostic.cpp for Release+Asserts build
/Users/cltbld/src/clang/clang/lib/Basic/../../include/clang/Basic/Diagnostic.h:590: error: 'clang::DiagnosticsEngine::<anonymous enum> clang::DiagnosticsEngine::MaxArguments' is private
/Users/cltbld/src/clang/clang/lib/Basic/../../include/clang/Basic/PartialDiagnostic.h:36: error: within this context
/Users/cltbld/src/clang/clang/lib/Basic/../../include/clang/Basic/Diagnostic.h:621: error: 'clang::DiagnosticsEngine::<anonymous enum> clang::DiagnosticsEngine::MaxFixItHints' is private
/Users/cltbld/src/clang/clang/lib/Basic/../../include/clang/Basic/PartialDiagnostic.h:68: error: within this context
make[4]: *** [/Users/cltbld/src/clang/build/tools/clang/lib/Basic/Release+Asserts/Diagnostic.o] Error 1
make[3]: *** [Basic/.makeall] Error 2
make[2]: *** [all] Error 1
make[1]: *** [clang/.makeall] Error 2
make: *** [all] Error 1
10.6 is still compiling.
| Assignee | ||
Comment 9•14 years ago
|
||
10.6 build of clang has passed, no problems.
(In reply to Rail Aliiev [:rail] from comment #8)
> Build on darwin9 (10.5) failed as well:
What compiler is being used? If gcc 4.0 (the default on 10.5), can you try gcc 4.2? Thanks.
(In reply to Rail Aliiev [:rail] from comment #6)
> Hmmm, just failed on linux64:
>
> llvm[4]: Compiling DriverOptions.cpp for Release+Asserts build
> llvm[4]: Compiling HostInfo.cpp for Release+Asserts build
> /usr/src/redhat/SOURCES/clang/lib/Frontend/InitHeaderSearch.cpp: In member
> function 'void<unnamed>::InitHeaderSearch::AddMinGWCPlusPlusIn
> cludePaths(llvm::StringRef, llvm::StringRef, llvm::StringRef)':
> /usr/src/redhat/SOURCES/clang/lib/Frontend/InitHeaderSearch.cpp:195:1:
> error: unrecognizable insn:
> (insn 318 317 46 2 /usr/src/redhat/SOURCES/llvm/include/llvm/ADT/Twine.h:180
> (set (reg:DI 23 xmm2)
> (plus:DI (reg:DI 23 xmm2)
> (mem/u/c/i:DI (symbol_ref/u:DI ("*.LC22") [flags 0x2]) [0 S8
> A64]))) -1 (expr_list:REG_EQUIV (plus:DI (reg/f:DI 7 sp)
> (mem/u/c/i:DI (symbol_ref/u:DI ("*.LC22") [flags 0x2]) [0 S8
> A64]))
> (nil)))
Now that is fun! We are using /tools/gcc-4.5/bin/gcc, right? So our gcc fails to build clang :-(
I can try to figure out what the problem in gcc is, but maybe the easiest thing to do is use the old clang binary. I will upload a try patch.
Let me know if this fixes the build on linux64.
Thanks.
Attachment #567113 -
Flags: review?(rail)
Comment 13•14 years ago
|
||
hm...this won't be reproducible. we need to be able to build clang with gcc.
(In reply to Chris AtLee [:catlee] from comment #13)
> hm...this won't be reproducible. we need to be able to build clang with gcc.
The traditional way of doing this with compilers is to do a bootstrap, i.e., compile clang with the just compiled clang itself. Would that be OK?
This is what I am testing to try to build clang on the bots. We first build with -O0 to avoid the gcc bug and then use that clang to build the one we install.
| Assignee | ||
Comment 16•14 years ago
|
||
Working on this right now...
This is the patch I am testing on the bots. I had to implement -static-libgcc and -static-libstdc++ in clang and I also fixed a small lib search bug, that is why the revision is newer.
The spec file now builds a first stage with gcc -O0 to avoid a bug and then uses that to build an optimized clang.
Attachment #566615 -
Attachment is obsolete: true
Attachment #567113 -
Attachment is obsolete: true
Attachment #567248 -
Attachment is obsolete: true
Attachment #567113 -
Flags: review?(rail)
Attachment #567615 -
Flags: review?(rail)
| Assignee | ||
Comment 18•14 years ago
|
||
Comment on attachment 567615 [details] [diff] [review]
bootstrap clang
Review of attachment 567615 [details] [diff] [review]:
-----------------------------------------------------------------
Rafael,
Thanks for the patch.
Do you think that for Mac we should use the same approach with stage1/stage2?
::: clang/centos5-i686/clang.spec
@@ +58,4 @@
> %install
> install -d -m 755 $RPM_BUILD_ROOT
> mkdir -p $RPM_BUILD_ROOT/%{install_dir}
> cd %{toplevel_dir}
Looks like it should be "cd %{toplevel_dir}/stage2". Building with this change. I'll let you know when it compiles or fails.
| Assignee | ||
Comment 19•14 years ago
|
||
Comment on attachment 567615 [details] [diff] [review]
bootstrap clang
r+ if you fix "cd %{toplevel_dir}" to "cd %{toplevel_dir}/stage2". Both linux and linux64 builds have been finished w/o any problems.
Attachment #567615 -
Flags: review?(rail) → review+
| Assignee | ||
Comment 20•14 years ago
|
||
FTR, for macs I used the following script:
======================================
# in ~/src/clang
REPO_REV=142296
svn co -r $REPO_REV http://llvm.org/svn/llvm-project/llvm/trunk llvm
svn co -r $REPO_REV http://llvm.org/svn/llvm-project/cfe/trunk clang
cd llvm/tools/
ln -s ../../clang
cd ../../
mkdir build
cd build
../llvm/configure --enable-optimized --prefix=/tools/clang-3.0 \
CC=gcc-4.2 CXX=g++-4.2
make -j8
sudo rm -rf /tools/clang-3.0
sudo make install
cd ../../puppet-manifests/ # from http://hg.mozilla.org/build/puppet-manifests
sudo ./create-dmg.sh /tools/clang-3.0 clang-3.0-r$REPO_REV.moz0 clang /tools
===============================================
| Assignee | ||
Comment 21•14 years ago
|
||
| Assignee | ||
Updated•14 years ago
|
Attachment #567705 -
Attachment description: pupp → puppet-manifests
Attachment #567705 -
Flags: review?(catlee)
Comment 22•14 years ago
|
||
Comment on attachment 567705 [details] [diff] [review]
puppet-manifests
Review of attachment 567705 [details] [diff] [review]:
-----------------------------------------------------------------
Does this completely overwrite the old version?
Attachment #567705 -
Flags: review?(catlee) → review+
Comment on attachment 567615 [details] [diff] [review]
bootstrap clang
http://hg.mozilla.org/build/rpm-sources/rev/9cddfe8fe118
Attachment #567615 -
Flags: checked-in+
| Assignee | ||
Comment 24•14 years ago
|
||
(In reply to Chris AtLee [:catlee] from comment #22)
> Does this completely overwrite the old version?
It shouldn't be an issue for linux, since we use RPM packages. I'll test the DMG packages today.
BTW, I put the binaries here: http://people.mozilla.org/~raliiev/clang/
| Assignee | ||
Comment 25•14 years ago
|
||
(In reply to Rail Aliiev [:rail] from comment #24)
> It shouldn't be an issue for linux, since we use RPM packages. I'll test the
> DMG packages today.
Worked fine. I'm going to deploy the packages in production today as well if there is no objection.
| Assignee | ||
Comment 26•14 years ago
|
||
Comment on attachment 567705 [details] [diff] [review]
puppet-manifests
http://hg.mozilla.org/build/puppet-manifests/rev/846e33a3b221
Attachment #567705 -
Flags: checked-in+
| Assignee | ||
Comment 27•14 years ago
|
||
All puppet masters have been updated. I'll check the overall status tomorrow.
| Assignee | ||
Comment 28•14 years ago
|
||
rev142537 should be used to avoid ASM parser bug.
Attachment #568149 -
Flags: review?(respindola)
Attachment #568149 -
Flags: review?(respindola) → review+
| Assignee | ||
Comment 29•14 years ago
|
||
Comment on attachment 568149 [details] [diff] [review]
update revision
http://hg.mozilla.org/build/rpm-sources/rev/4304b0b21065
Attachment #568149 -
Flags: checked-in+
| Assignee | ||
Comment 30•14 years ago
|
||
Yay! rev 142537 worked fine for linux opt build. I put the binaries here: http://people.mozilla.org/~raliiev/clang/
I have to switch to other tasks, more updates (deployment, new platforms, debug builds, etc) on this one early next week.
Thanks for the help!
| Assignee | ||
Updated•14 years ago
|
Attachment #570234 -
Flags: review?(catlee)
Updated•14 years ago
|
Attachment #570234 -
Flags: review?(catlee) → review+
| Assignee | ||
Comment 32•14 years ago
|
||
Comment on attachment 570234 [details] [diff] [review]
puppet-manifests
http://hg.mozilla.org/build/puppet-manifests/rev/1d9532043923
Attachment #570234 -
Flags: checked-in+
| Assignee | ||
Comment 33•14 years ago
|
||
The updated package should be deployed by now.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
I did a try run some time ago:
https://tbpl.mozilla.org/?tree=Try&rev=fe13a5c6469f
The main issue I have already debugged is breakpad failing to parse clang's debug output. I am working on it.
Updated•12 years ago
|
Product: mozilla.org → Release Engineering
You need to log in
before you can comment on or make changes to this bug.
Description
•