Date: Monday, April 1, 2019 @ 16:25:08 Author: svenstaro Revision: 446947
upgpkg: pypy3 7.1.0-2 Added: pypy3/trunk/a93dfb333afe.patch Modified: pypy3/trunk/PKGBUILD --------------------+ PKGBUILD | 13 ++++++++++--- a93dfb333afe.patch | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 3 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2019-04-01 16:23:43 UTC (rev 446946) +++ PKGBUILD 2019-04-01 16:25:08 UTC (rev 446947) @@ -2,7 +2,7 @@ pkgname=pypy3 pkgver=7.1.0 -pkgrel=1 +pkgrel=2 pkgdesc="A Python3 implementation written in Python, JIT enabled" url="https://pypy.org" arch=('x86_64') @@ -12,9 +12,16 @@ 'tk: tk module') options=(!buildflags) license=('MIT') -source=("https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v${pkgver}-src.tar.bz2") -sha512sums=('ec39c33000606aa62de8ef1b7c83ba895c95f4636d5b1026fc3727ee3b04f2de9693b5ba6b84572348c62ff33c1d4bf5ef9c01427bd54f3db057959035ec068d') +source=("https://bitbucket.org/pypy/pypy/downloads/pypy3.6-v${pkgver}-src.tar.bz2" + a93dfb333afe.patch) +sha512sums=('1a0a9e9de31c63114c0537747c4a718504a28b780a2ef1f76bff6051a1ec68b496b574989f0b729c07611cd81e199135dd268834dfa6f9664e1e119db8ae20e4' + 'ed69a8ca9e407f5985c5ffad9649656c69a62a51c610df2718723d6460775e16d37cb888e8cb8ff2ec57ea6a8b2bd518a9368eb8421b435594efc6b32d1f5e19') +prepare() { + cd pypy3.6-v${pkgver}-src + patch -Np1 -i ${srcdir}/a93dfb333afe.patch +} + build() { cd pypy3.6-v${pkgver}-src/pypy/goal Added: a93dfb333afe.patch =================================================================== --- a93dfb333afe.patch (rev 0) +++ a93dfb333afe.patch 2019-04-01 16:25:08 UTC (rev 446947) @@ -0,0 +1,32 @@ +# HG changeset patch +# User Matti Picus <matti.pi...@gmail.com> +# 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":