[pypy-commit] jitviewer argparse-collect: Add the ability to collect the log file right now.

vext01 noreply at buildbot.pypy.org
Thu Sep 5 17:09:46 CEST 2013


Author: Edd Barrett <vext01 at gmail.com>
Branch: argparse-collect
Changeset: r231:1a80997236ab
Date: 2013-08-30 17:15 +0100
http://bitbucket.org/pypy/jitviewer/changeset/1a80997236ab/

Log:	Add the ability to collect the log file right now.

	We lose the ability to select port. The next commit will convert
	jitviewer to use argparse.

diff too long, truncating to 2000 out of 3866 lines

diff --git a/_jitviewer/app.py b/_jitviewer/app.py
--- a/_jitviewer/app.py
+++ b/_jitviewer/app.py
@@ -194,26 +194,64 @@
             orig___init__(self2, *args, **kwds)
         BaseServer.__init__ = __init__
 
+def collect_log(interp, args, logpath="log.pypylog"):
+    """ Collect a log file using pypy """
+
+    # XXX Randomise log file name
+    # XXX Search path
+
+    import subprocess
+    print("prog: %s    args: %s" % (interp, args))
+
+    p = subprocess.Popen([interp] + args, 
+            env={"PYPYLOG" : "jit-log-opt,jit-backend:%s" % (logpath, )}
+    )
+    p.communicate()
+    # We don't check the return status. The user may want to see traces
+    # for a failing program!
+    return os.path.abspath(logpath)
+
 def main(argv, run_app=True):
     if not '__pypy__' in sys.builtin_module_names:
         print "Please run it using pypy-c"
         sys.exit(1)
     #
+    # XXX use argparse
     server_mode = True
+    collect_mode = False
     if '--qt' in argv:
         server_mode = False
         argv.remove('--qt')
+    if '--collect' in argv:
+        prog_args = argv[argv.index('--collect')+1:]
+        prog = prog_args[0]
+        args = prog_args[1:]
+        collect_mode = True
+        argv.remove('--collect')
     #
-    if len(argv) != 2 and len(argv) != 3:
+    if not collect_mode and len(argv) != 2 and len(argv) != 3:
         print __doc__
         sys.exit(1)
-    filename = argv[1]
+
+    if collect_mode:
+        print("YO COLLECT MODE")
+        print(72 * ":")
+        filename = collect_log(prog, args)
+        port = 5000 # XXX ugh
+    else:
+        print("FUDGE")
+        print(72 * ":")
+        # XXX we really need argparse, as we cant specify port if collecting now
+        filename = argv[1]
+
+        if len(argv) != 3:
+            port = 5000
+        else:
+            port = int(argv[2])
+
     extra_path = os.path.dirname(filename)
-    if len(argv) != 3:
-        port = 5000
-    else:
-        port = int(argv[2])
     storage = LoopStorage(extra_path)
