Changeset 167958 in webkit


Ignore:
Timestamp:
Apr 29, 2014 3:02:00 PM (4 years ago)
Author:
fpizlo@apple.com
Message:

Use LLVM as a backend for the fourth-tier DFG JIT (a.k.a. the FTL JIT)
https://bugs.webkit.org/show_bug.cgi?id=112840

Rubber stamped by Geoffrey Garen.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:
It already has a lot of tests.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/build-jsc: Enable it on Mac.
  • Scripts/build-webkit: Enable it on Mac.
  • Scripts/export-llvm-build: Make it slightly easier to export the build if you've done a "make install".
Location:
trunk
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r167951 r167958  
     12014-04-29  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Use LLVM as a backend for the fourth-tier DFG JIT (a.k.a. the FTL JIT)
     4        https://bugs.webkit.org/show_bug.cgi?id=112840
     5
     6        Rubber stamped by Geoffrey Garen.
     7
     8        * Configurations/FeatureDefines.xcconfig:
     9
    1102014-04-29  Geoffrey Garen  <ggaren@apple.com>
    211
  • trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig

    r167786 r167958  
    236236
    237237ENABLE_FTL_JIT = $(ENABLE_FTL_JIT_$(PLATFORM_NAME));
    238 ENABLE_FTL_JIT_macosx = $(ENABLE_FTL_JIT_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
    239 ENABLE_FTL_JIT_macosx_1080 = ;
    240 ENABLE_FTL_JIT_macosx_1090 = ;
    241 ENABLE_FTL_JIT_macosx_101000 = ENABLE_FTL_JIT;
     238ENABLE_FTL_JIT_macosx = ENABLE_FTL_JIT;
    242239ENABLE_FTL_JIT_iphoneos = ENABLE_FTL_JIT;
    243240ENABLE_FTL_JIT_iphonesimulator = ;
  • trunk/Source/WebCore/ChangeLog

    r167956 r167958  
     12014-04-29  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Use LLVM as a backend for the fourth-tier DFG JIT (a.k.a. the FTL JIT)
     4        https://bugs.webkit.org/show_bug.cgi?id=112840
     5
     6        Rubber stamped by Geoffrey Garen.
     7
     8        It already has a lot of tests.
     9
     10        * Configurations/FeatureDefines.xcconfig:
     11
    1122014-04-29  Brady Eidson  <beidson@apple.com>
    213
  • trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig

    r167786 r167958  
    236236
    237237ENABLE_FTL_JIT = $(ENABLE_FTL_JIT_$(PLATFORM_NAME));
    238 ENABLE_FTL_JIT_macosx = $(ENABLE_FTL_JIT_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
    239 ENABLE_FTL_JIT_macosx_1080 = ;
    240 ENABLE_FTL_JIT_macosx_1090 = ;
    241 ENABLE_FTL_JIT_macosx_101000 = ENABLE_FTL_JIT;
     238ENABLE_FTL_JIT_macosx = ENABLE_FTL_JIT;
    242239ENABLE_FTL_JIT_iphoneos = ENABLE_FTL_JIT;
    243240ENABLE_FTL_JIT_iphonesimulator = ;
  • trunk/Source/WebKit/mac/ChangeLog

    r167956 r167958  
     12014-04-29  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Use LLVM as a backend for the fourth-tier DFG JIT (a.k.a. the FTL JIT)
     4        https://bugs.webkit.org/show_bug.cgi?id=112840
     5
     6        Rubber stamped by Geoffrey Garen.
     7
     8        * Configurations/FeatureDefines.xcconfig:
     9
    1102014-04-29  Brady Eidson  <beidson@apple.com>
    211
  • trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig

    r167786 r167958  
    236236
    237237ENABLE_FTL_JIT = $(ENABLE_FTL_JIT_$(PLATFORM_NAME));
    238 ENABLE_FTL_JIT_macosx = $(ENABLE_FTL_JIT_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
    239 ENABLE_FTL_JIT_macosx_1080 = ;
    240 ENABLE_FTL_JIT_macosx_1090 = ;
    241 ENABLE_FTL_JIT_macosx_101000 = ENABLE_FTL_JIT;
     238ENABLE_FTL_JIT_macosx = ENABLE_FTL_JIT;
    242239ENABLE_FTL_JIT_iphoneos = ENABLE_FTL_JIT;
    243240ENABLE_FTL_JIT_iphonesimulator = ;
  • trunk/Source/WebKit2/ChangeLog

    r167956 r167958  
     12014-04-29  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Use LLVM as a backend for the fourth-tier DFG JIT (a.k.a. the FTL JIT)
     4        https://bugs.webkit.org/show_bug.cgi?id=112840
     5
     6        Rubber stamped by Geoffrey Garen.
     7
     8        * Configurations/FeatureDefines.xcconfig:
     9
    1102014-04-29  Brady Eidson  <beidson@apple.com>
    211
  • trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig

    r167786 r167958  
    236236
    237237ENABLE_FTL_JIT = $(ENABLE_FTL_JIT_$(PLATFORM_NAME));
    238 ENABLE_FTL_JIT_macosx = $(ENABLE_FTL_JIT_macosx_$(TARGET_MAC_OS_X_VERSION_MAJOR));
    239 ENABLE_FTL_JIT_macosx_1080 = ;
    240 ENABLE_FTL_JIT_macosx_1090 = ;
    241 ENABLE_FTL_JIT_macosx_101000 = ENABLE_FTL_JIT;
     238ENABLE_FTL_JIT_macosx = ENABLE_FTL_JIT;
    242239ENABLE_FTL_JIT_iphoneos = ENABLE_FTL_JIT;
    243240ENABLE_FTL_JIT_iphonesimulator = ;
  • trunk/Tools/ChangeLog

    r167939 r167958  
     12014-04-29  Filip Pizlo  <fpizlo@apple.com>
     2
     3        Use LLVM as a backend for the fourth-tier DFG JIT (a.k.a. the FTL JIT)
     4        https://bugs.webkit.org/show_bug.cgi?id=112840
     5
     6        Rubber stamped by Geoffrey Garen.
     7
     8        * Scripts/build-jsc: Enable it on Mac.
     9        * Scripts/build-webkit: Enable it on Mac.
     10        * Scripts/export-llvm-build: Make it slightly easier to export the build if you've done a "make install".
     11
    1122014-04-28  Sam Weinig  <sam@webkit.org>
    213
  • trunk/Tools/Scripts/build-jsc

    r167389 r167958  
    3838my $coverageSupport = 0;
    3939my $showHelp = 0;
    40 my $ftlJIT = 0;
     40my $ftlJIT = isAppleWebKit();
    4141my $forceCLoop = 0;
    4242my $cli = 0;
     
    9090
    9191if (isAppleMacWebKit()) {
    92     if ($ftlJIT) {
    93         push @options, "ENABLE_FTL_JIT=ENABLE_FTL_JIT";
     92    if (!$ftlJIT) {
     93        push @options, "ENABLE_FTL_JIT=";
    9494    }
    9595    if ($forceCLoop) {
  • trunk/Tools/Scripts/build-webkit

    r167671 r167958  
    179179
    180180my @options = ();
    181 my $hasFTLJIT = 0;
    182181
    183182if (isAppleMacWebKit()) {
     
    192191    foreach (@features) {
    193192        my $option = option($_->{define}, ${$_->{value}}, $_->{default});
    194         $hasFTLJIT = 1 if ($_->{define} eq "ENABLE_FTL_JIT") and (${$_->{value}});
    195193        push @options, $option unless $option eq "";
    196194    }
     
    223221
    224222        # Copy library and header from WebKitLibraries to a findable place in the product directory.
    225         my @copyLibrariesArgs = ("perl", "Tools/Scripts/copy-webkitlibraries-to-product-directory", "--wksi");
    226         if ($hasFTLJIT) {
    227             push @copyLibrariesArgs, "--llvm";
    228         }
    229         push @copyLibrariesArgs, productDir();
     223        my @copyLibrariesArgs = ("perl", "Tools/Scripts/copy-webkitlibraries-to-product-directory", "--wksi", "--llvm", productDir());
    230224        print(join(" ", @copyLibrariesArgs) . "\n");
    231225        (system(@copyLibrariesArgs) == 0) or die;
  • trunk/Tools/Scripts/export-llvm-build

    r167334 r167958  
    4949$llvmBinary = Pathname.new("./llvm/Release")
    5050$llvmSource = Pathname.new("./llvm")
     51$prefix = nil
    5152$compression = "bzip2"
    5253
     
    6465    puts "--llvm-source      (-s)   Change which LLVM source directory to use."
    6566    puts "                          Default is #{$llvmSource}."
     67    puts "--prefix           (-p)   Use an \"installed\" LLVM with the given prefix."
    6668    puts "--compression             Change what compression to do. Can be one of gzip,"
    6769    puts "                          bzip2, or none."
     
    7678               ['--llvm-binary', '-B', GetoptLong::REQUIRED_ARGUMENT],
    7779               ['--llvm-source', '-s', GetoptLong::REQUIRED_ARGUMENT],
     80               ['--prefix', '-p', GetoptLong::REQUIRED_ARGUMENT],
    7881               ['--compression', GetoptLong::REQUIRED_ARGUMENT]).each {
    7982    | opt, arg |
     
    9194    when '--llvm-source'
    9295        $llvmSource = Pathname.new(arg)
     96    when '--prefix'
     97        $prefix = Pathname.new(arg)
    9398    when '--compression'
    9499        $compression = arg
     
    111116        raise "Bad choice of compression."
    112117    end
     118end
     119
     120if $prefix
     121    $llvmBinary = $prefix
     122    $llvmBuild = $prefix
     123    $llvmSource = $prefix
    113124end
    114125
Note: See TracChangeset for help on using the changeset viewer.