Author: Richard Plangger <[email protected]>
Branch:
Changeset: r88137:4d46a38e4169
Date: 2016-11-04 09:29 +0100
http://bitbucket.org/pypy/pypy/changeset/4d46a38e4169/
Log: skip tests on 32bit x86 (cpu will never try to vectorize there)
diff --git a/rpython/jit/metainterp/optimizeopt/test/test_schedule.py
b/rpython/jit/metainterp/optimizeopt/test/test_schedule.py
--- a/rpython/jit/metainterp/optimizeopt/test/test_schedule.py
+++ b/rpython/jit/metainterp/optimizeopt/test/test_schedule.py
@@ -1,4 +1,6 @@
import py
+import sys
+import pytest
from rpython.jit.metainterp.history import TargetToken, JitCellToken, TreeLoop
from rpython.jit.metainterp.optimizeopt.util import equaloplists
@@ -17,6 +19,9 @@
from rpython.jit.tool.oparser import parse as opparse
from rpython.jit.tool.oparser_model import get_model
+if sys.maxint == 2**31-1:
+ pytest.skip("32bit platforms are not supported")
+
class FakeVecScheduleState(VecScheduleState):
def __init__(self):
self.expanded_map = {}
diff --git a/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
b/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
--- a/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
+++ b/rpython/jit/metainterp/optimizeopt/test/test_vecopt.py
@@ -1,4 +1,5 @@
import py
+import sys
import pytest
from rpython.rlib.objectmodel import instantiate
@@ -29,6 +30,9 @@
CPU = getcpuclass()
+if sys.maxint == 2**31-1:
+ pytest.skip("32bit platforms are not supported")
+
class FakeJitDriverStaticData(object):
vec=True
diff --git a/rpython/jit/metainterp/test/test_vector.py
b/rpython/jit/metainterp/test/test_vector.py
--- a/rpython/jit/metainterp/test/test_vector.py
+++ b/rpython/jit/metainterp/test/test_vector.py
@@ -1,4 +1,5 @@
import py
+import sys
import pytest
import math
import functools
@@ -28,6 +29,9 @@
CPU = getcpuclass()
+if sys.maxint == 2**31-1:
+ pytest.skip("32bit platforms are not supported")
+
@specialize.argtype(0,1)
def malloc(T,n):
return lltype.malloc(T, n, flavor='raw', zero=True)
@@ -195,7 +199,7 @@
test_vec_float_cmp_ne = \
vec_float_binary(lambda a,b: a != b, rffi.DOUBLE)
- def _vector_simple_int(self, func, type, data):
+ def _vector_simple_int(self, func, type, strat, data):
func = always_inline(func)
size = rffi.sizeof(type)
@@ -210,11 +214,9 @@
raw_storage_setitem(vc, i, rffi.cast(type,c))
i += size
- bits = size*8
- integers = st.integers(min_value=-2**(bits-1), max_value=2**(bits-1)-1)
- la = data.draw(st.lists(integers, min_size=10, max_size=150))
+ la = data.draw(st.lists(strat, min_size=10, max_size=150))
l = len(la)
- lb = data.draw(st.lists(integers, min_size=l, max_size=l))
+ lb = data.draw(st.lists(strat, min_size=l, max_size=l))
rawstorage = RawStorage()
va = rawstorage.new(la, type)
@@ -229,21 +231,25 @@
rawstorage.clear()
def vec_int_arith(test_func, arith_func, type):
- return pytest.mark.parametrize('func,type', [
- (arith_func, type)
+ size = rffi.sizeof(type)
+ bits = size*8
+ assert 0 <= bits <= 64
+ integers = st.integers(min_value=-2**(bits-1), max_value=2**(bits-1)-1)
+ return pytest.mark.parametrize('func,type,strat', [
+ (arith_func, type, integers)
])(given(data=st.data())(test_func))
vec_int_arith = functools.partial(vec_int_arith, _vector_simple_int)
test_vec_signed_add = \
- vec_int_arith(lambda a,b: intmask(intmask(a)+intmask(b)), rffi.SIGNED)
+ vec_int_arith(lambda a,b: intmask(a+b), rffi.SIGNED)
test_vec_int_add = \
vec_int_arith(lambda a,b: r_int(a)+r_int(b), rffi.INT)
test_vec_short_add = \
vec_int_arith(lambda a,b: r_int(a)+r_int(b), rffi.SHORT)
test_vec_signed_sub = \
- vec_int_arith(lambda a,b: intmask(intmask(a)-intmask(b)), rffi.SIGNED)
+ vec_int_arith(lambda a,b: intmask(a-b), rffi.SIGNED)
test_vec_sub_int = \
vec_int_arith(lambda a,b: r_int(a)-r_int(b), rffi.INT)
test_vec_sub_short = \
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit