aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-09-04 15:24:45 -0700
committerAlon Zakai <alonzakai@gmail.com>2011-09-04 15:24:45 -0700
commit40a3f51f3cf9b3ac8f53fb3801d94c9727567f57 (patch)
tree892091377a36406edd9e24c94c7eb3c9b86251f5
parent2aa41b3c30beed986f76027acbe87a38effce61b (diff)
disable -indvars on q1
-rw-r--r--tests/runner.py8
-rw-r--r--tools/shared.py4
2 files changed, 6 insertions, 6 deletions
diff --git a/tests/runner.py b/tests/runner.py
index 4a33b579..d1f56740 100644
--- a/tests/runner.py
+++ b/tests/runner.py
@@ -60,13 +60,13 @@ class RunnerCore(unittest.TestCase):
# Similar to LLVM::createStandardModulePasses()
def pick_llvm_opts(self, optimization_level, optimize_size, allow_nonportable=False):
- global LLVM_OPT_OPTS, USE_TYPED_ARRAYS
+ global LLVM_OPT_OPTS, USE_TYPED_ARRAYS, QUANTUM_SIZE
#if USE_TYPED_ARRAYS == 2: # unsafe optimizations. TODO: fix all issues blocking this from being used
# LLVM_OPT_OPTS = ['-O3']
# return
- LLVM_OPT_OPTS = pick_llvm_opts(optimization_level, optimize_size, allow_nonportable)
+ LLVM_OPT_OPTS = pick_llvm_opts(optimization_level, optimize_size, allow_nonportable, quantum_size=QUANTUM_SIZE)
# Emscripten optimizations that we run on the .ll file
def do_ll_opts(self, filename):
@@ -2894,7 +2894,7 @@ if 'benchmark' not in str(sys.argv):
src = open(path_from_root('tests', 'raytrace.cpp'), 'r').read()
output = open(path_from_root('tests', 'raytrace.ppm'), 'r').read()
- self.do_test(src, output, ['3', '16'])
+ self.do_test(src, output, ['3', '16'])#, build_ll_hook=self.do_autodebug)
def test_fasta(self):
results = [ (1,'''GG*ctt**tgagc*'''), (20,'''GGCCGGGCGCGGTGGCTCACGCCTGTAATCCCAGCACTTT*cttBtatcatatgctaKggNcataaaSatgtaaaDcDRtBggDtctttataattcBgtcg**tacgtgtagcctagtgtttgtgttgcgttatagtctatttgtggacacagtatggtcaaa**tgacgtcttttgatctgacggcgttaacaaagatactctg*'''),
@@ -4053,7 +4053,7 @@ else:
def do_benchmark(self, src, args=[], expected_output='FAIL', main_file=None):
global USE_TYPED_ARRAYS
- self.pick_llvm_opts(3, True, USE_TYPED_ARRAYS == 2)
+ self.pick_llvm_opts(3, True, allow_nonportable=USE_TYPED_ARRAYS == 2)
dirname = self.get_dir()
filename = os.path.join(dirname, 'src.cpp')
diff --git a/tools/shared.py b/tools/shared.py
index 84f50f5e..28923eee 100644
--- a/tools/shared.py
+++ b/tools/shared.py
@@ -72,7 +72,7 @@ def limit_size(string, MAX=80*20):
if len(string) < MAX: return string
return string[0:MAX] + '...'
-def pick_llvm_opts(optimization_level, optimize_size, allow_nonportable=False, use_aa=False):
+def pick_llvm_opts(optimization_level, optimize_size, allow_nonportable=False, quantum_size=4, use_aa=False):
opts = []
if optimization_level > 0:
if allow_nonportable:
@@ -114,7 +114,7 @@ def pick_llvm_opts(optimization_level, optimize_size, allow_nonportable=False, u
opts.append('-licm')
opts.append('-loop-unswitch') # XXX should depend on optimize_size
if allow_nonportable: opts.append('-instcombine')
- opts.append('-indvars')
+ if quantum_size == 4: opts.append('-indvars') # XXX this infinite-loops raytrace on q1 (loop in |new node_t[count]| has 68 hardcoded &not fixed)
if allow_nonportable: opts.append('-loop-idiom') # ?
opts.append('-loop-deletion')
opts.append('-loop-unroll')