Add a SpiderMonkey GGC builder, and add an argument to dostuff for a different awfy.config.

This commit is contained in:
Mozilla 2013-06-20 17:02:38 -07:00
Родитель 47e912fef4
Коммит 0e5025e8ff
2 изменённых файлов: 24 добавлений и 6 удалений

Просмотреть файл

@ -136,6 +136,7 @@ class Mozilla(Engine):
self.config_line = conf.get(source, 'conf')
self.args = None
self.important = True
self.objdir = 'Opt'
def env(self):
env = os.environ.copy()
@ -156,18 +157,18 @@ class Mozilla(Engine):
utils.Shell("autoconf-2.13")
# Step 2. configure
if not os.path.exists(os.path.join('js', 'src', 'Opt')):
os.mkdir(os.path.join('js', 'src', 'Opt'))
with utils.FolderChanger(os.path.join('js', 'src', 'Opt')):
if not os.path.exists(os.path.join('js', 'src', self.objdir)):
os.mkdir(os.path.join('js', 'src', self.objdir))
with utils.FolderChanger(os.path.join('js', 'src', self.objdir)):
utils.Shell(self.config_line)
return True
def build(self):
utils.Shell("make -j 3 -C " + os.path.join('js', 'src', 'Opt'))
utils.Shell("make -j 3 -C " + os.path.join('js', 'src', self.objdir))
def shell(self):
return os.path.join('js', 'src', 'Opt', 'js')
return os.path.join('js', 'src', self.objdir, 'js')
class MozillaInbound(Mozilla):
def __init__(self, conf):
@ -182,6 +183,18 @@ class MozillaInbound(Mozilla):
'args': ['--ion-parallel-compile=on', '--no-jm', '-W', '--no-asmjs']
}
]
class MozillaInboundGGC(Mozilla):
def __init__(self, conf):
super(MozillaInboundGGC, self).__init__(conf, 'mi')
self.config_line += ' --enable-exact-rooting --enable-gcgenerational'
self.objdir = 'OptGGC'
self.modes = [
{
'mode': 'ggc',
'args': ['--ion-parallel-compile=on', '--no-jm', '-W', '--no-asmjs']
}
]
class NativeCompiler(Engine):
def __init__(self, conf):

Просмотреть файл

@ -9,14 +9,19 @@ from benchmark import Benchmarks
import utils
from collections import namedtuple
config_name = 'awfy.config'
if len(sys.argv) == 2:
config_name = sys.argv[1]
config = ConfigParser.RawConfigParser()
config.read('awfy.config')
config.read(config_name)
resource.setrlimit(resource.RLIMIT_AS, (-1, -1))
resource.setrlimit(resource.RLIMIT_RSS, (-1, -1))
resource.setrlimit(resource.RLIMIT_DATA, (-1, -1))
# JSC is ilooping...
KnownEngines = [
builders.MozillaInboundGGC(config),
builders.MozillaInbound(config),
builders.V8(config),
builders.Nitro(config)