RESOLVED FIXED Bug 143604
[EFL] Bump LLVM to version 3.6.0 on X86_64
https://bugs.webkit.org/show_bug.cgi?id=143604
Summary [EFL] Bump LLVM to version 3.6.0 on X86_64
Csaba Osztrogonác
Reported 2015-04-10 07:07:47 PDT
LLVM 3.6.0 is released on 27th Feb 2015 and the necessary x86_64 patches for FTL JIT is included in it. Unfortunately the AArch64 patches aren't yet upstreamed and FTL JIT doesn't work at all with LLVM 3.6 on AArch64 Linux now. (stuck in an infinite loop) But after http://trac.webkit.org/changeset/182483 it would be great to switch to LLVM 3.6 to get better performance and decrease maintenance cost.
Attachments
Patch (19.79 KB, patch)
2015-04-10 07:10 PDT, Csaba Osztrogonác
no flags
Patch (20.94 KB, patch)
2015-04-16 05:09 PDT, Csaba Osztrogonác
no flags
Csaba Osztrogonác
Comment 1 2015-04-10 07:10:12 PDT
Created attachment 250518 [details] Patch It works on X86_64, but we should fix AArch64 before landing it.
Csaba Osztrogonác
Comment 2 2015-04-10 08:47:20 PDT
gdb backtrace: #0 0x000000200718fc08 in llvm::RuntimeDyldELF::resolveAArch64Relocation(llvm::SectionEntry const&, unsigned long, unsigned long, unsigned int, long) () from /home/oszi/jsc-tests/jsc-stress-results/.vm/JavaScriptCore.framework/Resources/libllvmForJSC.so #1 0x0000002007184bb4 in llvm::RuntimeDyldImpl::resolveRelocationList(llvm::SmallVector<llvm::RelocationEntry, 64u> const&, unsigned long) () from /home/oszi/jsc-tests/jsc-stress-results/.vm/JavaScriptCore.framework/Resources/libllvmForJSC.so #2 0x0000002007184bb4 in llvm::RuntimeDyldImpl::resolveRelocationList(llvm::SmallVector<llvm::RelocationEntry, 64u> const&, unsigned long) () from /home/oszi/jsc-tests/jsc-stress-results/.vm/JavaScriptCore.framework/Resources/libllvmForJSC.so ... #XXXXX (endless stack trace)
Carlos Garcia Campos
Comment 3 2015-04-12 01:10:04 PDT
Comment on attachment 250518 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=250518&action=review > Tools/efl/jhbuild.modules:150 > + <patch file="llvm-elf-add-stackmaps-aarch64.patch" strip="1"/> > + <patch file="llvm-elf-allow-fde-references-outside-the-2gb-range-aarch64.patch" strip="1"/> Have these patches been proposed upstream?
Csaba Osztrogonác
Comment 4 2015-04-12 13:26:00 PDT
(In reply to comment #3) > Comment on attachment 250518 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=250518&action=review > > > Tools/efl/jhbuild.modules:150 > > + <patch file="llvm-elf-add-stackmaps-aarch64.patch" strip="1"/> http://reviews.llvm.org/D8258 > > + <patch file="llvm-elf-allow-fde-references-outside-the-2gb-range-aarch64.patch" strip="1"/> http://reviews.llvm.org/D8257 > Have these patches been proposed upstream? I submitted them, but these aren't my patches and I don't have any llvm skill and any time to start to learn llvm and learn how to write llvm tests in the following months. So I can't guaranteee if these tests will be landed in the near future. Additionally we have one more bug in LLVM or WebKit which makes LLVM stuck in an infinite loop. I don't think if we can allocate anybody to work on it in the near future. So let's try to make FTL work on x86_64 first, and maybe we can do it on AArch64 too later. ( maybe H2, maybe next year ... )
Csaba Osztrogonác
Comment 5 2015-04-16 04:54:35 PDT
FTL JIT works fine with LLVM 3.6.0 release out of the box on X86_64, but has still issues on AArch64. Let's bump LLVM version for X86_64 only for now.
Csaba Osztrogonác
Comment 6 2015-04-16 05:09:35 PDT
Gyuyoung Kim
Comment 7 2015-04-16 05:24:36 PDT
Comment on attachment 250913 [details] Patch Thanks, rs=me.
Csaba Osztrogonác
Comment 8 2015-04-16 06:40:30 PDT
Comment on attachment 250913 [details] Patch Clearing flags on attachment: 250913 Committed r182885: <http://trac.webkit.org/changeset/182885>
Csaba Osztrogonác
Comment 9 2015-04-16 06:40:39 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.