Date: Monday, April 1, 2019 @ 16:46:38 Author: svenstaro Revision: 446950
upgpkg: pypy 7.1.0-3 Added: pypy/trunk/a93dfb333afe.patch Modified: pypy/trunk/PKGBUILD --------------------+ PKGBUILD | 13 ++++++++++--- a93dfb333afe.patch | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 3 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2019-04-01 16:41:38 UTC (rev 446949) +++ PKGBUILD 2019-04-01 16:46:38 UTC (rev 446950) @@ -3,7 +3,7 @@ pkgname=pypy pkgver=7.1.0 -pkgrel=2 +pkgrel=3 pkgdesc="A Python implementation written in Python, JIT enabled" url="https://pypy.org" arch=('x86_64') @@ -13,9 +13,16 @@ 'tk: tk module') options=(!buildflags) license=('MIT') -source=("https://bitbucket.org/pypy/pypy/downloads/pypy2.7-v${pkgver}-src.tar.bz2") -sha512sums=('fa7c1a6669686dbd9c0da627dc2a06ad696f20274218af9602f91d73f3ebe0ede380c6e1a50534f53dee8f075eaef5a403c7c5b5bdbfff25e679ba30522391bb') +source=("https://bitbucket.org/pypy/pypy/downloads/pypy2.7-v${pkgver}-src.tar.bz2" + a93dfb333afe.patch) +sha512sums=('fa7c1a6669686dbd9c0da627dc2a06ad696f20274218af9602f91d73f3ebe0ede380c6e1a50534f53dee8f075eaef5a403c7c5b5bdbfff25e679ba30522391bb' + 'ed69a8ca9e407f5985c5ffad9649656c69a62a51c610df2718723d6460775e16d37cb888e8cb8ff2ec57ea6a8b2bd518a9368eb8421b435594efc6b32d1f5e19') +prepare() { + cd pypy2.7-v${pkgver}-src + patch -Np1 -i ${srcdir}/a93dfb333afe.patch +} + build() { cd pypy2.7-v${pkgver}-src/pypy/goal Added: a93dfb333afe.patch =================================================================== --- a93dfb333afe.patch (rev 0) +++ a93dfb333afe.patch 2019-04-01 16:46:38 UTC (rev 446950) @@ -0,0 +1,32 @@ +# HG changeset patch +# User Matti Picus <[email protected]> +# Date 1554034536 -10800 +# Node ID a93dfb333afe34ac02b15e997749cd3902ed96c0 +# Parent 9f383b2e30c6ac084fe95fd781abfc2fceffdc9f +preserve order on extra effects (sets are not ordered on cpython2) + +diff --git a/rpython/jit/codewriter/effectinfo.py b/rpython/jit/codewriter/effectinfo.py +--- a/rpython/jit/codewriter/effectinfo.py ++++ b/rpython/jit/codewriter/effectinfo.py +@@ -326,14 +326,17 @@ + # a read or a write to an interiorfield, inside an array of + # structs, is additionally recorded as a read or write of + # the array itself +- extraef = set() ++ extraef = list() + for tup in effects: + if tup[0] == "interiorfield" or tup[0] == "readinteriorfield": + T = deref(tup[1]) + if isinstance(T, lltype.Array) and consider_array(T): +- extraef.add((tup[0].replace("interiorfield", "array"), +- tup[1])) +- effects |= extraef ++ val = (tup[0].replace("interiorfield", "array"), ++ tup[1]) ++ if val not in effects: ++ extraef.append(val) ++ # preserve order in the added effects issue bitbucket #2984 ++ effects = tuple(effects) + tuple(extraef) + + for tup in effects: + if tup[0] == "struct":