+
     log, loops = import_log(filename, ParserWithHtmlRepr)
     parse_log_counts(extract_category(log, 'jit-backend-count'), loops)
     storage.loops = [loop for loop in loops
@@ -226,7 +264,7 @@
     app.route('/loop')(server.loop)
     if run_app:
         def run():
-            app.run(use_reloader=bool(os.environ.get('JITVIEWER_USE_RELOADER', True)), host='0.0.0.0', port=port)
+            app.run(use_reloader=bool(os.environ.get('JITVIEWER_USE_RELOADER', False)), host='0.0.0.0', port=port)
 
         if server_mode:
             run()
diff --git a/log.pypylog b/log.pypylog
--- a/log.pypylog
+++ b/log.pypylog
@@ -1,3117 +1,699 @@
-[19c473e15553] {jit-backend-dump
+[d4bd435c340] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa000 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000584889452058488945104889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
-[19c473e25f71] jit-backend-dump}
-[19c473e2c5ce] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436000 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000584889452058488945104889E848BB30CF61CD9902000048832B084C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
+[d4bd43dff40] jit-backend-dump}
+[d4bd43e968a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa085 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000488B1C2508E6150348C7042500E615030000000048C7042508E615030000000048895D38584889452058488945104889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
-[19c473e2ecc8] jit-backend-dump}
-[19c473e31f04] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436093 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB800000049BB48D3E5CE99020000498B1B49BB40D3E5CE9902000049C7030000000049BB48D3E5CE9902000049C7030000000048895D38584889452058488945104889E848BB30CF61CD9902000048832B084C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
+[d4bd43f3eaa] jit-backend-dump}
+[d4bd43f8304] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa12e +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000488B7C240841BBB064120141FFD3488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000C20800
-[19c473e338a2] jit-backend-dump}
-[19c473e366e6] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436159 +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000488B7C240849BBD01AD1CC9902000041FFD3488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000C20800
+[d4bd440fc6c] jit-backend-dump}
+[d4bd441924a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa191 +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000488B7C240841BBF065120141FFD3488B442408F6400480488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000C20800
-[19c473e38072] jit-backend-dump}
-[19c473e3b5e9] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44361c0 +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000488B7C240849BB101CD1CC9902000041FFD3488B442408F6400480488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000C20800
+[d4bd441fdd0] jit-backend-dump}
+[d4bd457435c] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa1fd +0  4883EC384889442408F20F114424184889EF48895C24284C89642430488B1C2508E615034C8B242500E6150348C7042500E615030000000048C7042508E615030000000041BBB064120141FFD3F20F10442418488B44240848891C2508E615034C89242500E61503488B5C24284C8B642430488D642438C3
-[19c473e3d069] jit-backend-dump}
-[19c473e40c38] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436230 +0  4883EC384889442408F20F114424184889EF48895C24284C8964243049BB48D3E5CE99020000498B1B49BB40D3E5CE990200004D8B2349BB40D3E5CE9902000049C7030000000049BB48D3E5CE9902000049C7030000000049BBD01AD1CC9902000041FFD3F20F10442418488B44240849BB48D3E5CE9902000049891B49BB40D3E5CE990200004D8923488B5C24284C8B642430488D642438C3
+[d4bd457e70a] jit-backend-dump}
+[d4bd4586ce6] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa275 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D20488B7424104889EF4883EC0848C7452810000000488B0C2508E6150348894D38488B1C2500E6150348C7042500E615030000000048C7042508E615030000000041BB60DBE80041FFD34889C5488B4D3848C745380000000048890C2508E6150348891C2500E615034883C40848C745280000000048C7452000000000488B4D58488B4560488B5568488B5D70488B7578488BBD800000004C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000C3
-[19c473e45561] jit-backend-dump}
-[19c473e467bb] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44362ca +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D20488B7424104889EF4883EC0849BB48D3E5CE99020000498B0B48894D3849BB40D3E5CE99020000498B1B49BB40D3E5CE9902000049C7030000000049BB48D3E5CE9902000049C7030000000049BB90D89FCC9902000041FFD34889C5488B4D3848C745380000000049BB48D3E5CE9902000049890B49BB40D3E5CE9902000049891B4883C40849BB30CF61CD99020000498B1B488943F848C7452000000000488B4D58488B4560488B5568488B5D70488B7578488BBD800000004C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000C3
+[d4bd459ae14] jit-backend-dump}
+[d4bd459f028] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa491 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000584889452058488945104889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
-[19c473e48f8b] jit-backend-dump}
-[19c473e4a206] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436509 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000584889452058488945104889E848BB30CF61CD9902000048832B084C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
+[d4bd45aa7fc] jit-backend-dump}
+[d4bd45ae4f6] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa595 +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B1C2508E6150348C7042500E615030000000048C7042508E615030000000048895D38584889452058488945104889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
-[19c473e56f01] jit-backend-dump}
-[19c473e58819] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443661b +0  48894D58488945604889556848895D70488975784889BD800000004C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B53001000049BB48D3E5CE99020000498B1B49BB40D3E5CE9902000049C7030000000049BB48D3E5CE9902000049C7030000000048895D38584889452058488945104889E848BB30CF61CD9902000048832B084C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
+[d4bd45cae42] jit-backend-dump}
+[d4bd45cf30e] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa6bd +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B7C240841BBB064120141FFD3488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000C20800
-[19c473e5b9af] jit-backend-dump}
-[19c473e5cf8d] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436760 +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B7C240849BBD01AD1CC9902000041FFD3488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000C20800
+[d4bd45de666] jit-backend-dump}
+[d4bd45e261c] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa81e +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B7C240841BBF065120141FFD3488B442408F6400480488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000C20800
-[19c473e5fee0] jit-backend-dump}
-[19c473e6101c] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44368c5 +0  4889455848894D60488955684889757048897D784C8985800000004C898D880000004C899590000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B7C240849BB101CD1CC9902000041FFD3488B442408F6400480488B4558488B4D60488B5568488B7570488B7D784C8B85800000004C8B8D880000004C8B9590000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000C20800
+[d4bd45f09fc] jit-backend-dump}
+[d4bd45f4d26] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa988 +0  488B042508E6150348C7042500E615030000000048C7042508E61503000000004889453848C7451000C2B5014889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
-[19c473e625e0] jit-backend-dump}
-[19c473e68362] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436a33 +0  49BB48D3E5CE99020000498B0349BB40D3E5CE9902000049C7030000000049BB48D3E5CE9902000049C703000000004889453849BBE00A61CD990200004C895D104889E848BB30CF61CD9902000048832B084C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C3
+[d4bd45fbd0a] jit-backend-dump}
+[d4bd46054f0] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fa9e3 +0  48894D584889556848895D70488975784C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D204829C74883EC0848C745281000000041BBB0A4E80041FFD34883C4084885C00F84F4000000F645040174154883EC0849BBFDA17FC9E77F000041FFD34883C40848C7452800000000488B4D58488B5568488B5D70488B75784C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B530010000488B3C25484CB60148C7452000000000C34883C40849BB88A97FC9E77F000041FFE3
-[19c473e6c488] jit-backend-dump}
-[19c473e6ed0e] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436ab1 +0  48894D584889556848895D70488975784C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D204883EC084829C749BB30A39FCC9902000041FFD34883C4084885C00F840201000049BB30CF61CD99020000498B0B488B69F8F645040174154883EC0849BB306243D49D02000041FFD34883C408488B4D58488B5568488B5D70488B75784C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B53001000049BB28CE61CD99020000498B3B48C7452000000000C34883C40849BB336A43D49D02000041FFE3
+[d4bd461836e] jit-backend-dump}
+[d4bd461e1f2] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fabd6 +0  4889E74883EC0841BBD00F210141FFD34883C408488B042500E615034885C07501C34883C40849BB88A97FC9E77F000041FFE3
-[19c473e70017] jit-backend-dump}
-[19c473e70673] {jit-backend-counts
-[19c473e70a42] jit-backend-counts}
-[19c47442a7d0] {jit-backend
-[19c4746efe37] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436cae +0  48894D584889556848895D70488975784C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D204883EC084889FA4889C6488B7C241849BB40A29FCC9902000041FFD34883C4084885C00F840201000049BB30CF61CD99020000498B0B488B69F8F645040174154883EC0849BB306243D49D02000041FFD34883C408488B4D58488B5568488B5D70488B75784C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B53001000049BB28CE61CD99020000498B3B48C7452000000000C34883C40849BB336A43D49D02000041FFE3
+[d4bd4636ab0] jit-backend-dump}
+[d4bd46401ae] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97face0 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC2488000000488B0425B07916034829E0483B0425109F0103760D49BBD6AB7FC9E77F000041FFD349BBF0E067CCE77F00004D8B3B4D8D770149BBF0E067CCE77F00004D89334C8BB5380100004D8BBE800000004D8B6E504D8B66704D0FB6968E0000004D8B4E604D8B4678498B7E58498B7668488B5E10488B5618488B46204C89BD480100004C89AD500100004C898D580100004889BD60010000488995680100004889857001000049BB08E167CCE77F0000498B03488D500149BB08E167CCE77F00004989134983F8010F85000000004883FB017206813B180C00000F85000000004983FA000F850000000049BB10CD0CCAE77F00004D39DC0F85000000004C8B63084981FC4F0400000F8D00000000498D5C24014C8B2425807816034983FC000F8C0000000049BB20E167CCE77F00004D8B234D8D54240149BB20E167CCE77F00004D89134881FB4F0400000F8D000000004C8D5301488B1C25807816034883FB000F8C000000004C89D3E9B6FFFFFF49BB802991C9E77F0000415349BB40AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB583391C9E77F0000415349BB50AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE03291C9E77F0000415349BB60AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB683291C9E77F0000415349BB70AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBF03191C9E77F0000415349BB80AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB783191C9E77F0000415349BB90AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB003191C9E77F0000415349BBA0AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB883091C9E77F0000415349BBB0AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB103091C9E77F0000415349BBC0AC7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB982F91C9E77F0000415349BBD0AC7FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c4747066e6] jit-backend-dump}
-[19c474707091] {jit-backend-addr
-Loop 0 (<code object f, file 'source.py', line 4> #9 LOAD_FAST) has address 0x7fe7c97fad30 to 0x7fe7c97fae7b (bootstrap 0x7fe7c97face0)
-[19c4747084f3] jit-backend-addr}
-[19c474708f62] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4436eb3 +0  48894D584889556848895D70488975784C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D204883EC0849BB00A39FCC9902000041FFD34883C4084885C00F840201000049BB30CF61CD99020000498B0B488B69F8F645040174154883EC0849BB306243D49D02000041FFD34883C408488B4D58488B5568488B5D70488B75784C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B53001000049BB28CE61CD99020000498B3B48C7452000000000C34883C40849BB336A43D49D02000041FFE3
+[d4bd4653aa0] jit-backend-dump}
+[d4bd465898a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fadd6 +0  A1000000
-[19c474709e17] jit-backend-dump}
-[19c47470a414] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44370ad +0  48894D584889556848895D70488975784C8985880000004C898D900000004C8995980000004C89A5A00000004C89ADA80000004C89B5B00000004C89BDB8000000F20F1185C0000000F20F118DC8000000F20F1195D0000000F20F119DD8000000F20F11A5E0000000F20F11ADE8000000F20F11B5F0000000F20F11BDF8000000F2440F118500010000F2440F118D08010000F2440F119510010000F2440F119D18010000F2440F11A520010000F2440F11AD28010000F2440F11B530010000488B4C240848894D204883EC0849BBD0A29FCC9902000041FFD34883C4084885C00F840201000049BB30CF61CD99020000498B0B488B69F8F645040174154883EC0849BB306243D49D02000041FFD34883C408488B4D58488B5568488B5D70488B75784C8B85880000004C8B8D900000004C8B95980000004C8BA5A00000004C8BADA80000004C8BB5B00000004C8BBDB8000000F20F1085C0000000F20F108DC8000000F20F1095D0000000F20F109DD8000000F20F10A5E0000000F20F10ADE8000000F20F10B5F0000000F20F10BDF8000000F2440F108500010000F2440F108D08010000F2440F109510010000F2440F109D18010000F2440F10A520010000F2440F10AD28010000F2440F10B53001000049BB28CE61CD99020000498B3B48C7452000000000C34883C40849BB336A43D49D02000041FFE3
+[d4bd466b5ba] jit-backend-dump}
+[d4bd466f11c] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fade8 +0  B4000000
-[19c47470ae2a] jit-backend-dump}
-[19c47470b293] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44372a7 +0  4889E74883EC0849BB40CEE3CC9902000041FFD34883C40849BB40D3E5CE99020000498B034885C07501C34883C40849BB336A43D49D02000041FFE3
+[d4bd4673ed6] jit-backend-dump}
+[d4bd4674e24] {jit-backend-counts
+[d4bd4675ab2] jit-backend-counts}
+[d4bd590ac7a] {jit-backend
+[d4bd5fccb60] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fadf2 +0  CF000000
-[19c47470bc50] jit-backend-dump}
-[19c47470c075] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437450 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC248800000049BB30CF61CD99020000498B1B48892B4883C30849891B49BB1867E6CE99020000498B034829E049BBE0E6ACCE99020000493B03760D49BBA77243D49D02000041FFD349BBD8401FD29D0200004D8B3B4D8D770149BBD8401FD29D0200004D89334C8BB5380100004D8B7E704D8B6E604D8B66784D8B96800000004D8B4E504D0FB6868E000000498B7E58498B7668488B5E10488B5618488B4620488B4E284C8995480100004C8B563048899D50010000488B5E3848898558010000488B46404C8995600100004C8B564848898568010000488B465048898570010000488B465848898578010000488B466048898580010000488B466848898588010000488B46704C8B76784C89B5900100004C8BB6800000004C89B5980100004C8BB6880000004C898DA00100004C8B8E9000000048898DA8010000488B8E9800000048898DB0010000488B8EA000000048898DB8010000488B8EA800000048898DC0010000488B8EB000000048898DC8010000488B8EB800000048898DD0010000488B8EC00000004C89ADD80100004C8BAEC80000004889BDE0010000488995E801000048899DF0010000488985F80100004C89B5000200004C898D0802000048898D100200004C89AD1802000049BBF0401FD29D0200004D8B2B498D4D0149BBF0401FD29D02000049890B4983FC0F0F85000000004C8BA59801000041813C2430EB00000F8500000000498B4C24104885C90F84000000004D8B6C24084C8B491041813990EA03000F85000000004C8B4908498B49084939CD0F8300000000498B49104E8B74E910498D4D0149894C24084983F8000F85000000004983FE000F85000000004C8B85780100004983F8017207418138902300000F85000000004D8B68084983FD000F85000000004983FA01720741813A902300000F850000000049BB0888C4D09D0200004D39DF0F85000000004D8B7A084983C7010F800000000049BBC066E6CE990200004D8B134983FA000F8C000000004C89B5E001000049BB08411FD29D0200004D8B334D8D460149BB08411FD29D0200004D89034D8B41084C39C10F83000000004D8B41104D8B74C8104C8D41014D894424084983FE000F85000000004C89F94983C7010F800000000049BBC066E6CE99020000498B0B4883F9000F8C000000004C89B5E00100004C89C1E986FFFFFF49BB1897C8D09D020000415349BB207343D49D020000415349BB006043D49D02000041FFE349BBF06254D39D020000415349BB307343D49D020000415349BB006043D49D02000041FFE349BB786254D39D020000415349BB407343D49D020000415349BB006043D49D02000041FFE349BB006254D39D020000415349BB507343D49D020000415349BB006043D49D02000041FFE349BB886154D39D020000415349BB607343D49D020000415349BB006043D49D02000041FFE349BB106154D39D020000415349BB707343D49D020000415349BB006043D49D02000041FFE349BB986054D39D020000415349BB807343D49D020000415349BB006043D49D02000041FFE349BB206054D39D020000415349BB907343D49D020000415349BB006043D49D02000041FFE349BB889FC8D09D020000415349BBA07343D49D020000415349BB006043D49D02000041FFE349BB109FC8D09D020000415349BBB07343D49D020000415349BB006043D49D02000041FFE349BB989EC8D09D020000415349BBC07343D49D020000415349BB006043D49D02000041FFE349BB209EC8D09D020000415349BBD07343D49D020000415349BB006043D49D02000041FFE349BBA89DC8D09D020000415349BBE07343D49D020000415349BB006043D49D02000041FFE349BB309DC8D09D020000415349BBF07343D49D020000415349BB006043D49D02000041FFE349BBB89CC8D09D020000415349BB007443D49D020000415349BB006043D49D02000041FFE349BB409CC8D09D020000415349BB107443D49D020000415349BB006043D49D02000041FFE349BBC89BC8D09D020000415349BB207443D49D020000415349BB006043D49D02000041FFE349BB509BC8D09D020000415349BB307443D49D020000415349BB006043D49D02000041FFE349BBD89AC8D09D020000415349BB407443D49D020000415349BB006043D49D02000041FFE3
+[d4bd6011706] jit-backend-dump}
+[d4bd6013120] {jit-backend-addr
+Loop 0 (<code object _optimize_charset, file '/usr/local/pypy/lib-python/2.7/sre_compile.py', line 207> #274 FOR_ITER) has address 0x29dd44374c1 to 0x29dd44377d4 (bootstrap 0x29dd4437450)
+[d4bd6016fb0] jit-backend-addr}
+[d4bd6018af2] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fae05 +0  E1000000
-[19c47470c9b8] jit-backend-dump}
-[19c47470cdc2] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443766c +0  64010000
+[d4bd601be22] jit-backend-dump}
+[d4bd601cec0] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fae16 +0  F5000000
-[19c47470d695] jit-backend-dump}
-[19c47470dc77] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437681 +0  74010000
+[d4bd601f6c4] jit-backend-dump}
+[d4bd602088a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fae2d +0  28010000
-[19c47470e564] jit-backend-dump}
-[19c47470e995] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443768f +0  8B010000
+[d4bd60230cc] jit-backend-dump}
+[d4bd6024280] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fae59 +0  21010000
-[19c47470f2a6] jit-backend-dump}
-[19c47470f74a] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44376a5 +0  9A010000
+[d4bd6026e72] jit-backend-dump}
+[d4bd6027d12] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fae6f +0  55010000
-[19c4747100a2] jit-backend-dump}
-[19c474710d6a] jit-backend}
-[19c4747123d4] {jit-log-opt-loop
-# Loop 0 (<code object f, file 'source.py', line 4> #9 LOAD_FAST) : loop with 54 ops
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44376b6 +0  AE010000
+[d4bd602b122] jit-backend-dump}
+[d4bd602c1f6] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44376d2 +0  B7010000
+[d4bd602eac2] jit-backend-dump}
+[d4bd602fa20] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44376dc +0  D2010000
+[d4bd603223e] jit-backend-dump}
+[d4bd6033028] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44376f6 +0  DD010000
+[d4bd607b458] jit-backend-dump}
+[d4bd607c918] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437704 +0  F4010000
+[d4bd607f10c] jit-backend-dump}
+[d4bd607ffd6] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437717 +0  06020000
+[d4bd6082502] jit-backend-dump}
+[d4bd608348c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443772a +0  18020000
+[d4bd6085a92] jit-backend-dump}
+[d4bd6086a94] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437738 +0  2F020000
+[d4bd6089206] jit-backend-dump}
+[d4bd608ab60] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443774f +0  62020000
+[d4bd608d342] jit-backend-dump}
+[d4bd608e20e] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437781 +0  55020000
+[d4bd6090ab6] jit-backend-dump}
+[d4bd6091944] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443779d +0  5E020000
+[d4bd6093f98] jit-backend-dump}
+[d4bd6094d3c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44377aa +0  76020000
+[d4bd609738e] jit-backend-dump}
+[d4bd6098392] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44377c1 +0  A9020000
+[d4bd609ab48] jit-backend-dump}
+[d4bd609d80a] jit-backend}
+[d4bd60a2c66] {jit-log-opt-loop
+# Loop 0 (<code object _optimize_charset, file '/usr/local/pypy/lib-python/2.7/sre_compile.py', line 207> #274 FOR_ITER) : loop with 106 ops
 [p0, p1]
-+110: p2 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
-+124: p3 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-+128: p4 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-+132: i5 = getfield_gc(p0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
-+140: p6 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+144: i7 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+148: i8 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-+152: p9 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+156: p11 = getarrayitem_gc(p9, 0, descr=<ArrayP 8>)
-+160: p13 = getarrayitem_gc(p9, 1, descr=<ArrayP 8>)
-+164: p15 = getarrayitem_gc(p9, 2, descr=<ArrayP 8>)
-+168: p16 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-+168: label(p0, p1, p2, p3, p4, i5, p6, i7, i8, p11, p13, p15, descr=TargetToken(140633495987968))
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #9 LOAD_FAST')
-+240: guard_value(i7, 1, descr=<Guard0x7fe7c9912980>) [i7, p1, p0, p2, p3, p4, i5, p6, i8, p11, p13, p15]
-+250: guard_nonnull_class(p11, ConstClass(W_IntObject), descr=<Guard0x7fe7c9913358>) [p1, p0, p11, p2, p3, p4, i5, p6, p13, p15]
-+268: guard_value(i5, 0, descr=<Guard0x7fe7c99132e0>) [i5, p1, p0, p2, p3, p4, p6, p11, p15]
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #12 LOAD_CONST')
-+278: guard_value(p4, ConstPtr(ptr20), descr=<Guard0x7fe7c9913268>) [p1, p0, p4, p2, p3, p6, p11, p15]
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #15 COMPARE_OP')
-+297: i21 = getfield_gc_pure(p11, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+301: i23 = int_lt(i21, 1103)
-guard_true(i23, descr=<Guard0x7fe7c99131f0>) [p1, p0, p11, p2, p3, p6]
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #18 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #21 LOAD_FAST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #24 LOAD_CONST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #27 INPLACE_ADD')
-+314: i25 = int_add(i21, 1)
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #28 STORE_FAST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #31 JUMP_ABSOLUTE')
-+319: guard_not_invalidated(descr=<Guard0x7fe7c9913178>) [p1, p0, p2, p3, p6, i25]
-+319: i27 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+327: i29 = int_lt(i27, 0)
-guard_false(i29, descr=<Guard0x7fe7c9913100>) [p1, p0, p2, p3, p6, i25]
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #9 LOAD_FAST')
-+337: label(p0, p1, p2, p3, p6, i25, descr=TargetToken(140633495988056))
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #9 LOAD_FAST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #12 LOAD_CONST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #15 COMPARE_OP')
-+368: i30 = int_lt(i25, 1103)
-guard_true(i30, descr=<Guard0x7fe7c9913088>) [p1, p0, p2, p3, p6, i25]
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #18 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #21 LOAD_FAST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #24 LOAD_CONST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #27 INPLACE_ADD')
-+381: i31 = int_add(i25, 1)
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #28 STORE_FAST')
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #31 JUMP_ABSOLUTE')
-+385: guard_not_invalidated(descr=<Guard0x7fe7c9913010>) [p1, p0, p2, p3, p6, i31, None]
-+385: i33 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+393: i34 = int_lt(i33, 0)
-guard_false(i34, descr=<Guard0x7fe7c9912f98>) [p1, p0, p2, p3, p6, i31, None]
-debug_merge_point(0, 0, '<code object f. file 'source.py'. line 4> #9 LOAD_FAST')
-+403: jump(p0, p1, p2, p3, p6, i31, descr=TargetToken(140633495988056))
-+411: --end of the loop--
-[19c4747929e2] jit-log-opt-loop}
-[19c474a8bcae] {jit-backend
-[19c474b8b379] {jit-backend-dump
++143: p2 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
++154: p3 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
++158: i4 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
++162: p5 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
++169: p6 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
++173: i7 = getfield_gc(p0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
++181: i8 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
++185: p9 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
++189: p11 = getarrayitem_gc(p9, 0, descr=<ArrayP 8>)
++193: p13 = getarrayitem_gc(p9, 1, descr=<ArrayP 8>)
++197: p15 = getarrayitem_gc(p9, 2, descr=<ArrayP 8>)
++201: p17 = getarrayitem_gc(p9, 3, descr=<ArrayP 8>)
++205: p19 = getarrayitem_gc(p9, 4, descr=<ArrayP 8>)
++216: p21 = getarrayitem_gc(p9, 5, descr=<ArrayP 8>)
++227: p23 = getarrayitem_gc(p9, 6, descr=<ArrayP 8>)
++238: p25 = getarrayitem_gc(p9, 7, descr=<ArrayP 8>)
++249: p27 = getarrayitem_gc(p9, 8, descr=<ArrayP 8>)
++260: p29 = getarrayitem_gc(p9, 9, descr=<ArrayP 8>)
++271: p31 = getarrayitem_gc(p9, 10, descr=<ArrayP 8>)
++282: p33 = getarrayitem_gc(p9, 11, descr=<ArrayP 8>)
++293: p35 = getarrayitem_gc(p9, 12, descr=<ArrayP 8>)
++304: p37 = getarrayitem_gc(p9, 13, descr=<ArrayP 8>)
++308: p39 = getarrayitem_gc(p9, 14, descr=<ArrayP 8>)
++322: p41 = getarrayitem_gc(p9, 15, descr=<ArrayP 8>)
++336: p43 = getarrayitem_gc(p9, 16, descr=<ArrayP 8>)
++350: p45 = getarrayitem_gc(p9, 17, descr=<ArrayP 8>)
++364: p47 = getarrayitem_gc(p9, 18, descr=<ArrayP 8>)
++378: p49 = getarrayitem_gc(p9, 19, descr=<ArrayP 8>)
++392: p51 = getarrayitem_gc(p9, 20, descr=<ArrayP 8>)
++406: p53 = getarrayitem_gc(p9, 21, descr=<ArrayP 8>)
++420: p55 = getarrayitem_gc(p9, 22, descr=<ArrayP 8>)
++434: p57 = getarrayitem_gc(p9, 23, descr=<ArrayP 8>)
++448: p58 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
++448: label(p0, p1, p2, p3, i4, p5, p6, i7, i8, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p39, p41, p43, p45, p47, p49, p51, p53, p55, p57, descr=TargetToken(2876835872976))
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #274 FOR_ITER')
++534: guard_value(i4, 15, descr=<Guard0x29dd0c89718>) [i4, p1, p0, p2, p3, p5, p6, i7, i8, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p39, p41, p43, p45, p47, p49, p51, p53, p55, p57]
++544: guard_class(p39, 2859595984528, descr=<Guard0x29dd35462f0>) [p1, p0, p39, p2, p3, p5, p6, i7, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p41, p43, p45, p47, p49, p51, p53, p55, p57]
++565: p61 = getfield_gc(p39, descr=<FieldP pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
++570: guard_nonnull(p61, descr=<Guard0x29dd3546278>) [p1, p0, p39, p61, p2, p3, p5, p6, i7, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p41, p43, p45, p47, p49, p51, p53, p55, p57]
++579: i62 = getfield_gc(p39, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++584: p63 = getfield_gc(p61, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
++588: guard_class(p63, 2859596180976, descr=<Guard0x29dd3546200>) [p1, p0, p39, i62, p63, p61, p2, p3, p5, p6, i7, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p41, p43, p45, p47, p49, p51, p53, p55, p57]
++601: p65 = getfield_gc(p61, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
++605: i66 = getfield_gc(p65, descr=<FieldS list.length 8>)
++609: i67 = uint_ge(i62, i66)
+guard_false(i67, descr=<Guard0x29dd3546188>) [p1, p0, p39, i62, i66, p65, p2, p3, p5, p6, i7, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p41, p43, p45, p47, p49, p51, p53, p55, p57]
++618: p68 = getfield_gc(p65, descr=<FieldP list.items 16>)
++622: i69 = getarrayitem_gc(p68, i62, descr=<ArrayS 8>)
++627: i71 = int_add(i62, 1)
++631: setfield_gc(p39, i71, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++636: guard_value(i7, 0, descr=<Guard0x29dd3546110>) [i7, p1, p0, p2, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p35, p37, p39, p43, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #277 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #280 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #283 POP_JUMP_IF_FALSE')
++646: i73 = int_is_true(i69)
+guard_false(i73, descr=<Guard0x29dd3546098>) [p1, p0, p2, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p37, p39, p43, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #320 LOAD_FAST')
++656: guard_nonnull_class(p29, ConstClass(W_IntObject), descr=<Guard0x29dd3546020>) [p1, p0, p29, p2, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p25, p27, p31, p33, p37, p39, p43, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #323 POP_JUMP_IF_FALSE')
++682: i75 = getfield_gc_pure(p29, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++686: i76 = int_is_true(i75)
+guard_false(i76, descr=<Guard0x29dd0c89f88>) [p1, p0, p29, p2, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p25, p27, p31, p33, p37, p39, p43, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #351 LOAD_FAST')
++696: guard_nonnull_class(p25, ConstClass(W_IntObject), descr=<Guard0x29dd0c89f10>) [p1, p0, p25, p2, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p43, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #354 LOAD_CONST')
++715: guard_value(p2, ConstPtr(ptr78), descr=<Guard0x29dd0c89e98>) [p1, p0, p2, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p25, p27, p29, p31, p33, p37, p39, p43, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #357 BINARY_ADD')
++734: i79 = getfield_gc_pure(p25, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++738: i81 = int_add_ovf(i79, 1)
+guard_no_overflow(descr=<Guard0x29dd0c89e20>) [p1, p0, p25, i81, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #358 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #361 JUMP_ABSOLUTE')
++748: guard_not_invalidated(descr=<Guard0x29dd0c89da8>) [p1, p0, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i81, i69]
++748: i83 = getfield_raw(2859624457920, descr=<FieldS pypysig_long_struct.c_value 0>)
++761: i85 = int_lt(i83, 0)
+guard_false(i85, descr=<Guard0x29dd0c89d30>) [p1, p0, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i81, i69]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #274 FOR_ITER')
++771: label(p0, p1, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, i81, p27, p29, p31, p33, i69, p37, p39, p45, p47, p49, p51, p53, p55, p57, p65, i71, descr=TargetToken(2876835873064))
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #274 FOR_ITER')
++808: i86 = getfield_gc(p65, descr=<FieldS list.length 8>)
++812: i87 = uint_ge(i71, i86)
+guard_false(i87, descr=<Guard0x29dd0c89cb8>) [p1, p0, p39, i71, i86, p65, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p45, p47, p49, p51, p53, p55, p57, i81, i69]
++821: p88 = getfield_gc(p65, descr=<FieldP list.items 16>)
++825: i89 = getarrayitem_gc(p88, i71, descr=<ArrayS 8>)
++830: i90 = int_add(i71, 1)
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #277 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #280 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #283 POP_JUMP_IF_FALSE')
++834: setfield_gc(p39, i90, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++839: i91 = int_is_true(i89)
+guard_false(i91, descr=<Guard0x29dd0c89c40>) [p1, p0, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i89, i81, None]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #320 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #323 POP_JUMP_IF_FALSE')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #351 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #354 LOAD_CONST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #357 BINARY_ADD')
++849: i93 = int_add_ovf(i81, 1)
+guard_no_overflow(descr=<Guard0x29dd0c89bc8>) [p1, p0, i93, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i89, i81, None]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #358 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #361 JUMP_ABSOLUTE')
++862: guard_not_invalidated(descr=<Guard0x29dd0c89b50>) [p1, p0, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i93, i89, None, None]
++862: i94 = getfield_raw(2859624457920, descr=<FieldS pypysig_long_struct.c_value 0>)
++875: i95 = int_lt(i94, 0)
+guard_false(i95, descr=<Guard0x29dd0c89ad8>) [p1, p0, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, p27, p29, p31, p33, p37, p39, p45, p47, p49, p51, p53, p55, p57, i93, i89, None, None]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #274 FOR_ITER')
++885: jump(p0, p1, p3, p5, p6, p11, p13, p15, p17, p19, p21, p23, i93, p27, p29, p31, p33, i89, p37, p39, p45, p47, p49, p51, p53, p55, p57, p65, i90, descr=TargetToken(2876835873064))
++900: --end of the loop--
+[d4bd632bb1a] jit-log-opt-loop}
+[d4bd75888aa] {jit-backend
+[d4bd786b446] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb100 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC2488000000488B0425B07916034829E0483B0425109F0103760D49BBD6AB7FC9E77F000041FFD349BBD8E067CCE77F00004D8B3B4D8D770149BBD8E067CCE77F00004D89334C8BB5380100004D8BBE800000004D8B6E504D8B66704D0FB6968E0000004D8B4E604D8B4678498B7E58498B7668488B5E10488B5618488B46204C89BD480100004C89AD500100004C898D580100004889BD60010000488995680100004889857001000049BB38E167CCE77F0000498B03488D500149BB38E167CCE77F00004989134983F8010F85000000004883FB017206813B180C00000F85000000004983FA000F850000000049BB80CE0CCAE77F00004D39DC0F85000000004C8B63084981FC4F0400000F8D000000004D8B560849BBB00007CAE77F00004D39DA0F85000000004D8B421049BB900E0CCAE77F00004D39D80F850000000048899D380100004C89B56001000049BB80B07FC9E77F00004C895D2041BBA05B840041FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C74520000000004C8B70504889EB4C8B50604D85D20F85000000004C8B50404983FA000F85000000004D8D5424014C8B2425807816034983FC000F8C0000000049BB50E167CCE77F00004D8B234D8D74240149BB50E167CCE77F00004D89334981FA4F0400000F8D000000004D8D72014C8B1425807816034983FA000F8C000000004D89F2E9B6FFFFFF49BBF05194C9E77F0000415349BB00B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB40AD95C9E77F0000415349BB10B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BBC8AC95C9E77F0000415349BB20B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB50AC95C9E77F0000415349BB30B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BBD8AB95C9E77F0000415349BB40B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB60AB95C9E77F0000415349BB50B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE8AA95C9E77F0000415349BB60B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB70AA95C9E77F0000415349BB70B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BBF8A995C9E77F0000415349BB90B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB80A995C9E77F0000415349BBA0B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB08A995C9E77F0000415349BBB0B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB90A895C9E77F0000415349BBC0B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB18A895C9E77F0000415349BBD0B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BBA0A795C9E77F0000415349BBE0B07FC9E77F0000415349BB00A07FC9E77F000041FFE349BB28A795C9E77F0000415349BBF0B07FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c474b9edc8] jit-backend-dump}
-[19c474b9f656] {jit-backend-addr
-Loop 1 (<code object inlined_call, file 'source.py', line 14> #9 LOAD_FAST) has address 0x7fe7c97fb150 to 0x7fe7c97fb32b (bootstrap 0x7fe7c97fb100)
-[19c474ba0722] jit-backend-addr}
-[19c474ba105f] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437bc8 +0  48817D50FFFFFF007D2448C7442408FFFFFF0049BB987A43D49D0200004C891C2449BBCA6243D49D02000041FFD349BBC0401FD29D0200004D8B2B4D8D4D0149BBC0401FD29D0200004D890B4C8B8D780100004983F9017207418139902300000F850000000049BB0888C4D09D0200004D39DF0F85000000004D8B79084983FF000F84000000004983C7010F80000000004983FA01720741813A902300000F85000000004D8B4A084983C1010F800000000049BBC066E6CE990200004D8B134983FA000F8C000000004C89B57801000049BB20411FD29D0200004D8B334D8D560149BB20411FD29D0200004D891341813C2430EB00000F85000000004D8B5424104D85D20F84000000004D8B7424084D8B6A1041817D0090EA03000F85000000004D8B6A084D8B55084D39D60F83000000004D8B55104F8B6CF2104D8D56014D895424084983FD000F84000000004983FF000F84000000004D89FA4983C7010F80000000004D89CA4983C1010F800000000049BBC066E6CE990200004D8B134983FA000F8C000000004C89AD78010000E93BFFFFFF49BB306E54D39D020000415349BBA87A43D49D020000415349BB006043D49D02000041FFE349BB907754D39D020000415349BBB87A43D49D020000415349BB006043D49D02000041FFE349BB187754D39D020000415349BBC87A43D49D020000415349BB006043D49D02000041FFE349BBA07654D39D020000415349BBD87A43D49D020000415349BB006043D49D02000041FFE349BB287654D39D020000415349BBE87A43D49D020000415349BB006043D49D02000041FFE349BBB07554D39D020000415349BBF87A43D49D020000415349BB006043D49D02000041FFE349BB387554D39D020000415349BB087B43D49D020000415349BB006043D49D02000041FFE349BBC07454D39D020000415349BB187B43D49D020000415349BB006043D49D02000041FFE349BB487454D39D020000415349BB287B43D49D020000415349BB006043D49D02000041FFE349BBD07354D39D020000415349BB387B43D49D020000415349BB006043D49D02000041FFE349BB587354D39D020000415349BB487B43D49D020000415349BB006043D49D02000041FFE349BBE07254D39D020000415349BB587B43D49D020000415349BB006043D49D02000041FFE349BB687254D39D020000415349BB687B43D49D020000415349BB006043D49D02000041FFE349BBF07154D39D020000415349BB787B43D49D020000415349BB006043D49D02000041FFE349BB787154D39D020000415349BB887B43D49D020000415349BB006043D49D02000041FFE349BB007154D39D020000415349BB987B43D49D020000415349BB006043D49D02000041FFE349BB887054D39D020000415349BBA87B43D49D020000415349BB006043D49D02000041FFE349BB107054D39D020000415349BBB87B43D49D020000415349BB006043D49D02000041FFE3
+[d4bd78951be] jit-backend-dump}
+[d4bd7897294] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb1f6 +0  31010000
-[19c474ba1e7c] jit-backend-dump}
-[19c474ba2395] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437bcc +0  39000000
+[d4bd789a7de] jit-backend-dump}
+[d4bd789b93c] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb208 +0  44010000
-[19c474ba2cfc] jit-backend-dump}
-[19c474ba314d] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437bd7 +0  39000000
+[d4bd789e688] jit-backend-dump}
+[d4bd789f6be] {jit-backend-addr
+bridge out of Guard 0x29dd3546098 has address 0x29dd4437bc8 to 0x29dd4437d5d
+[d4bd78a1f78] jit-backend-addr}
+[d4bd78a3324] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb212 +0  5F010000
-[19c474ba3a2b] jit-backend-dump}
-[19c474ba3e5f] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c2a +0  2F010000
+[d4bd78a62e8] jit-backend-dump}
+[d4bd78a719a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb225 +0  71010000
-[19c474ba4793] jit-backend-dump}
-[19c474ba4bc7] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c3d +0  41010000
+[d4bd78aa178] jit-backend-dump}
+[d4bd78ab206] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb236 +0  85010000
-[19c474ba5566] jit-backend-dump}
-[19c474ba59a0] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c4b +0  58010000
+[d4bd78adb80] jit-backend-dump}
+[d4bd78aea3a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb24d +0  93010000
-[19c474ba62ae] jit-backend-dump}
-[19c474ba66e1] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c55 +0  73010000
+[d4bd78b15ee] jit-backend-dump}
+[d4bd78b2378] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb264 +0  A1010000
-[19c474ba6f81] jit-backend-dump}
-[19c474ba7727] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c68 +0  85010000
+[d4bd78d5c42] jit-backend-dump}
+[d4bd78d6e8a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb2b8 +0  97010000
-[19c474ba801d] jit-backend-dump}
-[19c474ba844b] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c76 +0  9C010000
+[d4bd78d9522] jit-backend-dump}
+[d4bd78daa16] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb2c6 +0  AE010000
-[19c474ba8d0e] jit-backend-dump}
-[19c474ba91df] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437c8d +0  CF010000
+[d4bd78dd08c] jit-backend-dump}
+[d4bd78de098] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb2dd +0  E1010000
-[19c474ba9a8b] jit-backend-dump}
-[19c474ba9ece] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437cc0 +0  C1010000
+[d4bd78e08ea] jit-backend-dump}
+[d4bd78e195e] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb309 +0  DA010000
-[19c474baa811] jit-backend-dump}
-[19c474baac68] {jit-backend-dump
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437cce +0  D8010000
+[d4bd78e4102] jit-backend-dump}
+[d4bd78e4f9a] {jit-backend-dump
 BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb31f +0  0E020000
-[19c474bab57f] jit-backend-dump}
-[19c474babe54] jit-backend}
-[19c474bacfed] {jit-log-opt-loop
-# Loop 1 (<code object inlined_call, file 'source.py', line 14> #9 LOAD_FAST) : loop with 77 ops
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437ce5 +0  E6010000
+[d4bd78e791a] jit-backend-dump}
+[d4bd78e87b2] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437cf6 +0  FA010000
+[d4bd78eae38] jit-backend-dump}
+[d4bd78ebc12] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437d12 +0  03020000
+[d4bd78ee1fc] jit-backend-dump}
+[d4bd78eef7e] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437d1c +0  1E020000
+[d4bd78f151a] jit-backend-dump}
+[d4bd78f234a] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437d29 +0  36020000
+[d4bd78f4830] jit-backend-dump}
+[d4bd78f5634] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437d36 +0  4E020000
+[d4bd78fc806] jit-backend-dump}
+[d4bd78fd812] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4437d4d +0  81020000
+[d4bd78ffeb2] jit-backend-dump}
+[d4bd79011dc] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44376dc +0  E8040000
+[d4bd7903838] jit-backend-dump}
+[d4bd790546a] jit-backend}
+[d4bd7909618] {jit-log-opt-bridge
+# bridge out of Guard 0x29dd3546098 with 76 ops
+[p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #286 LOAD_FAST')
++76: guard_nonnull_class(p15, ConstClass(W_IntObject), descr=<Guard0x29dd3546e30>) [p0, p1, p15, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #289 LOAD_CONST')
++102: guard_value(p2, ConstPtr(ptr30), descr=<Guard0x29dd3547790>) [p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24, p25, p26, p27, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #292 COMPARE_OP')
++121: i31 = getfield_gc_pure(p15, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++125: i33 = int_eq(i31, 0)
+guard_false(i33, descr=<Guard0x29dd3547718>) [p0, p1, p15, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #295 POP_JUMP_IF_FALSE')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #307 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #310 LOAD_CONST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #313 BINARY_ADD')
++135: i35 = int_add_ovf(i31, 1)
+guard_no_overflow(descr=<Guard0x29dd35476a0>) [p0, p1, p15, i35, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #314 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #317 JUMP_FORWARD')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #351 LOAD_FAST')
++145: guard_nonnull_class(p13, ConstClass(W_IntObject), descr=<Guard0x29dd3547628>) [p0, p1, p13, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i35, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #354 LOAD_CONST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #357 BINARY_ADD')
++164: i37 = getfield_gc_pure(p13, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++168: i39 = int_add_ovf(i37, 1)
+guard_no_overflow(descr=<Guard0x29dd35475b0>) [p0, p1, p13, i39, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i35, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #358 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #361 JUMP_ABSOLUTE')
++178: guard_not_invalidated(descr=<Guard0x29dd3547538>) [p0, p1, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i39, i35, i28]
++178: i41 = getfield_raw(2859624457920, descr=<FieldS pypysig_long_struct.c_value 0>)
++191: i43 = int_lt(i41, 0)
+guard_false(i43, descr=<Guard0x29dd35474c0>) [p0, p1, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i39, i35, i28]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #274 FOR_ITER')
++201: label(p1, p0, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, i39, p14, i35, p16, p17, i28, p18, p19, p21, p22, p23, p24, p25, p26, p27, descr=TargetToken(2876835874912))
++238: guard_class(p19, 2859595984528, descr=<Guard0x29dd3547448>) [p0, p1, p19, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p21, p22, p23, p24, p25, p26, p27, i35, i28, i39]
++252: p45 = getfield_gc(p19, descr=<FieldP pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
++257: guard_nonnull(p45, descr=<Guard0x29dd35473d0>) [p0, p1, p19, p45, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p21, p22, p23, p24, p25, p26, p27, i35, i28, i39]
++266: i46 = getfield_gc(p19, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++271: p47 = getfield_gc(p45, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
++275: guard_class(p47, 2859596180976, descr=<Guard0x29dd3547358>) [p0, p1, p19, i46, p47, p45, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p21, p22, p23, p24, p25, p26, p27, i35, i28, i39]
++289: p49 = getfield_gc(p45, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
++293: i50 = getfield_gc(p49, descr=<FieldS list.length 8>)
++297: i51 = uint_ge(i46, i50)
+guard_false(i51, descr=<Guard0x29dd35472e0>) [p0, p1, p19, i46, i50, p49, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p21, p22, p23, p24, p25, p26, p27, i35, i28, i39]
++306: p52 = getfield_gc(p49, descr=<FieldP list.items 16>)
++310: i53 = getarrayitem_gc(p52, i46, descr=<ArrayS 8>)
++315: i55 = int_add(i46, 1)
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #277 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #280 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #283 POP_JUMP_IF_FALSE')
++319: setfield_gc(p19, i55, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++324: i56 = int_is_true(i53)
+guard_true(i56, descr=<Guard0x29dd3547268>) [p0, p1, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i53, i35, None, i39]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #286 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #289 LOAD_CONST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #292 COMPARE_OP')
++334: i59 = int_eq(i35, 0)
+guard_false(i59, descr=<Guard0x29dd35471f0>) [p0, p1, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i53, i35, None, i39]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #295 POP_JUMP_IF_FALSE')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #307 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #310 LOAD_CONST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #313 BINARY_ADD')
++344: i61 = int_add_ovf(i35, 1)
+guard_no_overflow(descr=<Guard0x29dd3547178>) [p0, p1, i61, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i53, i35, None, i39]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #314 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #317 JUMP_FORWARD')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #351 LOAD_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #354 LOAD_CONST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #357 BINARY_ADD')
++357: i63 = int_add_ovf(i39, 1)
+guard_no_overflow(descr=<Guard0x29dd3547100>) [p0, p1, i63, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i61, i53, None, None, i39]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #358 STORE_FAST')
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #361 JUMP_ABSOLUTE')
++370: guard_not_invalidated(descr=<Guard0x29dd3547088>) [p0, p1, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i63, i61, i53, None, None, None]
++370: i65 = getfield_raw(2859624457920, descr=<FieldS pypysig_long_struct.c_value 0>)
++383: i67 = int_lt(i65, 0)
+guard_false(i67, descr=<Guard0x29dd3547010>) [p0, p1, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p14, p16, p17, p18, p19, p21, p22, p23, p24, p25, p26, p27, i63, i61, i53, None, None, None]
+debug_merge_point(0, 0, '<code object _optimize_charset. file '/usr/local/pypy/lib-python/2.7/sre_compile.py'. line 207> #274 FOR_ITER')
++393: jump(p1, p0, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, i63, p14, i61, p16, p17, i53, p18, p19, p21, p22, p23, p24, p25, p26, p27, descr=TargetToken(2876835874912))
++405: --end of the loop--
+[d4bd7a0493a] jit-log-opt-bridge}
+[d4bd852c8ce] {jit-backend
+[d4bd8952728] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438198 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC248800000049BB30CF61CD99020000498B1B48892B4883C30849891B49BB1867E6CE99020000498B034829E049BBE0E6ACCE99020000493B03760D49BBA77243D49D02000041FFD349BB38411FD29D0200004D8B3B4D8D770149BB38411FD29D0200004D89334C8BB5380100004D8B7E704D8B6E604D8B66784D8B96800000004D8B4E504D0FB6868E000000498B7E58498B7668488B5E10488B5618488B4620488B4E2848899D48010000488B5E3048898550010000488B463848898558010000488B46404C89AD600100004C8B6E484C89AD680100004C8B6E504C898D700100004C8B4E5848899578010000488B566048898D80010000488B4E6848898D88010000488B4E7048898D90010000488B4E784C8995980100004889BDA0010000488985A80100004C89ADB00100004C898DB8010000488995C001000048898DC801000049BB50411FD29D020000498B0B488D510149BB50411FD29D0200004989134983FC080F85000000004C8BA56801000041813C2430EB00000F8500000000498B5424104885D20F8400000000498B4C24084C8B4A1041813990EA03000F85000000004C8B4A08498B51084839D10F8300000000498B51104C8B6CCA10488D510149895424084983F8000F85000000004983FD000F85000000004883FB017206813B582800000F85000000004C8B430848899D380100004C89B5A00100004C898DA80100004C89BDB0010000488995B80100004C89C74C89C649BB888043D49D0200004C895D2049BB7026E0CC9902000041FFD349BB30CF61CD99020000498B0B488B69F8F6450401740D49BB306243D49D02000041FFD348C745200000000049BB40D3E5CE9902000049833B000F8500000000488B95B001000049BBC088C4D09D0200004C39DA0F8500000000488B95A00100004C8B7A0849BBF832C3D09D0200004D39DF0F85000000004D8B4F1049BB1033C3D09D0200004D39D90F8500000000488985380100004889C749BBC0EAC4D09D0200004C89DE49BBE88043D49D0200004C895D2049BBE031E0CC9902000041FFD349BB30CF61CD99020000498B0B488B69F8F6450401740D49BB306243D49D02000041FFD348C7452000000000480FB6C04885C00F850000000049BBC066E6CE99020000498B034883F8000F8C000000004C89ADB001000049BB68411FD29D0200004D8B2B498D450149BB68411FD29D020000498903488B85A80100004C8B68084C39ADB80100000F83000000004C8B6810488B95B80100004D8B7CD5104C8D6A01488B95680100004C896A084983FF000F8500000000488BBD38010000488BB53801000049BB388143D49D0200004C895D2049BB7026E0CC9902000041FFD349BB30CF61CD99020000498B0B488B69F8F6450401740D49BB306243D49D02000041FFD348C745200000000049BB40D3E5CE9902000049833B000F8500000000488985380100004889C749BBC0EAC4D09D0200004C89DE49BB688143D49D0200004C895D2049BBE031E0CC9902000041FFD349BB30CF61CD99020000498B0B488B69F8F6450401740D49BB306243D49D02000041FFD348C7452000000000480FB6C04885C00F850000000049BBC066E6CE99020000498B034883F8000F8C000000004C89BDB00100004C89ADB8010000E9A3FEFFFF49BBE04356D39D020000415349BB088043D49D020000415349BB006043D49D02000041FFE349BB405C56D39D020000415349BB188043D49D020000415349BB006043D49D02000041FFE349BBC85B56D39D020000415349BB288043D49D020000415349BB006043D49D02000041FFE349BB505B56D39D020000415349BB388043D49D020000415349BB006043D49D02000041FFE349BBD85A56D39D020000415349BB488043D49D020000415349BB006043D49D02000041FFE349BB605A56D39D020000415349BB588043D49D020000415349BB006043D49D02000041FFE349BBE85956D39D020000415349BB688043D49D020000415349BB006043D49D02000041FFE349BB705956D39D020000415349BB788043D49D020000415349BB006043D49D02000041FFE349BBF85856D39D020000415349BB988043D49D020000415349BB936043D49D02000041FFE349BB805856D39D020000415349BBA88043D49D020000415349BB006043D49D02000041FFE349BB085856D39D020000415349BBB88043D49D020000415349BB006043D49D02000041FFE349BB905756D39D020000415349BBC88043D49D020000415349BB006043D49D02000041FFE349BB185756D39D020000415349BBD88043D49D020000415349BB006043D49D02000041FFE349BBA05656D39D020000415349BBF88043D49D020000415349BB006043D49D02000041FFE349BB285656D39D020000415349BB088143D49D020000415349BB006043D49D02000041FFE349BBB05556D39D020000415349BB188143D49D020000415349BB006043D49D02000041FFE349BB385556D39D020000415349BB288143D49D020000415349BB006043D49D02000041FFE349BBC05456D39D020000415349BB488143D49D020000415349BB936043D49D02000041FFE349BB485456D39D020000415349BB588143D49D020000415349BB006043D49D02000041FFE349BBD05356D39D020000415349BB788143D49D020000415349BB006043D49D02000041FFE349BB585356D39D020000415349BB888143D49D020000415349BB006043D49D02000041FFE3
+[d4bd899e5b6] jit-backend-dump}
+[d4bd899feba] {jit-backend-addr
+Loop 1 (<code object _mk_bitmap, file '/usr/local/pypy/lib-python/2.7/sre_compile.py', line 258> #64 FOR_ITER) has address 0x29dd4438209 to 0x29dd443866b (bootstrap 0x29dd4438198)
+[d4bd89a36c2] jit-backend-addr}
+[d4bd89a4c38] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438328 +0  3F030000
+[d4bd89a8146] jit-backend-dump}
+[d4bd89c766a] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443833d +0  4F030000
+[d4bd89cb632] jit-backend-dump}
+[d4bd89cc7b2] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443834b +0  66030000
+[d4bd89cf62e] jit-backend-dump}
+[d4bd89d04ac] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438361 +0  75030000
+[d4bd89d2d4c] jit-backend-dump}
+[d4bd89d3bda] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438372 +0  89030000
+[d4bd89d622c] jit-backend-dump}
+[d4bd89d725c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443838e +0  92030000
+[d4bd89d9b86] jit-backend-dump}
+[d4bd89dadfa] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438398 +0  AD030000
+[d4bd89dd794] jit-backend-dump}
+[d4bd89de63e] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44383aa +0  C0030000
+[d4bd89e1648] jit-backend-dump}
+[d4bd89e26b2] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438432 +0  5D030000
+[d4bd89e4e34] jit-backend-dump}
+[d4bd89e5ccc] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443844c +0  68030000
+[d4bd89e836c] jit-backend-dump}
+[d4bd89e91b6] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443846a +0  6F030000
+[d4bd89eb7ba] jit-backend-dump}
+[d4bd89ec5c8] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438481 +0  7D030000
+[d4bd89eeb16] jit-backend-dump}
+[d4bd89f0224] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44384ec +0  5C030000
+[d4bd89f27c0] jit-backend-dump}
+[d4bd89f375c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438503 +0  6A030000
+[d4bd89f5e88] jit-backend-dump}
+[d4bd89f6e3c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438540 +0  52030000
+[d4bd89f9804] jit-backend-dump}
+[d4bd89fa622] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438569 +0  4E030000
+[d4bd89fce48] jit-backend-dump}
+[d4bd89fdc78] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd44385d2 +0  0A030000
+[d4bd8a00248] jit-backend-dump}
+[d4bd8a01288] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd443863d +0  E9020000
+[d4bd8a03b30] jit-backend-dump}
+[d4bd8a04982] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE pypy
+CODE_DUMP @29dd4438654 +0  F7020000
+[d4bd8a070a6] jit-backend-dump}
+[d4bd8a0933e] jit-backend}
+[d4bd8a0ddf6] {jit-log-opt-loop
+# Loop 1 (<code object _mk_bitmap, file '/usr/local/pypy/lib-python/2.7/sre_compile.py', line 258> #64 FOR_ITER) : loop with 105 ops
 [p0, p1]
-+110: p2 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
-+124: p3 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-+128: p4 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-+132: i5 = getfield_gc(p0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
-+140: p6 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+144: i7 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+148: i8 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-+152: p9 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+156: p11 = getarrayitem_gc(p9, 0, descr=<ArrayP 8>)
-+160: p13 = getarrayitem_gc(p9, 1, descr=<ArrayP 8>)
-+164: p15 = getarrayitem_gc(p9, 2, descr=<ArrayP 8>)
-+168: p16 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-+168: label(p0, p1, p2, p3, p4, i5, p6, i7, i8, p11, p13, p15, descr=TargetToken(140633495988760))
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #9 LOAD_FAST')
-+240: guard_value(i7, 1, descr=<Guard0x7fe7c99451f0>) [i7, p1, p0, p2, p3, p4, i5, p6, i8, p11, p13, p15]
-+250: guard_nonnull_class(p11, ConstClass(W_IntObject), descr=<Guard0x7fe7c995ad40>) [p1, p0, p11, p2, p3, p4, i5, p6, p13, p15]
-+268: guard_value(i5, 0, descr=<Guard0x7fe7c995acc8>) [i5, p1, p0, p2, p3, p4, p6, p11, p15]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #12 LOAD_CONST')
-+278: guard_value(p4, ConstPtr(ptr20), descr=<Guard0x7fe7c995ac50>) [p1, p0, p4, p2, p3, p6, p11, p15]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #15 COMPARE_OP')
-+297: i21 = getfield_gc_pure(p11, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+301: i23 = int_lt(i21, 1103)
-guard_true(i23, descr=<Guard0x7fe7c995abd8>) [p1, p0, p11, p2, p3, p6]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #18 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #21 LOAD_GLOBAL')
-+314: p24 = getfield_gc(p0, descr=<FieldP pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+318: guard_value(p24, ConstPtr(ptr25), descr=<Guard0x7fe7c995ab60>) [p1, p0, p24, p2, p3, p6, p11]
-+337: p26 = getfield_gc(p24, descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
-+341: guard_value(p26, ConstPtr(ptr27), descr=<Guard0x7fe7c995aae8>) [p1, p0, p26, p24, p2, p3, p6, p11]
-+360: guard_not_invalidated(descr=<Guard0x7fe7c995aa70>) [p1, p0, p24, p2, p3, p6, p11]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #24 LOAD_FAST')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #27 CALL_FUNCTION')
-+360: p29 = call(ConstClass(getexecutioncontext), descr=<Callr 8 EF=1>)
-+424: p30 = getfield_gc(p29, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 80>)
-+428: p31 = force_token()
-+431: p32 = getfield_gc(p29, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 96>)
-+435: guard_isnull(p32, descr=<Guard0x7fe7c995a9f8>) [p1, p0, p29, p32, p2, p3, p6, p11, p31, p30]
-+444: i33 = getfield_gc(p29, descr=<FieldU pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 64>)
-+448: i34 = int_is_zero(i33)
-guard_true(i34, descr=<Guard0x7fe7c995a980>) [p1, p0, p29, p2, p3, p6, p11, p31, p30]
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #0 LOAD_FAST')
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #3 LOAD_CONST')
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #6 BINARY_ADD')
-+458: i36 = int_add(i21, 1)
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #7 RETURN_VALUE')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #30 STORE_FAST')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #33 JUMP_ABSOLUTE')
-+463: guard_not_invalidated(descr=<Guard0x7fe7c995a908>) [p1, p0, p2, p3, p6, i36, None, None]
-+463: i39 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+471: i41 = int_lt(i39, 0)
-guard_false(i41, descr=<Guard0x7fe7c995a890>) [p1, p0, p2, p3, p6, i36, None, None]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #9 LOAD_FAST')
-+481: p42 = same_as(ConstPtr(ptr27))
-+481: label(p0, p1, p2, p3, p6, i36, descr=TargetToken(140633495988848))
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #9 LOAD_FAST')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #12 LOAD_CONST')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #15 COMPARE_OP')
-+512: i43 = int_lt(i36, 1103)
-guard_true(i43, descr=<Guard0x7fe7c995a818>) [p1, p0, p2, p3, p6, i36]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #18 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #21 LOAD_GLOBAL')
-+525: guard_not_invalidated(descr=<Guard0x7fe7c995a7a0>) [p1, p0, p2, p3, p6, i36]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #24 LOAD_FAST')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #27 CALL_FUNCTION')
-+525: p44 = force_token()
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #0 LOAD_FAST')
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #3 LOAD_CONST')
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #6 BINARY_ADD')
-+525: i45 = int_add(i36, 1)
-debug_merge_point(1, 1, '<code object inner. file 'source.py'. line 11> #7 RETURN_VALUE')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #30 STORE_FAST')
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #33 JUMP_ABSOLUTE')
-+529: i46 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+537: i47 = int_lt(i46, 0)
-guard_false(i47, descr=<Guard0x7fe7c995a728>) [p1, p0, p2, p3, p6, i45, None]
-debug_merge_point(0, 0, '<code object inlined_call. file 'source.py'. line 14> #9 LOAD_FAST')
-+547: jump(p0, p1, p2, p3, p6, i45, descr=TargetToken(140633495988848))
-+555: --end of the loop--
-[19c474bf9fca] jit-log-opt-loop}
-[19c474c0e8bc] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb268 +0  E9C1010000
-[19c474c103d6] jit-backend-dump}
-[19c474c10960] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb2cf +0  E9C9010000
-[19c474c1148a] jit-backend-dump}
-[19c474c118f3] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb30d +0  E9FA010000
-[19c474c122f5] jit-backend-dump}
-[19c47509a4c2] {jit-backend
-[19c475193ba8] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb668 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC2488000000488B0425B07916034829E0483B0425109F0103760D49BBD6AB7FC9E77F000041FFD349BB68E167CCE77F00004D8B3B4D8D770149BB68E167CCE77F00004D89334C8BB5380100004D8BBE800000004D8B6E504D8B66704D0FB6968E0000004D8B4E604D8B4678498B7E58498B7668488B5E10488B5618488B4620488B4E284C89AD480100004C8B6E304C89BD500100004C898D580100004889BD600100004889956801000048898D700100004C89AD7801000049BB80E167CCE77F00004D8B2B498D4D0149BB80E167CCE77F000049890B4983F8030F85000000008138E82200000F85000000004C8B40104D85C00F8400000000488B48084D8B681041817D00685505000F85000000004D8B68084D8B4508498B5510498B7D184883F9000F8C000000004839F90F8D000000004989CD480FAFCA4D89C14901C8498D4D01488948084983FA000F85000000004883FB017206813B180C00000F850000000049BB38CF0CCAE77F00004D39DC0F85000000004C8B63084983C4010F8000000000488B1C25807816034883FB000F8C000000004C89856001000049BB98E167CCE77F00004D8B03498D580149BB98E167CCE77F000049891B4839F90F8D000000004889CB480FAFCA4D89C84901C9488D4B01488948084C89E34983C4010F8000000000488B1C25807816034883FB000F8C000000004C898D600100004D89C1E996FFFFFF49BBA8AE95C9E77F0000415349BB68B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB90E896C9E77F0000415349BB78B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBA0E796C9E77F0000415349BB88B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB28E796C9E77F0000415349BB98B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBB0E696C9E77F0000415349BBA8B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB38E696C9E77F0000415349BBB8B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBC0E596C9E77F0000415349BBC8B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB48E596C9E77F0000415349BBD8B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBD0E496C9E77F0000415349BBE8B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB58E496C9E77F0000415349BBF8B57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE0E396C9E77F0000415349BB08B67FC9E77F0000415349BB00A07FC9E77F000041FFE349BB68E396C9E77F0000415349BB18B67FC9E77F0000415349BB00A07FC9E77F000041FFE349BBF0E296C9E77F0000415349BB28B67FC9E77F0000415349BB00A07FC9E77F000041FFE349BB78E296C9E77F0000415349BB38B67FC9E77F0000415349BB00A07FC9E77F000041FFE349BB00E296C9E77F0000415349BB48B67FC9E77F0000415349BB00A07FC9E77F000041FFE349BB88E196C9E77F0000415349BB58B67FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c4751ab695] jit-backend-dump}
-[19c4751ac131] {jit-backend-addr
-Loop 2 (<code object uninlined_call, file 'source.py', line 21> #19 FOR_ITER) has address 0x7fe7c97fb6b8 to 0x7fe7c97fb898 (bootstrap 0x7fe7c97fb668)
-[19c4751ad6bf] jit-backend-addr}
-[19c4751ae020] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb76d +0  27010000
-[19c4751aef16] jit-backend-dump}
-[19c4751af4c9] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb779 +0  40010000
-[19c4751aff5c] jit-backend-dump}
-[19c4751b03b0] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb786 +0  58010000
-[19c4751b0dcc] jit-backend-dump}
-[19c4751b122c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb79c +0  67010000
-[19c4751b1b28] jit-backend-dump}
-[19c4751b2047] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb7b6 +0  72010000
-[19c4751b2928] jit-backend-dump}
-[19c4751b2d6d] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb7bf +0  8E010000
-[19c4751b36fb] jit-backend-dump}
-[19c4751b3b61] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb7de +0  94010000
-[19c4751b440d] jit-backend-dump}
-[19c4751b4852] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb7f0 +0  A7010000
-[19c4751b5192] jit-backend-dump}
-[19c4751b55cc] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb803 +0  B9010000
-[19c4751b5ead] jit-backend-dump}
-[19c4751b6304] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb811 +0  D0010000
-[19c4751b6baa] jit-backend-dump}
-[19c4751b71bc] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb823 +0  08020000
-[19c4751b7aa9] jit-backend-dump}
-[19c4751b7ec5] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb851 +0  FF010000
-[19c4751b87ca] jit-backend-dump}
-[19c4751b8c15] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb873 +0  02020000
-[19c4751b94d6] jit-backend-dump}
-[19c4751b99a7] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb885 +0  3A020000
-[19c4751ba267] jit-backend-dump}
-[19c4751bae3b] jit-backend}
-[19c4751bbff8] {jit-log-opt-loop
-# Loop 2 (<code object uninlined_call, file 'source.py', line 21> #19 FOR_ITER) : loop with 74 ops
-[p0, p1]
-+110: p2 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
-+124: p3 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-+128: p4 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-+132: i5 = getfield_gc(p0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
-+140: p6 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+144: i7 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+148: i8 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-+152: p9 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+156: p11 = getarrayitem_gc(p9, 0, descr=<ArrayP 8>)
-+160: p13 = getarrayitem_gc(p9, 1, descr=<ArrayP 8>)
-+164: p15 = getarrayitem_gc(p9, 2, descr=<ArrayP 8>)
-+168: p17 = getarrayitem_gc(p9, 3, descr=<ArrayP 8>)
-+172: p19 = getarrayitem_gc(p9, 4, descr=<ArrayP 8>)
-+183: p20 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-+183: label(p0, p1, p2, p3, p4, i5, p6, i7, i8, p11, p13, p15, p17, p19, descr=TargetToken(140633495989376))
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
-+255: guard_value(i7, 3, descr=<Guard0x7fe7c995aea8>) [i7, p1, p0, p2, p3, p4, i5, p6, i8, p11, p13, p15, p17, p19]
-+265: guard_class(p15, 26177128, descr=<Guard0x7fe7c996e890>) [p1, p0, p15, p2, p3, p4, i5, p6, p11, p13, p17, p19]
-+277: p23 = getfield_gc(p15, descr=<FieldP pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
-+281: guard_nonnull(p23, descr=<Guard0x7fe7c996e7a0>) [p1, p0, p15, p23, p2, p3, p4, i5, p6, p11, p13, p17, p19]
-+290: i24 = getfield_gc(p15, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+294: p25 = getfield_gc(p23, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
-+298: guard_class(p25, 26517736, descr=<Guard0x7fe7c996e728>) [p1, p0, p15, i24, p25, p23, p2, p3, p4, i5, p6, p11, p13, p17, p19]
-+312: p27 = getfield_gc(p23, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
-+316: i28 = getfield_gc_pure(p27, descr=<FieldS tuple3.item0 8>)
-+320: i29 = getfield_gc_pure(p27, descr=<FieldS tuple3.item1 16>)
-+324: i30 = getfield_gc_pure(p27, descr=<FieldS tuple3.item2 24>)
-+328: i32 = int_lt(i24, 0)
-guard_false(i32, descr=<Guard0x7fe7c996e6b0>) [p1, p0, p15, i24, i30, i29, i28, p2, p3, p4, i5, p6, p11, p13, p17, p19]
-+338: i33 = int_ge(i24, i30)
-guard_false(i33, descr=<Guard0x7fe7c996e638>) [p1, p0, p15, i24, i29, i28, p2, p3, p4, i5, p6, p11, p13, p17, p19]
-+347: i34 = int_mul(i24, i29)
-+354: i35 = int_add(i28, i34)
-+360: i37 = int_add(i24, 1)
-+364: setfield_gc(p15, i37, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+368: guard_value(i5, 0, descr=<Guard0x7fe7c996e5c0>) [i5, p1, p0, p2, p3, p4, p6, p11, p13, p15, p19, i35]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #22 STORE_FAST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #25 LOAD_FAST')
-+378: guard_nonnull_class(p11, ConstClass(W_IntObject), descr=<Guard0x7fe7c996e548>) [p1, p0, p11, p2, p3, p4, p6, p15, p19, i35]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #28 LOAD_CONST')
-+396: guard_value(p4, ConstPtr(ptr40), descr=<Guard0x7fe7c996e4d0>) [p1, p0, p4, p2, p3, p6, p11, p15, p19, i35]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #31 INPLACE_ADD')
-+415: i41 = getfield_gc_pure(p11, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+419: i43 = int_add_ovf(i41, 1)
-guard_no_overflow(descr=<Guard0x7fe7c996e458>) [p1, p0, p11, i43, p2, p3, p6, p15, i35]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #32 STORE_FAST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #35 JUMP_ABSOLUTE')
-+429: guard_not_invalidated(descr=<Guard0x7fe7c996e3e0>) [p1, p0, p2, p3, p6, p15, i43, i35]
-+429: i45 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+437: i47 = int_lt(i45, 0)
-guard_false(i47, descr=<Guard0x7fe7c996e368>) [p1, p0, p2, p3, p6, p15, i43, i35]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
-+447: label(p0, p1, p2, p3, p6, i43, i35, p15, i37, i30, i29, i28, descr=TargetToken(140633495989464))
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
-+484: i48 = int_ge(i37, i30)
-guard_false(i48, descr=<Guard0x7fe7c996e2f0>) [p1, p0, p15, i37, i29, i28, p2, p3, p6, i35, i43]
-+493: i49 = int_mul(i37, i29)
-+500: i50 = int_add(i28, i49)
-+506: i51 = int_add(i37, 1)
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #22 STORE_FAST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #25 LOAD_FAST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #28 LOAD_CONST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #31 INPLACE_ADD')
-+510: setfield_gc(p15, i51, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+514: i52 = int_add_ovf(i43, 1)
-guard_no_overflow(descr=<Guard0x7fe7c996e278>) [p1, p0, i52, p2, p3, p6, p15, i50, None, i43]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #32 STORE_FAST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #35 JUMP_ABSOLUTE')
-+527: guard_not_invalidated(descr=<Guard0x7fe7c996e200>) [p1, p0, p2, p3, p6, p15, i52, i50, None, None]
-+527: i54 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+535: i55 = int_lt(i54, 0)
-guard_false(i55, descr=<Guard0x7fe7c996e188>) [p1, p0, p2, p3, p6, p15, i52, i50, None, None]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
-+545: jump(p0, p1, p2, p3, p6, i52, i50, p15, i51, i30, i29, i28, descr=TargetToken(140633495989464))
-+560: --end of the loop--
-[19c475204f61] jit-log-opt-loop}
-[19c47566fb6c] {jit-backend
-[19c47596b738] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbc08 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC2488000000488B0425B07916034829E0483B0425109F0103760D49BBD6AB7FC9E77F000041FFD349BBB0E167CCE77F00004D8B3B4D8D770149BBB0E167CCE77F00004D89334C8BB5380100004D8BBE800000004D8B6E504D8B66704D0FB6968E0000004D8B4E604D8B4678498B7E58498B7668488B5E10488B5618488B4620488B4E284C89BD480100004C89AD500100004C898D580100004889BD600100004889856801000048898D7001000049BBC8E167CCE77F0000498B0B488D410149BBC8E167CCE77F00004989034983F8020F85000000004883FA017206813A180C00000F85000000004983FA000F850000000049BBF0CF0CCAE77F00004D39DC0F85000000004C8B62084981FC102700000F8D0000000049BB00000000000000804D39DC0F84000000004C89E0B9020000004889956001000048898568010000489948F7F94889D048C1FA3F41BC020000004921D44C01E04883F8000F85000000004883FB017206813B180C00000F8500000000488B43084883C0010F8000000000488B9D680100004883C3014C8B2425807816034983FC000F8C0000000049BBE0E167CCE77F00004D8B23498D54240149BBE0E167CCE77F00004989134881FB102700000F8D0000000049BB00000000000000804C39DB0F8400000000488985600100004889D8B90200000048898568010000489948F7F94889D048C1FA3FBB020000004821D34801D84883F8000F8500000000488B85600100004883C0010F8000000000488B9D680100004883C301488B1425807816034883FA000F8C00000000E957FFFFFF49BB80E996C9E77F0000415349BBF8BA7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE8F996C9E77F0000415349BB08BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB70F996C9E77F0000415349BB18BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBF8F896C9E77F0000415349BB28BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB80F896C9E77F0000415349BB38BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB08F896C9E77F0000415349BB48BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB90F796C9E77F0000415349BB58BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB18F796C9E77F0000415349BB68BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBA0F696C9E77F0000415349BB78BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB28F696C9E77F0000415349BB88BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBB0F596C9E77F0000415349BB98BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB38F596C9E77F0000415349BBA8BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBC0F496C9E77F0000415349BBB8BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB48F496C9E77F0000415349BBC8BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBD0F396C9E77F0000415349BBD8BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB58F396C9E77F0000415349BBE8BB7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE0F296C9E77F0000415349BBF8BB7FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c475978b13] jit-backend-dump}
-[19c47597933f] {jit-backend-addr
-Loop 3 (<code object bridge, file 'source.py', line 27> #15 LOAD_FAST) has address 0x7fe7c97fbc58 to 0x7fe7c97fbe77 (bootstrap 0x7fe7c97fbc08)
-[19c47597a484] jit-backend-addr}
-[19c47597acbc] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd02 +0  71010000
-[19c475989294] jit-backend-dump}
-[19c475989b43] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd14 +0  84010000
-[19c47598a8c3] jit-backend-dump}
-[19c47598ae17] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd1e +0  9F010000
-[19c47598b818] jit-backend-dump}
-[19c47598bc6c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd31 +0  B1010000
-[19c47598c665] jit-backend-dump}
-[19c47598cacb] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd42 +0  C5010000
-[19c47598d49a] jit-backend-dump}
-[19c47598d8fa] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd55 +0  D7010000
-[19c47598e2a2] jit-backend-dump}
-[19c47598e6f7] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd8d +0  C4010000
-[19c47598f0d7] jit-backend-dump}
-[19c47598f58b] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbd9f +0  D7010000
-[19c47598ff0c] jit-backend-dump}
-[19c475990358] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbdad +0  EE010000
-[19c475990cbc] jit-backend-dump}
-[19c475991353] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbdca +0  1B020000
-[19c475991cea] jit-backend-dump}
-[19c47599220b] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbdf6 +0  14020000
-[19c475992b2e] jit-backend-dump}
-[19c47599305b] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbe09 +0  26020000
-[19c475993ac7] jit-backend-dump}
-[19c475993f4b] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbe40 +0  14020000
-[19c47599496a] jit-backend-dump}
-[19c475994dad] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbe51 +0  28020000
-[19c4759956f9] jit-backend-dump}
-[19c475995c29] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbe6e +0  55020000
-[19c4759965b1] jit-backend-dump}
-[19c4759972b1] jit-backend}
-[19c475998fc1] {jit-log-opt-loop
-# Loop 3 (<code object bridge, file 'source.py', line 27> #15 LOAD_FAST) : loop with 93 ops
-[p0, p1]
-+110: p2 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
-+124: p3 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-+128: p4 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-+132: i5 = getfield_gc(p0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
-+140: p6 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+144: i7 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+148: i8 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-+152: p9 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+156: p11 = getarrayitem_gc(p9, 0, descr=<ArrayP 8>)
-+160: p13 = getarrayitem_gc(p9, 1, descr=<ArrayP 8>)
-+164: p15 = getarrayitem_gc(p9, 2, descr=<ArrayP 8>)
-+168: p17 = getarrayitem_gc(p9, 3, descr=<ArrayP 8>)
-+172: p18 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-+172: label(p0, p1, p2, p3, p4, i5, p6, i7, i8, p11, p13, p15, p17, descr=TargetToken(140633495990080))
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
-+244: guard_value(i7, 2, descr=<Guard0x7fe7c996e980>) [i7, p1, p0, p2, p3, p4, i5, p6, i8, p11, p13, p15, p17]
-+254: guard_nonnull_class(p13, ConstClass(W_IntObject), descr=<Guard0x7fe7c996f9e8>) [p1, p0, p13, p2, p3, p4, i5, p6, p11, p15, p17]
-+272: guard_value(i5, 0, descr=<Guard0x7fe7c996f970>) [i5, p1, p0, p2, p3, p4, p6, p11, p13, p17]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #18 LOAD_CONST')
-+282: guard_value(p4, ConstPtr(ptr22), descr=<Guard0x7fe7c996f8f8>) [p1, p0, p4, p2, p3, p6, p11, p13, p17]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #21 COMPARE_OP')
-+301: i23 = getfield_gc_pure(p13, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+305: i25 = int_lt(i23, 10000)
-guard_true(i25, descr=<Guard0x7fe7c996f880>) [p1, p0, p13, p2, p3, p6, p11]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #24 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #27 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #30 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #33 BINARY_MODULO')
-+318: i27 = int_eq(i23, -9223372036854775808)
-guard_false(i27, descr=<Guard0x7fe7c996f808>) [p1, p0, p13, i23, p2, p3, p6, p11]
-+337: i29 = int_mod(i23, 2)
-+364: i31 = int_rshift(i29, 63)
-+371: i32 = int_and(2, i31)
-+380: i33 = int_add(i29, i32)
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #34 POP_JUMP_IF_FALSE')
-+383: i34 = int_is_true(i33)
-guard_false(i34, descr=<Guard0x7fe7c996f790>) [p1, p0, p2, p3, p6, p11, p13, i33]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #53 LOAD_FAST')
-+393: guard_nonnull_class(p11, ConstClass(W_IntObject), descr=<Guard0x7fe7c996f718>) [p1, p0, p11, p2, p3, p6, p13, None]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #56 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #59 INPLACE_ADD')
-+411: i37 = getfield_gc_pure(p11, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+415: i39 = int_add_ovf(i37, 1)
-guard_no_overflow(descr=<Guard0x7fe7c996f6a0>) [p1, p0, p11, i39, p2, p3, p6, p13, None]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #60 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
-+425: i41 = int_add(i23, 1)
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
-+436: guard_not_invalidated(descr=<Guard0x7fe7c996f628>) [p1, p0, p2, p3, p6, i39, i41, None]
-+436: i43 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+444: i45 = int_lt(i43, 0)
-guard_false(i45, descr=<Guard0x7fe7c996f5b0>) [p1, p0, p2, p3, p6, i39, i41, None]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
-+454: label(p0, p1, p2, p3, p6, i39, i41, descr=TargetToken(140633495990168))
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #18 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #21 COMPARE_OP')
-+485: i46 = int_lt(i41, 10000)
-guard_true(i46, descr=<Guard0x7fe7c996f538>) [p1, p0, p2, p3, p6, i39, i41]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #24 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #27 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #30 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #33 BINARY_MODULO')
-+498: i47 = int_eq(i41, -9223372036854775808)
-guard_false(i47, descr=<Guard0x7fe7c996f4c0>) [p1, p0, i41, p2, p3, p6, i39, None]
-+517: i48 = int_mod(i41, 2)
-+544: i49 = int_rshift(i48, 63)
-+551: i50 = int_and(2, i49)
-+559: i51 = int_add(i48, i50)
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #34 POP_JUMP_IF_FALSE')
-+562: i52 = int_is_true(i51)
-guard_false(i52, descr=<Guard0x7fe7c996f448>) [p1, p0, p2, p3, p6, i51, i39, i41]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #53 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #56 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #59 INPLACE_ADD')
-+572: i53 = int_add_ovf(i39, 1)
-guard_no_overflow(descr=<Guard0x7fe7c996f3d0>) [p1, p0, i53, p2, p3, p6, None, i39, i41]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #60 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
-+589: i54 = int_add(i41, 1)
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
-+600: guard_not_invalidated(descr=<Guard0x7fe7c996f358>) [p1, p0, p2, p3, p6, i54, i53, None, None, None]
-+600: i55 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+608: i56 = int_lt(i55, 0)
-guard_false(i56, descr=<Guard0x7fe7c996f2e0>) [p1, p0, p2, p3, p6, i54, i53, None, None, None]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
-+618: jump(p0, p1, p2, p3, p6, i53, i54, descr=TargetToken(140633495990168))
-+623: --end of the loop--
-[19c4759ebff6] jit-log-opt-loop}
-[19c475ad90fd] {jit-backend
-[19c475b60e23] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc130 +0  48817D50FFFFFF007D2448C7442408FFFFFF0049BBF0C07FC9E77F00004C891C2449BB75A27FC9E77F000041FFD349BBF8E167CCE77F00004D8B0B498D510149BBF8E167CCE77F0000498913488B95580100004C8B4A10488B4A1848C74010000000004883F9020F85000000004D85C90F85000000004C8B8D38010000498B4968488B0425484CB601488D7820483B3C25684CB601761B49BB20C17FC9E77F00004C891C2449BBE3A97FC9E77F000041FFD348893C25484CB60148C700180C000041C6818D00000001488BBD5001000041F6410401740F415149BB2EA17FC9E77F000041FFD34989B980000000488BBD4801000041F6410401740F415149BB2EA17FC9E77F000041FFD34989795041F6410401740F415149BB2EA17FC9E77F000041FFD349BB38CF0CCAE77F00004D89597041C6818E0000000049C741600000000049C741780200000049C741582A000000F6410481741678105149BB91A17FC9E77F000041FFD379048049FF01488941104C8D481049C701180C0000488BBD6001000049897908F6410481741678105149BB91A17FC9E77F000041FFD379048049FF014C89491848C741200000000048C741280000000048C74130000000004C8960084889455848C745108042EA0149BB301068CCE77F00004C895D204889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C349BB40FC96C9E77F0000415349BB00C17FC9E77F0000415349BB00A07FC9E77F000041FFE349BB986054CCE77F0000415349BB10C17FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c475b67831] jit-backend-dump}
-[19c475b68364] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc134 +0  22000000
-[19c475b68e8f] jit-backend-dump}
-[19c475b693cb] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc13f +0  22000000
-[19c475b69e25] jit-backend-dump}
-[19c475b6a3f6] {jit-backend-addr
-bridge out of Guard 0x7fe7c996e2f0 has address 0x7fe7c97fc130 to 0x7fe7c97fc33d
-[19c475b6b2b4] jit-backend-addr}
-[19c475b6b864] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc199 +0  A0010000
-[19c475b6c292] jit-backend-dump}
-[19c475b6c766] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc1a2 +0  BC010000
-[19c475b6d09d] jit-backend-dump}
-[19c475b6d7ac] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fb851 +0  DB080000
-[19c475b6e130] jit-backend-dump}
-[19c475b6ea53] jit-backend}
-[19c475b6f6d9] {jit-log-opt-bridge
-# bridge out of Guard 0x7fe7c996e2f0 with 28 ops
-[p0, p1, p2, i3, i4, i5, p6, p7, p8, i9, i10]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #38 POP_BLOCK')
-+76: p11 = getfield_gc_pure(p8, descr=<FieldP pypy.interpreter.pyopcode.FrameBlock.inst_previous 16>)
-+87: i12 = getfield_gc_pure(p8, descr=<FieldS pypy.interpreter.pyopcode.FrameBlock.inst_valuestackdepth 24>)
-+91: setfield_gc(p2, ConstPtr(ptr13), descr=<FieldP pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
-+99: guard_value(i12, 2, descr=<Guard0x7fe7c996fc40>) [p0, p1, i12, p6, p7, p11, i10, i9]
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #39 LOAD_FAST')
-debug_merge_point(0, 0, '<code object uninlined_call. file 'source.py'. line 21> #42 RETURN_VALUE')
-+109: guard_isnull(p11, descr=<Guard0x7fe7cc546098>) [p0, p1, p11, p6, p7, i10, i9]
-+118: p15 = getfield_gc(p1, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+129: p16 = getfield_gc(p1, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-p18 = new_with_vtable(ConstClass(W_IntObject))
-+193: setfield_gc(p1, 1, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_frame_finished_execution 141>)
-setfield_gc(p1, p6, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
-setfield_gc(p1, p7, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-setfield_gc(p1, ConstPtr(ptr20), descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-+306: setfield_gc(p1, 0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
-+314: setfield_gc(p1, ConstPtr(ptr22), descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+322: setfield_gc(p1, 2, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+330: setfield_gc(p1, 42, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-setarrayitem_gc(p15, 0, p18, descr=<ArrayP 8>)
-p27 = new_with_vtable(ConstClass(W_IntObject))
-+381: setfield_gc(p27, i9, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-setarrayitem_gc(p15, 1, p27, descr=<ArrayP 8>)
-+424: setarrayitem_gc(p15, 2, ConstPtr(ptr30), descr=<ArrayP 8>)
-+432: setarrayitem_gc(p15, 3, ConstPtr(ptr32), descr=<ArrayP 8>)
-+440: setarrayitem_gc(p15, 4, ConstPtr(ptr32), descr=<ArrayP 8>)
-+448: setfield_gc(p18, i10, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+452: finish(p18, descr=<DoneWithThisFrameDescrRef object at 0x1ea4280>)
-+525: --end of the loop--
-[19c475b92846] jit-log-opt-bridge}
-[19c47608ae49] {jit-backend
-[19c47620d562] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc568 +0  48817D50FFFFFF007D2448C7442408FFFFFF0049BB88C37FC9E77F00004C891C2449BB75A27FC9E77F000041FFD349BB10E267CCE77F0000498B034C8D780149BB10E267CCE77F00004D893B4C8BBD38010000498B470849BBB00007CAE77F00004C39D80F85000000004C8B701049BB900E0CCAE77F00004D39DE0F850000000049BBC8C37FC9E77F00004C895D2041BBA05B840041FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C74520000000004C8B78504989EE4C8B68604D85ED0F85000000004C8B68404983FD000F85000000004C8B2C2500EFCE014981FDF0EED4010F85000000004C8B2C25807816034983FD000F8C000000004989ED48898570010000488B0425484CB601488DB840010000483B3C25684CB601761B49BB28C47FC9E77F00004C891C2449BBE3A97FC9E77F000041FFD348893C25484CB60148C700407E0100488DB89000000048C707C800000048C74708050000004C8D673849C70424180C00004D8D54241049C702180C00004D8D4A1049C701E82200004D8D411849C70070400000498D701848C706C800000048C7460800000000488D5E1048C703180600004C8973084C8BB57001000041F6460401740F415649BB2EA17FC9E77F000041FFD349895E50488B9538010000F6420401740E5249BB2EA17FC9E77F000041FFD34C896A1849C7442408010000004C8967104C89571849BB808554CCE77F00004D89580849C74010C01CF1014D89411049C74108010000004C894F204889786848C740780300000049BBA08554CCE77F00004C8958604C89783048C740581300000048897028C780880000001500000049BBB00007CAE77F00004C89580849BB38CF0CCAE77F00004C89587049BB60B57FC9E77F0000498B3348898578010000488B3C25484CB6014889F84801F7483B3C25684CB601761B49BB38C47FC9E77F00004C891C2449BBE3A97FC9E77F000041FFD348893C25484CB60148C7000800000049BB58B57FC9E77F0000498B334889705049BB58B57FC9E77F00004C895808488BB5780100004889B0380100004C89B04001000048899D8001000049BB204C56CCE77F00004C895D184889C749BB58C47FC9E77F00004C895D2049BB68B67FC9E77F000041FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C7452000000000488178108042EA01743E4889C7488BB57801000049BB68C47FC9E77F00004C895D2041BB908D080141FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C7452000000000EB13488B957801000048C7421800000000488B405848837D10000F850000000048833C2500E61503000F8500000000488B9570010000488B5A604885DB0F8500000000488B5A40488BB57801000048C74650000000004883FB000F8500000000488B5A504C8B7630480FB6BE8C000000F6420401740E5249BB2EA17FC9E77F000041FFD34C8972504885FF0F8500000000488BBD8001000048C74708000000008138180C00000F8500000000488B7808488B95600100004801FA0F8000000000488BBD680100004883C7010F8000000000488B0425807816034883F8000F8C0000000049BB28E267CCE77F0000498B03488D700149BB28E267CCE77F00004989334881FF102700000F8D0000000049BB00000000000000804C39DF0F84000000004889F8B9020000004889956001000048898568010000489948F7F94889D048C1FA3FBF020000004821D74801F84883F8000F8500000000488B85600100004883C0010F8000000000488BBD680100004883C701488B1425807816034883FA000F8C000000004889FB49BBCEBD7FC9E77F000041FFE349BB786254CCE77F0000415349BB98C37FC9E77F0000415349BB00A07FC9E77F000041FFE349BB587356CCE77F0000415349BBA8C37FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE07256CCE77F0000415349BBB8C37FC9E77F0000415349BB00A07FC9E77F000041FFE349BB687256CCE77F0000415349BBD8C37FC9E77F0000415349BB00A07FC9E77F000041FFE349BBF07156CCE77F0000415349BBE8C37FC9E77F0000415349BB00A07FC9E77F000041FFE349BB787156CCE77F0000415349BBF8C37FC9E77F0000415349BB00A07FC9E77F000041FFE349BB007156CCE77F0000415349BB08C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BB887056CCE77F0000415349BB18C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BB204C56CCE77F0000415349BB48C47FC9E77F0000415349BB85A07FC9E77F000041FFE349BB107056CCE77F0000415349BB78C47FC9E77F0000415349BB85A07FC9E77F000041FFE349BB986F56CCE77F0000415349BB88C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BB206F56CCE77F0000415349BB98C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BBA86E56CCE77F0000415349BBA8C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BB306E56CCE77F0000415349BBB8C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BBB86D56CCE77F0000415349BBC8C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BB406D56CCE77F0000415349BBD8C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BBC86C56CCE77F0000415349BBE8C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BB506C56CCE77F0000415349BBF8C47FC9E77F0000415349BB00A07FC9E77F000041FFE349BBD86B56CCE77F0000415349BB08C57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB606B56CCE77F0000415349BB18C57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE86A56CCE77F0000415349BB28C57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB706A56CCE77F0000415349BB38C57FC9E77F0000415349BB00A07FC9E77F000041FFE349BBF86956CCE77F0000415349BB48C57FC9E77F0000415349BB00A07FC9E77F000041FFE349BB806956CCE77F0000415349BB58C57FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c4762283c4] jit-backend-dump}
-[19c476229554] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc56c +0  26000000
-[19c47622a4ac] jit-backend-dump}
-[19c47622a9be] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc577 +0  26000000
-[19c47622b445] jit-backend-dump}
-[19c47622b967] {jit-backend-addr
-bridge out of Guard 0x7fe7c996f448 has address 0x7fe7c97fc568 to 0x7fe7c97fca92
-[19c47622c725] jit-backend-addr}
-[19c47622ce57] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc5ce +0  C0040000
-[19c47622d7fc] jit-backend-dump}
-[19c47622ddfa] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc5e5 +0  CE040000
-[19c47622e73d] jit-backend-dump}
-[19c47622ed4f] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc62b +0  D2040000
-[19c47622f6b6] jit-backend-dump}
-[19c47622faf5] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc639 +0  E9040000
-[19c4762303fd] jit-backend-dump}
-[19c476230872] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc64e +0  1E050000
-[19c476231192] jit-backend-dump}
-[19c4762315d1] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc660 +0  31050000
-[19c476231eb5] jit-backend-dump}
-[19c4762322c8] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc918 +0  9E020000
-[19c476232b8c] jit-backend-dump}
-[19c476232fec] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc927 +0  B4020000
-[19c476233926] jit-backend-dump}
-[19c476233d6c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc93b +0  C5020000
-[19c476236834] jit-backend-dump}
-[19c476236d7c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc958 +0  CD020000
-[19c47623773c] jit-backend-dump}
-[19c476237b4c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc989 +0  C1020000
-[19c476238442] jit-backend-dump}
-[19c476238835] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc9a4 +0  CB020000
-[19c476239131] jit-backend-dump}
-[19c476239535] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc9b8 +0  DC020000
-[19c476239e16] jit-backend-dump}
-[19c47623a220] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc9c9 +0  F0020000
-[19c47623aae9] jit-backend-dump}
-[19c47623b4a3] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc9db +0  28030000
-[19c47623bddb] jit-backend-dump}
-[19c47623c1eb] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fca06 +0  22030000
-[19c47623ca8a] jit-backend-dump}
-[19c47623ce89] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fca19 +0  34030000
-[19c47623d73a] jit-backend-dump}
-[19c47623db4a] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fca50 +0  22030000
-[19c47623e458] jit-backend-dump}
-[19c47623e859] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fca61 +0  36030000
-[19c47623f149] jit-backend-dump}
-[19c47623f5ac] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fca7e +0  63030000
-[19c47623fe90] jit-backend-dump}
-[19c4762406c8] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbe40 +0  24070000
-[19c476240faf] jit-backend-dump}
-[19c476241c2f] jit-backend}
-[19c476242fb5] {jit-log-opt-bridge
-# bridge out of Guard 0x7fe7c996f448 with 137 ops
-[p0, p1, p2, p3, p4, i5, i6, i7]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #37 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #40 LOAD_GLOBAL')
-+76: p8 = getfield_gc(p1, descr=<FieldP pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+87: guard_value(p8, ConstPtr(ptr9), descr=<Guard0x7fe7cc546278>) [p0, p1, p8, p2, p3, p4, i6, i7]
-+106: p10 = getfield_gc(p8, descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
-+110: guard_value(p10, ConstPtr(ptr11), descr=<Guard0x7fe7cc567358>) [p0, p1, p10, p8, p2, p3, p4, i6, i7]
-+129: guard_not_invalidated(descr=<Guard0x7fe7cc5672e0>) [p0, p1, p8, p2, p3, p4, i6, i7]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #43 CALL_FUNCTION')
-+129: p13 = call(ConstClass(getexecutioncontext), descr=<Callr 8 EF=1>)
-+179: p14 = getfield_gc(p13, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 80>)
-+183: p15 = force_token()
-+186: p16 = getfield_gc(p13, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 96>)
-+190: guard_isnull(p16, descr=<Guard0x7fe7cc567268>) [p0, p1, p13, p16, p2, p3, p4, p14, p15, i6, i7]
-+199: i17 = getfield_gc(p13, descr=<FieldU pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 64>)
-+203: i18 = int_is_zero(i17)
-guard_true(i18, descr=<Guard0x7fe7cc5671f0>) [p0, p1, p13, p2, p3, p4, p14, p15, i6, i7]
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #0 LOAD_CONST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #3 STORE_FAST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #6 SETUP_LOOP')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #9 LOAD_GLOBAL')
-+213: guard_not_invalidated(descr=<Guard0x7fe7cc567178>) [p0, p1, p13, p2, p3, p4, p14, p15, i6, i7]
-+213: p20 = getfield_gc(ConstPtr(ptr19), descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
-+221: guard_value(p20, ConstPtr(ptr21), descr=<Guard0x7fe7cc567100>) [p0, p1, p13, p20, p2, p3, p4, p14, p15, i6, i7]
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #12 LOAD_CONST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #15 CALL_FUNCTION')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #18 GET_ITER')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #22 STORE_FAST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #25 LOAD_FAST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #28 LOAD_CONST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #31 INPLACE_ADD')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #32 STORE_FAST')
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #35 JUMP_ABSOLUTE')
-+234: i23 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+242: i25 = int_lt(i23, 0)
-guard_false(i25, descr=<Guard0x7fe7cc567088>) [p0, p1, p13, p2, p3, p4, p14, p15, i6, i7]
-debug_merge_point(1, 1, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
-+252: p26 = force_token()
-p28 = new_with_vtable(26266048)
-p30 = new_array(5, descr=<ArrayP 8>)
-p32 = new_with_vtable(ConstClass(W_IntObject))
-p34 = new_with_vtable(ConstClass(W_IntObject))
-p36 = new_with_vtable(26177128)
-p38 = new_with_vtable(ConstClass(W_ListObject))
-p40 = new_array(0, descr=<ArrayP 8>)
-p42 = new_with_vtable(26169752)
-+427: setfield_gc(p42, p15, descr=<FieldP JitVirtualRef.virtual_token 8>)
-setfield_gc(p13, p42, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 80>)
-setfield_gc(p1, p26, descr=<FieldP pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+495: setfield_gc(p32, 1, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+504: setarrayitem_gc(p30, 0, p32, descr=<ArrayP 8>)
-+508: setarrayitem_gc(p30, 1, p34, descr=<ArrayP 8>)
-+512: setfield_gc(p38, ConstPtr(ptr46), descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
-+526: setfield_gc(p38, ConstPtr(ptr47), descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
-+534: setfield_gc(p36, p38, descr=<FieldP pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
-+538: setfield_gc(p36, 1, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+546: setarrayitem_gc(p30, 2, p36, descr=<ArrayP 8>)
-+550: setfield_gc(p28, p30, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+554: setfield_gc(p28, 3, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+562: setfield_gc(p28, ConstPtr(ptr51), descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+576: setfield_gc(p28, p14, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_f_backref 48>)
-+580: setfield_gc(p28, 19, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-+588: setfield_gc(p28, p40, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-+592: setfield_gc(p28, 21, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_f_lineno 136>)
-+602: setfield_gc(p28, ConstPtr(ptr9), descr=<FieldP pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+616: setfield_gc(p28, ConstPtr(ptr54), descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-p55 = call_assembler(p28, p13, descr=<Loop2>)
-guard_not_forced(descr=<Guard0x7fe7cc564c20>) [p0, p1, p13, p28, p55, p42, p2, p3, p4, i6, i7]
-+948: keepalive(p28)
-+948: guard_no_exception(descr=<Guard0x7fe7cc567010>) [p0, p1, p13, p28, p55, p42, p2, p3, p4, i6, i7]
-+963: p56 = getfield_gc(p13, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 96>)
-+974: guard_isnull(p56, descr=<Guard0x7fe7cc566f98>) [p0, p1, p55, p13, p28, p56, p42, p2, p3, p4, i6, i7]
-+983: i57 = getfield_gc(p13, descr=<FieldU pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 64>)
-+987: setfield_gc(p28, ConstPtr(ptr58), descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-+1002: i59 = int_is_true(i57)
-guard_false(i59, descr=<Guard0x7fe7cc566f20>) [p0, p1, p55, p28, p13, p42, p2, p3, p4, i6, i7]
-+1012: p60 = getfield_gc(p13, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 80>)
-+1016: p61 = getfield_gc(p28, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_f_backref 48>)
-+1020: i62 = getfield_gc(p28, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_escaped 140>)
-setfield_gc(p13, p61, descr=<FieldP pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 80>)
-+1052: guard_false(i62, descr=<Guard0x7fe7cc566ea8>) [p0, p1, p55, p60, p28, p13, p42, p2, p3, p4, i6, i7]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #46 INPLACE_ADD')
-+1061: setfield_gc(p42, ConstPtr(ptr63), descr=<FieldP JitVirtualRef.virtual_token 8>)
-+1076: guard_class(p55, ConstClass(W_IntObject), descr=<Guard0x7fe7cc566e30>) [p0, p1, p55, p2, p3, p4, i6, i7]
-+1088: i65 = getfield_gc_pure(p55, descr=<FieldS pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+1092: i66 = int_add_ovf(i6, i65)
-guard_no_overflow(descr=<Guard0x7fe7cc566db8>) [p0, p1, p55, i66, p2, p3, p4, i6, i7]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #47 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #50 JUMP_FORWARD')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
-+1108: i68 = int_add_ovf(i7, 1)
-guard_no_overflow(descr=<Guard0x7fe7cc566d40>) [p0, p1, i68, p2, p3, p4, i66, None, i7]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
-+1125: guard_not_invalidated(descr=<Guard0x7fe7cc566cc8>) [p0, p1, p2, p3, p4, i68, i66, None, None]
-+1125: i71 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+1133: i73 = int_lt(i71, 0)
-guard_false(i73, descr=<Guard0x7fe7cc566c50>) [p0, p1, p2, p3, p4, i68, i66, None, None]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
-+1143: label(p1, p0, p2, p3, p4, i66, i68, descr=TargetToken(140633495991488))
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #18 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #21 COMPARE_OP')
-+1173: i75 = int_lt(i68, 10000)
-guard_true(i75, descr=<Guard0x7fe7cc566bd8>) [p0, p1, p2, p3, p4, i66, i68]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #24 POP_JUMP_IF_FALSE')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #27 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #30 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #33 BINARY_MODULO')
-+1186: i77 = int_eq(i68, -9223372036854775808)
-guard_false(i77, descr=<Guard0x7fe7cc566b60>) [p0, p1, i68, p2, p3, p4, i66, None]
-+1205: i79 = int_mod(i68, 2)
-+1232: i81 = int_rshift(i79, 63)
-+1239: i82 = int_and(2, i81)
-+1247: i83 = int_add(i79, i82)
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #34 POP_JUMP_IF_FALSE')
-+1250: i84 = int_is_true(i83)
-guard_false(i84, descr=<Guard0x7fe7cc566ae8>) [p0, p1, p2, p3, p4, i83, i66, i68]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #53 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #56 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #59 INPLACE_ADD')
-+1260: i86 = int_add_ovf(i66, 1)
-guard_no_overflow(descr=<Guard0x7fe7cc566a70>) [p0, p1, i86, p2, p3, p4, None, i66, i68]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #60 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
-+1277: i88 = int_add(i68, 1)
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
-+1288: guard_not_invalidated(descr=<Guard0x7fe7cc5669f8>) [p0, p1, p2, p3, p4, i86, i88, None, None, None]
-+1288: i90 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+1296: i92 = int_lt(i90, 0)
-guard_false(i92, descr=<Guard0x7fe7cc566980>) [p0, p1, p2, p3, p4, i86, i88, None, None, None]
-debug_merge_point(0, 0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
-+1306: jump(p1, p0, p2, p3, p4, i86, i88, descr=TargetToken(140633495990168))
-+1322: --end of the loop--
-[19c4762c0a61] jit-log-opt-bridge}
-[19c476497d1a] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbdbc +0  E903020000
-[19c47649be73] jit-backend-dump}
-[19c47649c3b8] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fbe60 +0  E93D020000
-[19c47649ce6f] jit-backend-dump}
-[19c47649d42e] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc5e9 +0  E9EE040000
-[19c47649e0fb] jit-backend-dump}
-[19c47649e5b2] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc63d +0  E909050000
-[19c47649efa7] jit-backend-dump}
-[19c47649f437] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fc9cd +0  E910030000
-[19c47649fddf] jit-backend-dump}
-[19c4764a029c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fca70 +0  E94B030000
-[19c4764a0c44] jit-backend-dump}
-[19c476926513] {jit-backend
-[19c4769db8ef] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fcfb0 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC2488000000488B0425B07916034829E0483B0425109F0103760D49BBD6AB7FC9E77F000041FFD349BB40E267CCE77F00004D8B3B4D8D770149BB40E267CCE77F00004D89334C8BB5380100004D8BBE800000004D8B6E504D8B66704D0FB6968E0000004D8B4E604D8B4678498B7E58498B7668488B5E10488B5618488B4620488B4E2848899548010000488B563048899550010000488B563848898D58010000488B4E404C89BD600100004C8B7E484C89AD680100004C898D700100004889BD7801000048899D80010000488985880100004889959001000048898D980100004C89BDA001000049BB58E267CCE77F00004D8B3B498D4F0149BB58E267CCE77F000049890B4983F8050F85000000004C8B8550010000418138E82200000F8500000000498B48104885C90F84000000004D8B7808488B5110813A685505000F8500000000488B5108488B4A08488B4210488B5A184983FF000F8C000000004939DF0F8D000000004C89FA4C0FAFF84889CF4C01F94C8D7A014D8978084983FA000F850000000049BBA8D00CCAE77F00004D39DC0F85000000004D8B660849BBB00007CAE77F00004D39DC0F85000000004D8B54241049BB900E0CCAE77F00004D39DA0F85000000004C8B242500EFCE014981FCF0EED4010F8500000000488985380100004C89B5780100004889BD8001000048898D900100004889CF49BBE0CE7FC9E77F00004C895D2041BB5050250141FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C745200000000048833C2500E61503000F8500000000488B8D580100004C8B4110418138489303000F85000000004C8B4108498B78084C8D7701488985980100004C8985A80100004889BDB00100004C89C74C89F649BB10CF7FC9E77F00004C895D2041BBB05F730041FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C745200000000048833C2500E61503000F8500000000488BBDA80100004C8B4710488B85B00100004C8BB59801000041F640048174227811415049BB91A17FC9E77F000041FFD3790F4989C349C1EB074983F3F84D0FAB184D8974C0104C8B3425807816034983FE000F8C0000000049BB70E267CCE77F00004D8B33498D460149BB70E267CCE77F00004989034939DF0F8D000000004C89F84C0FAFBD380100004C8BB5800100004D01FE4C8D7801488B85500100004C8978084889BD900100004C89F749BB60CF7FC9E77F00004C895D2041BB5050250141FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C745200000000048833C2500E61503000F8500000000488BBD900100004C8B4708498D4801488985980100004C8985A80100004889CE49BB80CF7FC9E77F00004C895D2041BBB05F730041FFD3F6450401740D49BBFDA17FC9E77F000041FFD348C745200000000048833C2500E61503000F8500000000488BBD90010000488B4F104C8B85A8010000488B8598010000F6410481742178105149BB91A17FC9E77F000041FFD3790F4D89C349C1EB074983F3F84C0FAB194A8944C110488B0425807816034883F8000F8C000000004C89B590010000E9A6FEFFFF49BBF8D857CCE77F0000415349BB20CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB10D057CCE77F0000415349BB30CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB88D057CCE77F0000415349BB40CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB98CF57CCE77F0000415349BB50CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB80D857CCE77F0000415349BB60CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB08D857CCE77F0000415349BB70CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB90D757CCE77F0000415349BB80CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBA0D657CCE77F0000415349BB90CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBB0D557CCE77F0000415349BBA0CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB38D557CCE77F0000415349BBB0CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB48D457CCE77F0000415349BBC0CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB58D357CCE77F0000415349BBD0CE7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBE0D257CCE77F0000415349BBF0CE7FC9E77F0000415349BB85A07FC9E77F000041FFE349BB00D157CCE77F0000415349BB00CF7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB68D257CCE77F0000415349BB20CF7FC9E77F0000415349BB85A07FC9E77F000041FFE349BBF0D157CCE77F0000415349BB30CF7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB50CC57CCE77F0000415349BB40CF7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB08C957CCE77F0000415349BB50CF7FC9E77F0000415349BB00A07FC9E77F000041FFE349BBD07356CCE77F0000415349BB70CF7FC9E77F0000415349BB85A07FC9E77F000041FFE349BBE8D957CCE77F0000415349BB90CF7FC9E77F0000415349BB85A07FC9E77F000041FFE349BB60DA57CCE77F0000415349BBA0CF7FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c4769f7c0c] jit-backend-dump}
-[19c4769f86fe] {jit-backend-addr
-Loop 4 (<code object inlined_str_stuff, file 'source.py', line 40> #13 FOR_ITER) has address 0x7fe7c97fd000 to 0x7fe7c97fd449 (bootstrap 0x7fe7c97fcfb0)
-[19c4769f9afa] jit-backend-addr}
-[19c4769fa4b7] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd0e4 +0  61030000
-[19c4769fb2d8] jit-backend-dump}
-[19c4769fb916] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd0f8 +0  72030000
-[19c4769fc368] jit-backend-dump}
-[19c4769fc7d1] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd105 +0  8A030000
-[19c4769fd141] jit-backend-dump}
-[19c4769fd58f] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd119 +0  9B030000
-[19c4769fdf05] jit-backend-dump}
-[19c4769fe36b] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd133 +0  A6030000
-[19c4769fec55] jit-backend-dump}
-[19c4769ff071] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd13c +0  C2030000
-[19c4769ff94f] jit-backend-dump}
-[19c4769ffd80] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd15b +0  C8030000
-[19c476a006ea] jit-backend-dump}
-[19c476a00b26] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd16e +0  DA030000
-[19c476a01413] jit-backend-dump}
-[19c476a0183b] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd185 +0  E8030000
-[19c476a0210a] jit-backend-dump}
-[19c476a02535] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd19d +0  F5030000
-[19c476a02dba] jit-backend-dump}
-[19c476a0345e] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd1b2 +0  2A040000
-[19c476a03d83] jit-backend-dump}
-[19c476a041c6] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd212 +0  EF030000
-[19c476a04af7] jit-backend-dump}
-[19c476a04fe6] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd22a +0  FC030000
-[19c476a058d0] jit-backend-dump}
-[19c476a05cf8] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd292 +0  B9030000
-[19c476a06592] jit-backend-dump}
-[19c476a069d4] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd2eb +0  85030000
-[19c476a096d4] jit-backend-dump}
-[19c476a09f21] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd312 +0  83030000
-[19c476a0a999] jit-backend-dump}
-[19c476a0aeb2] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd381 +0  5E030000
-[19c476a0b824] jit-backend-dump}
-[19c476a0bc29] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd3e2 +0  22030000
-[19c476a0c4e6] jit-backend-dump}
-[19c476a0c908] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd439 +0  F0020000
-[19c476a0d199] jit-backend-dump}
-[19c476a0dc73] jit-backend}
-[19c476a0eef1] {jit-log-opt-loop
-# Loop 4 (<code object inlined_str_stuff, file 'source.py', line 40> #13 FOR_ITER) : loop with 101 ops
-[p0, p1]
-+110: p2 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_w_f_trace 128>)
-+124: p3 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
-+128: p4 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_pycode 112>)
-+132: i5 = getfield_gc(p0, descr=<FieldU pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 142>)
-+140: p6 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
-+144: i7 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 120>)
-+148: i8 = getfield_gc(p0, descr=<FieldS pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
-+152: p9 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
-+156: p11 = getarrayitem_gc(p9, 0, descr=<ArrayP 8>)
-+160: p13 = getarrayitem_gc(p9, 1, descr=<ArrayP 8>)
-+164: p15 = getarrayitem_gc(p9, 2, descr=<ArrayP 8>)
-+168: p17 = getarrayitem_gc(p9, 3, descr=<ArrayP 8>)
-+172: p19 = getarrayitem_gc(p9, 4, descr=<ArrayP 8>)
-+183: p21 = getarrayitem_gc(p9, 5, descr=<ArrayP 8>)
-+194: p23 = getarrayitem_gc(p9, 6, descr=<ArrayP 8>)
-+205: p25 = getarrayitem_gc(p9, 7, descr=<ArrayP 8>)
-+216: p26 = getfield_gc(p0, descr=<FieldP pypy.interpreter.pyframe.PyFrame.inst_cells 40>)
-+216: label(p0, p1, p2, p3, p4, i5, p6, i7, i8, p11, p13, p15, p17, p19, p21, p23, p25, descr=TargetToken(140633495992456))
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
-+302: guard_value(i7, 5, descr=<Guard0x7fe7cc57d8f8>) [i7, p1, p0, p2, p3, p4, i5, p6, i8, p11, p13, p15, p17, p19, p21, p23, p25]
-+312: guard_class(p19, 26177128, descr=<Guard0x7fe7cc57d010>) [p1, p0, p19, p2, p3, p4, i5, p6, p11, p13, p15, p17, p21, p23, p25]
-+332: p29 = getfield_gc(p19, descr=<FieldP pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
-+336: guard_nonnull(p29, descr=<Guard0x7fe7cc57d088>) [p1, p0, p19, p29, p2, p3, p4, i5, p6, p11, p13, p15, p17, p21, p23, p25]
-+345: i30 = getfield_gc(p19, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+349: p31 = getfield_gc(p29, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
-+353: guard_class(p31, 26517736, descr=<Guard0x7fe7cc57cf98>) [p1, p0, p19, i30, p31, p29, p2, p3, p4, i5, p6, p11, p13, p15, p17, p21, p23, p25]
-+365: p33 = getfield_gc(p29, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
-+369: i34 = getfield_gc_pure(p33, descr=<FieldS tuple3.item0 8>)
-+373: i35 = getfield_gc_pure(p33, descr=<FieldS tuple3.item1 16>)
-+377: i36 = getfield_gc_pure(p33, descr=<FieldS tuple3.item2 24>)
-+381: i38 = int_lt(i30, 0)
-guard_false(i38, descr=<Guard0x7fe7cc57d880>) [p1, p0, p19, i30, i36, i35, i34, p2, p3, p4, i5, p6, p11, p13, p15, p17, p21, p23, p25]
-+391: i39 = int_ge(i30, i36)
-guard_false(i39, descr=<Guard0x7fe7cc57d808>) [p1, p0, p19, i30, i35, i34, p2, p3, p4, i5, p6, p11, p13, p15, p17, p21, p23, p25]
-+400: i40 = int_mul(i30, i35)
-+407: i41 = int_add(i34, i40)
-+413: i43 = int_add(i30, 1)
-+417: setfield_gc(p19, i43, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+421: guard_value(i5, 0, descr=<Guard0x7fe7cc57d790>) [i5, p1, p0, p2, p3, p4, p6, p11, p13, p15, p17, p19, p23, p25, i41]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #16 STORE_FAST')
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #19 LOAD_GLOBAL')
-+431: guard_value(p4, ConstPtr(ptr45), descr=<Guard0x7fe7cc57d6a0>) [p1, p0, p4, p2, p3, p6, p13, p15, p17, p19, p23, p25, i41]
-+450: p46 = getfield_gc(p0, descr=<FieldP pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+454: guard_value(p46, ConstPtr(ptr47), descr=<Guard0x7fe7cc57d5b0>) [p1, p0, p46, p2, p3, p6, p13, p15, p17, p19, p23, p25, i41]
-+473: p48 = getfield_gc(p46, descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
-+478: guard_value(p48, ConstPtr(ptr49), descr=<Guard0x7fe7cc57d538>) [p1, p0, p48, p46, p2, p3, p6, p13, p15, p17, p19, p23, p25, i41]
-+497: guard_not_invalidated(descr=<Guard0x7fe7cc57d448>) [p1, p0, p46, p2, p3, p6, p13, p15, p17, p19, p23, p25, i41]
-+497: p51 = getfield_gc(ConstPtr(ptr50), descr=<FieldP pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
-+505: guard_value(p51, ConstPtr(ptr52), descr=<Guard0x7fe7cc57d358>) [p1, p0, p51, p2, p3, p6, p13, p15, p17, p19, p23, p25, i41]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #22 LOAD_FAST')
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #25 CALL_FUNCTION')
-+518: p54 = call(ConstClass(ll_int_str__IntegerR_SignedConst_Signed), i41, descr=<Callr 8 i EF=3>)
-+599: guard_no_exception(descr=<Guard0x7fe7cc57d2e0>) [p1, p0, p54, p2, p3, p6, p13, p15, p17, p19, p25, i41]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #28 LIST_APPEND')
-+614: p55 = getfield_gc(p17, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_strategy 16>)
-+625: guard_class(p55, 26402504, descr=<Guard0x7fe7cc57d100>) [p1, p0, p55, p17, p2, p3, p6, p13, p15, p19, p25, p54, i41]
-+638: p57 = getfield_gc(p17, descr=<FieldP pypy.objspace.std.listobject.W_ListObject.inst_lstorage 8>)
-+642: i58 = getfield_gc(p57, descr=<FieldS list.length 8>)
-+646: i60 = int_add(i58, 1)
-+650: p61 = getfield_gc(p57, descr=<FieldP list.items 16>)
-+650: i62 = arraylen_gc(p61, descr=<ArrayP 8>)
-+650: call(ConstClass(_ll_list_resize_ge_trampoline__v1053___simple_call__function_), p57, i60, descr=<Callv 0 ri EF=4>)
-+727: guard_no_exception(descr=<Guard0x7fe7cc57d268>) [p1, p0, i58, p54, p57, p2, p3, p6, p13, p15, p17, p19, p25, None, i41]
-+742: p65 = getfield_gc(p57, descr=<FieldP list.items 16>)
-setarrayitem_gc(p65, i58, p54, descr=<ArrayP 8>)
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #31 JUMP_ABSOLUTE')
-+813: i67 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+821: i69 = int_lt(i67, 0)
-guard_false(i69, descr=<Guard0x7fe7cc57d1f0>) [p1, p0, p2, p3, p6, p13, p15, p17, p19, p25, None, i41]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
-+831: p70 = same_as(ConstPtr(ptr49))
-+831: label(p0, p1, p2, p3, p6, i41, p13, p15, p17, p19, p25, i43, i36, i35, i34, p57, descr=TargetToken(140633495992368))
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
-+861: i71 = int_ge(i43, i36)
-guard_false(i71, descr=<Guard0x7fe7cc57cc50>) [p1, p0, p19, i43, i35, i34, p2, p3, p6, p13, p15, p17, p25, i41]
-+870: i72 = int_mul(i43, i35)
-+881: i73 = int_add(i34, i72)
-+891: i74 = int_add(i43, 1)
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #16 STORE_FAST')
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #19 LOAD_GLOBAL')
-+895: setfield_gc(p19, i74, descr=<FieldS pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+906: guard_not_invalidated(descr=<Guard0x7fe7cc57c908>) [p1, p0, p2, p3, p6, p13, p15, p17, p19, p25, i73, None]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #22 LOAD_FAST')
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #25 CALL_FUNCTION')
-+906: p75 = call(ConstClass(ll_int_str__IntegerR_SignedConst_Signed), i73, descr=<Callr 8 i EF=3>)
-+966: guard_no_exception(descr=<Guard0x7fe7cc5673d0>) [p1, p0, p75, p2, p3, p6, p13, p15, p17, p19, p25, i73, None]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #28 LIST_APPEND')
-+981: i76 = getfield_gc(p57, descr=<FieldS list.length 8>)
-+992: i77 = int_add(i76, 1)
-+996: p78 = getfield_gc(p57, descr=<FieldP list.items 16>)
-+996: i79 = arraylen_gc(p78, descr=<ArrayP 8>)
-+996: call(ConstClass(_ll_list_resize_ge_trampoline__v1053___simple_call__function_), p57, i77, descr=<Callv 0 ri EF=4>)
-+1063: guard_no_exception(descr=<Guard0x7fe7cc57d9e8>) [p1, p0, i76, p75, p57, p2, p3, p6, p13, p15, p17, p19, p25, i73, None]
-+1078: p80 = getfield_gc(p57, descr=<FieldP list.items 16>)
-setarrayitem_gc(p80, i76, p75, descr=<ArrayP 8>)
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #31 JUMP_ABSOLUTE')
-+1147: i81 = getfield_raw(51804288, descr=<FieldS pypysig_long_struct.c_value 0>)
-+1155: i82 = int_lt(i81, 0)
-guard_false(i82, descr=<Guard0x7fe7cc57da60>) [p1, p0, p2, p3, p6, p13, p15, p17, p19, p25, i73, None]
-debug_merge_point(0, 0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
-+1165: jump(p0, p1, p2, p3, p6, i73, p13, p15, p17, p19, p25, i74, i36, i35, i34, p57, descr=TargetToken(140633495992368))
-+1177: --end of the loop--
-[19c476a8c8cf] jit-log-opt-loop}
-[19c476f1a146] {jit-backend
-[19c476fb0eb9] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd778 +0  4881EC9800000048896C24604889FD48895C24684C896424704C896C24784C89B424800000004C89BC2488000000488B0425B07916034829E0483B0425109F0103760D49BBD6AB7FC9E77F000041FFD349BB88E267CCE77F00004D8B3B4D8D770149BB88E267CCE77F00004D89334C8BB5400100004D8B7E404C8BAD380100004F0FB6642F184983FC330F85000000004D8D65014D89661849C74620000000004D896E2848C745580100000048C7451000C6FA0148C74520000000004889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C349BBF00259CCE77F0000415349BB68D77FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c476fb8acd] jit-backend-dump}
-[19c476fb9501] {jit-backend-addr
-Loop 5 (re StrLiteralSearch at 11/51 [17, 8, 3, 1, 1, 1, 1, 51, 0, 19, 51, 1]) has address 0x7fe7c97fd7c8 to 0x7fe7c97fd863 (bootstrap 0x7fe7c97fd778)
-[19c476fbab8f] jit-backend-addr}
-[19c476fbb7bf] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd804 +0  5B000000
-[19c476fbc83d] jit-backend-dump}
-[19c476fbd4b4] jit-backend}
-[19c476fbec53] {jit-log-opt-loop
-# Loop 5 (re StrLiteralSearch at 11/51 [17, 8, 3, 1, 1, 1, 1, 51, 0, 19, 51, 1]) : entry bridge with 10 ops
-[i0, p1]
-debug_merge_point(0, 0, 're StrLiteralSearch at 11/51 [17. 8. 3. 1. 1. 1. 1. 51. 0. 19. 51. 1]')
-+110: p2 = getfield_gc_pure(p1, descr=<FieldP rpython.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
-+121: i3 = strgetitem(p2, i0)
-+134: i5 = int_eq(i3, 51)
-guard_true(i5, descr=<Guard0x7fe7cc5902f0>) [i0, p1]
-+144: i7 = int_add(i0, 1)
-+148: setfield_gc(p1, i7, descr=<FieldS rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_end 24>)
-+152: setfield_gc(p1, ConstPtr(ptr8), descr=<FieldP rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_marks 32>)
-+160: setfield_gc(p1, i0, descr=<FieldS rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start 40>)
-+164: finish(1, descr=<DoneWithThisFrameDescrInt object at 0x1fac600>)
-+235: --end of the loop--
-[19c476fd6fb4] jit-log-opt-loop}
-[19c477229d40] {jit-backend
-[19c47726a154] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd8c8 +0  48817D50FFFFFF007D2448C7442408FFFFFF0049BB88D87FC9E77F00004C891C2449BB75A27FC9E77F000041FFD349BBA0E267CCE77F00004D8B3B4D8D670149BBA0E267CCE77F00004D89234D8D65014D8B6E084D39EC0F8D000000004D8B7E404F0FB65427184983FA330F84000000004D8D5424014D39EA0F8C0000000048C745580000000048C7451000C6FA0148C74520000000004889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C349BB800959CCE77F0000415349BB98D87FC9E77F0000415349BB00A07FC9E77F000041FFE349BBD80B59CCE77F0000415349BBA8D87FC9E77F0000415349BB00A07FC9E77F000041FFE349BB600B59CCE77F0000415349BBB8D87FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c47727826a] jit-backend-dump}
-[19c477278fc6] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd8cc +0  1C000000
-[19c477279d40] jit-backend-dump}
-[19c47727a217] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd8d7 +0  1C000000
-[19c47727ab6f] jit-backend-dump}
-[19c47727b0b4] {jit-backend-addr
-bridge out of Guard 0x7fe7cc5902f0 has address 0x7fe7c97fd8c8 to 0x7fe7c97fd98e
-[19c47727be22] jit-backend-addr}
-[19c47727c513] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd921 +0  69000000
-[19c47727ce56] jit-backend-dump}
-[19c47727d5d9] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd935 +0  7A000000
-[19c47727deef] jit-backend-dump}
-[19c47727e32c] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd943 +0  91000000
-[19c47727ec22] jit-backend-dump}
-[19c47727f5b2] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fd804 +0  C0000000
-[19c47727fecc] jit-backend-dump}
-[19c477280917] jit-backend}
-[19c4772814a7] {jit-log-opt-bridge
-# bridge out of Guard 0x7fe7cc5902f0 with 13 ops
-[i0, p1]
-+76: i3 = int_add(i0, 1)
-+80: i4 = getfield_gc_pure(p1, descr=<FieldS rpython.rlib.rsre.rsre_core.AbstractMatchContext.inst_end 8>)
-+84: i5 = int_lt(i3, i4)
-guard_true(i5, descr=<Guard0x7fe7cc590980>) [i3, p1]
-debug_merge_point(0, 0, 're StrLiteralSearch at 11/51 [17. 8. 3. 1. 1. 1. 1. 51. 0. 19. 51. 1]')
-+93: p6 = getfield_gc_pure(p1, descr=<FieldP rpython.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
-+97: i7 = strgetitem(p6, i3)
-+103: i9 = int_eq(i7, 51)
-guard_false(i9, descr=<Guard0x7fe7cc590bd8>) [i3, p1]
-+113: i11 = int_add(i3, 1)
-+118: i12 = int_lt(i11, i4)
-guard_false(i12, descr=<Guard0x7fe7cc590b60>) [i11, p1]
-+127: finish(0, descr=<DoneWithThisFrameDescrInt object at 0x1fac600>)
-+198: --end of the loop--
-[19c47728e83a] jit-log-opt-bridge}
-[19c4775d7810] {jit-backend
-[19c47760e455] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fda30 +0  48817D50FFFFFF007D2448C7442408FFFFFF0049BB00DA7FC9E77F00004C891C2449BB75A27FC9E77F000041FFD349BBB8E267CCE77F00004D8B3B4D8D6F0149BBB8E267CCE77F00004D892B4D8B6E404F0FB67C15184983FF330F84000000004D8D7A014D8B56084D39D70F8C0000000048C745580000000048C7451000C6FA0148C74520000000004889E84C8BBC24880000004C8BB424800000004C8B6C24784C8B642470488B5C2468488B6C24604881C498000000C349BBC80C59CCE77F0000415349BB10DA7FC9E77F0000415349BB00A07FC9E77F000041FFE349BB300E59CCE77F0000415349BB20DA7FC9E77F0000415349BB00A07FC9E77F000041FFE3
-[19c4776123ca] jit-backend-dump}
-[19c477612cb4] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fda34 +0  1C000000
-[19c47761382f] jit-backend-dump}
-[19c477613ce8] {jit-backend-dump
-BACKEND x86_64
-SYS_EXECUTABLE python
-CODE_DUMP @7fe7c97fda3f +0  1C000000
-[19c477614643] jit-backend-dump}
-[19c477614b8b] {jit-backend-addr
-bridge out of Guard 0x7fe7cc590b60 has address 0x7fe7c97fda30 to 0x7fe7c97fdae8
-[19c477615712] jit-backend-addr}


More information about the pypy-commit mailing list