Bug 143604 - [EFL] Bump LLVM to version 3.6.0 on X86_64
Summary: [EFL] Bump LLVM to version 3.6.0 on X86_64
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Csaba Osztrogonác
URL:
Keywords:
Depends on: 143822
Blocks: 143605
  Show dependency treegraph
 
Reported: 2015-04-10 07:07 PDT by Csaba Osztrogonác
Modified: 2015-04-16 06:40 PDT (History)
3 users (show)

See Also:


Attachments
Patch (19.79 KB, patch)
2015-04-10 07:10 PDT, Csaba Osztrogonác
no flags Details | Formatted Diff | Diff
Patch (20.94 KB, patch)
2015-04-16 05:09 PDT, Csaba Osztrogonác
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Csaba Osztrogonác 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.
Comment 1 Csaba Osztrogonác 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.
Comment 2 Csaba Osztrogonác 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)
Comment 3 Carlos Garcia Campos 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?
Comment 4 Csaba Osztrogonác 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 ... )
Comment 5 Csaba Osztrogonác 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.
Comment 6 Csaba Osztrogonác 2015-04-16 05:09:35 PDT
Created attachment 250913 [details]
Patch
Comment 7 Gyuyoung Kim 2015-04-16 05:24:36 PDT
Comment on attachment 250913 [details]
Patch

Thanks, rs=me.
Comment 8 Csaba Osztrogonác 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>
Comment 9 Csaba Osztrogonác 2015-04-16 06:40:39 PDT
All reviewed patches have been landed.  Closing bug.