[pypy-commit] jitviewer default: improve demos and escape the descr

fijal noreply at buildbot.pypy.org
Fri Jul 22 11:36:51 CEST 2011


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: 
Changeset: r153:df44fc655ba2
Date: 2011-07-22 11:34 +0200
http://bitbucket.org/pypy/jitviewer/changeset/df44fc655ba2/

Log:	improve demos and escape the descr

diff --git a/_jitviewer/parser.py b/_jitviewer/parser.py
--- a/_jitviewer/parser.py
+++ b/_jitviewer/parser.py
@@ -34,12 +34,16 @@
     Subclass of Op with human-friendly html representation
     """
 
+    def html_class(self):
+        if self.is_guard():
+            return "single-operation guard"
+        elif 'call' in self.name:
+            return "single-operation call"
+        else:
+            return "single-operation"
+
     def html_repr(self):
         s = getattr(self, 'repr_' + self.name, self.repr)()
-        if self.is_guard():
-            s = '<span class="guard">guard</span>(' + s + ')'
-        elif 'call' in self.name:
-            s = '<span class="call">' + s + '</span>'
         return Html(s)
 
     def _getvar(self, v):
@@ -109,6 +113,12 @@
         return ("<a href='' onclick='show_loop(%d);return false'>" % no +
                 self.repr() + "</a>")
 
+    def getdescr(self):
+        return cgi.escape(self.descr)
+
+    #def repr_call_assembler(self):
+    #    xxxx
+
 class ParserWithHtmlRepr(parser.SimpleParser):
     Op = OpHtml
 
diff --git a/_jitviewer/templates/loop.html b/_jitviewer/templates/loop.html
--- a/_jitviewer/templates/loop.html
+++ b/_jitviewer/templates/loop.html
@@ -14,7 +14,7 @@
                       {% if op.bridge %}
                         <span id="loop-{{op.bridge.no}}" class="guard single-operation">{{op.html_repr()}}</span> <a href="/" onClick="replace_from(this, {{op.bridge.no}}); return false">&gt;&gt;show bridge</a> (taken {{op.percentage}}%)<br/>
                       {% else %}
-                        <span class="single-operation">{{op.html_repr()}}</span><br/>
+                        <span class="{{op.html_class()}}">{{op.html_repr()}}</span><br/>
                         {% if op.asm %}
                             <p class="asm">{{op.asm}}</p>
                         {% endif %}
diff --git a/demo.py b/demo.py
deleted file mode 100644
--- a/demo.py
+++ /dev/null
@@ -1,24 +0,0 @@
-
-import re
-from numpy import zeros
-
-def g():
-    return 1
-
-def loop():
-    i = 0
-    while i < 10000:
-        if i & 2:
-            i += g()
-        else:
-            i += 3
-
-def other_loop():
-    for i in range(2000):
-        re.search("0", str(i))
-
-if __name__ == '__main__':
-    loop()
-    other_loop()
-    a = zeros(10000)
-    repr(a + a / a)
diff --git a/log b/log
--- a/log
+++ b/log
@@ -1,747 +1,2130 @@
-[1af179b69b26d] {jit-backend-counts
-[1af179b6aaa20] jit-backend-counts}
-[1af179bd270bb] {jit-log-opt-loop
-# Loop 0 : loop with 35 ops
+[4cac93478f8a] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9000 +0  4157415641554154415341524151415057565554535251504889E349C7C340BC920041FFD34889DF4883E4F049C7C350BC920041FFD3488D65D8415F415E415D415C5B5DC3
+[4cac9348d29a] jit-backend-dump}
+[4cac93490d4d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9045 +0  4157415641554154415341524151415057565554535251504889E349C7C3F0BB920041FFD34889DF4883E4F049C7C350BC920041FFD3488D65D8415F415E415D415C5B5DC3
+[4cac93492757] jit-backend-dump}
+[4cac934942ae] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b908a +0  4157415641554154415341524151415057565554535251504889E34881EC80000000F20F110424F20F114C2408F20F11542410F20F115C2418F20F11642420F20F116C2428F20F11742430F20F117C2438F2440F11442440F2440F114C2448F2440F11542450F2440F115C2458F2440F11642460F2440F116C2468F2440F11742470F2440F117C247849C7C340BC920041FFD34889DF4883E4F049C7C350BC920041FFD3488D65D8415F415E415D415C5B5DC3
+[4cac93496777] jit-backend-dump}
+[4cac934976da] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b913d +0  4157415641554154415341524151415057565554535251504889E34881EC80000000F20F110424F20F114C2408F20F11542410F20F115C2418F20F11642420F20F116C2428F20F11742430F20F117C2438F2440F11442440F2440F114C2448F2440F11542450F2440F115C2458F2440F11642460F2440F116C2468F2440F11742470F2440F117C247849C7C3F0BB920041FFD34889DF4883E4F049C7C350BC920041FFD3488D65D8415F415E415D415C5B5DC3
+[4cac93499888] jit-backend-dump}
+[4cac9349bec2] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9210 +0  F20F11442410F20F114C2418F20F11542420F20F115C2428F20F11642430F20F116C2438F20F11742440F20F117C2448F2440F11442450F2440F114C2458F2440F11542460F2440F115C2468F2440F11642470F2440F116C2478F2440F11B42480000000F2440F11BC24880000004829C24889D749C7C350A8920041FFE3
+[4cac9349dd04] jit-backend-dump}
+[4cac934a41de] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b928e +0  F20F10442410F20F104C2418F20F10542420F20F105C2428F20F10642430F20F106C2438F20F10742440F20F107C2448F2440F10442450F2440F104C2458F2440F10542460F2440F105C2468F2440F10642470F2440F106C2478F2440F10B42480000000F2440F10BC2488000000488B1425704F3D01C3
+[4cac934a5e7f] jit-backend-dump}
+[4cac934aad48] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9305 +0  57565251415041514883EC40F20F110424F20F114C2408F20F11542410F20F115C2418F20F11642420F20F116C2428F20F11742430F20F117C2438488D7D1049C7C340BA520041FFD3488B042550546B024885C0753CF20F107C2438F20F10742430F20F106C2428F20F10642420F20F105C2418F20F10542410F20F104C2408F20F1004244883C44041594158595A5E5FC3488B042558546B0248C7042550546B020000000048C7042558546B02000000004889042590C2540149C7C340BC920041FFD348C7C0020000004883C478C3
+[4cac934ad355] jit-backend-dump}
+[4cac934ae420] {jit-backend-counts
+[4cac934ae846] jit-backend-counts}
+[4cac9a58f8bb] {jit-backend
+[4cac9a6633f5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b93d5 +0  554889E5534154415541564157488DA5000000004C8B3C2590C2540148C7042590C25401000000004C8B342598C2540148C7042598C25401000000004C8B2C25A0C2540148C70425A0C25401000000004C8B2425A8C2540148C70425A8C25401000000004C8B1425D04D5B014C8B0C25B8C2540148C70425B8C25401000000004C8B0425E04D5B01488B3C25E84D5B01488B3425D0C2540148C70425D0C2540100000000488B1C25D8C2540148C70425D8C2540100000000488B1425E0C2540148C70425E0C2540100000000488B0C25E8C2540148C70425E8C2540100000000488B0425F0C2540148C70425F0C254010000000048898570FFFFFF49BB30A0CFB8A07F0000498B034883C00149BB30A0CFB8A07F00004989034983F8030F8500000000813AD03000000F8500000000488B7A104885FF0F84000000004C8B4208488B47204885C00F8500000000488B47084939C00F8C0000000048C74210000000004983FA000F85000000004D8B5110418139302301000F85000000004D8B49184983F9020F85000000004885F60F84000000004D85D20F85000000004D8B576841C687950000000141F64704017418515641524C89FF4C89EE49C7C310734D0041FFD3415A5E594D896F5041F64704017418515641524C89FF4C89E649C7C310734D0041FFD3415A5E594D89677841C687960000000049C747600000000049C787800000000200000049C747582A00000041F6420401741F515641524C89D74889F248C7C60000000049C7C380DEB20041FFD3415A5E594989721041F6420401741F515641524C89D748C7C6010000004889DA49C7C380DEB20041FFD3415A5E5949895A1849C742200000000041F6420401741F515641524C89D748C7C6030000004889CA49C7C380DEB20041FFD3415A5E5949894A28488B8D70FFFFFF41F6420401741F515641524C89D748C7C6040000004889CA49C7C380DEB20041FFD3415A5E5949894A304889342590C2540149C7C340BC920041FFD348C7C000000000488D65D8415F415E415D415C5B5DC3488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA570FFFFFF4989FF4989F64989D54989CC4D89C24C8B5D104D89D84C8B5D184C89DF4C8B5D204C89DE4C8B5D284C89DB4C8B5D304C89DA4C8B5D384C89D94C8B5D404C899D70FFFFFFE98BFDFFFF49BB00905BB6A07F000041FFD321383C343029241D180C080440030300000049BB00905BB6A07F000041FFD3383C0834302924180C0440030400000049BB00905BB6A07F000041FFD3383C081C34302924180C0440030500000049BB00905BB6A07F000041FFD3383C08211C0034302924180C0440030600000049BB00905BB6A07F000041FFD3383C08211C34302924180C0440030700000049BB00905BB6A07F000041FFD329383C343024180C0440030800000049BB00905BB6A07F000041FFD3383C24343028180C0440030900000049BB00905BB6A07F000041FFD3383C25343028180C0440030A00000049BB00905BB6A07F000041FFD3383C183430280C0440030B00000049BB00905BB6A07F000041FFD3383C182834300C0440030C000000
+[4cac9a688c4a] jit-backend-dump}
+[4cac9a68ad9c] {jit-backend-addr
+Loop #0 (<code object uninlined_call, file 'source.py', line 21> #19 FOR_ITER) has address 7fa0b65b94d0 to 7fa0b65b96c6 (bootstrap 7fa0b65b93d5)
+[4cac9a68d731] jit-backend-addr}
+[4cac9a68e7e9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b93e5 +0  70FFFFFF
+[4cac9a690058] jit-backend-dump}
+[4cac9a691034] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b94f4 +0  4D020000
+[4cac9a6922d1] jit-backend-dump}
+[4cac9a692c27] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9500 +0  60020000
+[4cac9a693cd5] jit-backend-dump}
+[4cac9a6944c3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b950d +0  70020000
+[4cac9a695535] jit-backend-dump}
+[4cac9a695d05] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b951e +0  7D020000
+[4cac9a696d8b] jit-backend-dump}
+[4cac9a697597] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b952b +0  90020000
+[4cac9a698893] jit-backend-dump}
+[4cac9a69918f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b953d +0  9D020000
+[4cac9a69a2ce] jit-backend-dump}
+[4cac9a69aac6] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b954e +0  A8020000
+[4cac9a69bb3d] jit-backend-dump}
+[4cac9a69c32b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b955c +0  B6020000
+[4cac9a69d3ac] jit-backend-dump}
+[4cac9a69db90] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9565 +0  C9020000
+[4cac9a69ec11] jit-backend-dump}
+[4cac9a69f517] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b956e +0  DB020000
+[4cac9a6a0719] jit-backend-dump}
+[4cac9a6a3351] jit-backend}
+[4cac9a6a4959] {jit-log-opt-loop
+# Loop 0 : entry bridge with 36 ops
+[p0, p1, p2, p3, i4, p5, i6, i7, p8, p9, p10, p11, p12]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
++281: guard_value(i6, 3, descr=<Guard3>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11, p12]
++291: guard_class(p10, 20808496, descr=<Guard4>) [p1, p0, p10, p2, p3, i4, p5, p8, p9, p11, p12]
++303: p15 = getfield_gc(p10, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
++307: guard_nonnull(p15, descr=<Guard5>) [p1, p0, p10, p15, p2, p3, i4, p5, p8, p9, p11, p12]
++316: i16 = getfield_gc(p10, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++320: p17 = getfield_gc(p15, descr=<GcPtrFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_w_list 32>)
++324: guard_isnull(p17, descr=<Guard6>) [p1, p0, p10, i16, p15, p17, p2, p3, i4, p5, p8, p9, p11, p12]
++333: i18 = getfield_gc(p15, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_length 8>)
++337: i19 = int_ge(i16, i18)
+guard_true(i19, descr=<Guard7>) [p1, p0, p10, i16, p15, p2, p3, i4, p5, p8, p9, p11, p12]
++346: setfield_gc(p10, ConstPtr(ptr20), descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
++354: guard_value(i4, 0, descr=<Guard8>) [i4, p1, p0, p2, p3, p5, p8, p9, p11, p12]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #38 POP_BLOCK')
++364: p22 = getfield_gc_pure(p5, descr=<GcPtrFieldDescr pypy.interpreter.pyopcode.FrameBlock.inst_previous 16>)
++368: guard_class(p5, 20870544, descr=<Guard9>) [p1, p0, p5, p2, p3, p22, p8, p9, p11, p12]
++381: i24 = getfield_gc_pure(p5, descr=<SignedFieldDescr pypy.interpreter.pyopcode.FrameBlock.inst_valuestackdepth 24>)
++385: guard_value(i24, 2, descr=<Guard10>) [p1, p0, i24, p2, p3, p22, p8, p9, p11, p12]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #39 LOAD_FAST')
++395: guard_nonnull(p8, descr=<Guard11>) [p1, p0, p8, p2, p3, p22, p9, p11, p12]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #42 RETURN_VALUE')
++404: guard_isnull(p22, descr=<Guard12>) [p1, p0, p8, p22, p2, p3, p9, p11, p12]
++413: p26 = getfield_gc(p0, descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
++417: setfield_gc(p0, 1, descr=<BoolFieldDescr pypy.interpreter.pyframe.PyFrame.inst_frame_finished_execution 149>)
+setfield_gc(p0, p2, descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
+setfield_gc(p0, p3, descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_pycode 120>)
++495: setfield_gc(p0, 0, descr=<BoolFieldDescr pypy.interpreter.pyframe.PyFrame.inst_is_being_profiled 150>)
++503: setfield_gc(p0, ConstPtr(ptr28), descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
++511: setfield_gc(p0, 2, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 128>)
++522: setfield_gc(p0, 42, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
+setarrayitem_gc(p26, 0, p8, descr=<GcPtrArrayDescr>)
+setarrayitem_gc(p26, 1, p9, descr=<GcPtrArrayDescr>)
++614: setarrayitem_gc(p26, 2, ConstPtr(ptr34), descr=<GcPtrArrayDescr>)
+setarrayitem_gc(p26, 3, p11, descr=<GcPtrArrayDescr>)
+setarrayitem_gc(p26, 4, p12, descr=<GcPtrArrayDescr>)
++713: finish(p8, descr=<DoneWithThisFrameDescrRef object at 0x1508540>)
++753: --end of the loop--
+[4cac9a791478] jit-log-opt-loop}
+[4cac9adac196] {jit-backend
+[4cac9ae4da16] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9888 +0  488DA50000000049BB38A0CFB8A07F0000498B0B4883C10149BB38A0CFB8A07F000049890B488B4F10488B7F184C89C04C0FAFC74C01C14883C001488942084983FA000F85000000004883FE017206813E980700000F850000000049BB88F377B6A07F00004D39DC0F85000000004C8B66084983C4010F8000000000488B3425A0536B024883EE0148893425A0536B024883FE000F8C0000000048898D68FFFFFF48899560FFFFFF4C898D58FFFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7009807000048891425704F3D014C89600848898550FFFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7009807000048891425704F3D014C8B9568FFFFFF4C89500848898548FFFFFF49BB88F377B6A07F00004D89DC49C7C2000000004C8B8D58FFFFFF49C7C00300000048C7C713000000488BB550FFFFFF488B9D48FFFFFF488B9560FFFFFF48C7C10000000048C78570FFFFFF0000000049BBD0945BB6A07F000041FFE349BB00905BB6A07F000041FFD329383C343024180C084005030D00000049BB00905BB6A07F000041FFD3383C18343024084005030E00000049BB00905BB6A07F000041FFD3383C30342418084005030F00000049BB00905BB6A07F000041FFD3383C183134240805031000000049BB00905BB6A07F000041FFD3383C34240831050311000000
+[4cac9ae59dbe] jit-backend-dump}
+[4cac9ae5b714] {jit-backend-addr
+Bridge out of guard 7 has address 7fa0b65b9888 to 7fa0b65b9a2f
+[4cac9ae5e1a4] jit-backend-addr}
+[4cac9ae5f098] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b988b +0  C0FEFFFF
+[4cac9ae60d9c] jit-backend-dump}
+[4cac9ae61ca2] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b98cd +0  5E010000
+[4cac9ae6dd50] jit-backend-dump}
+[4cac9ae6ec8c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b98df +0  69010000
+[4cac9ae702fa] jit-backend-dump}
+[4cac9ae70daa] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b98f2 +0  71010000
+[4cac9ae72460] jit-backend-dump}
+[4cac9ae72f28] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9900 +0  7E010000
+[4cac9ae74362] jit-backend-dump}
+[4cac9ae74cf8] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b991e +0  7A010000
+[4cac9ae76156] jit-backend-dump}
+[4cac9ae77284] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b952b +0  59030000
+[4cac9ae786dc] jit-backend-dump}
+[4cac9ae792a6] jit-backend}
+[4cac9ae7c63c] {jit-log-opt-bridge
+# bridge out of Guard 7 with 29 ops
+[p0, p1, p2, i3, p4, p5, p6, i7, p8, p9, p10, p11, p12]
++37: i13 = getfield_gc(p4, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_start 16>)
++41: i14 = getfield_gc(p4, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_step 24>)
++45: i15 = int_mul(i3, i14)
++52: i16 = int_add(i13, i15)
++55: i18 = int_add(i3, 1)
++59: setfield_gc(p2, i18, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++63: guard_value(i7, 0, descr=<Guard13>) [i7, p0, p1, p5, p6, p8, p9, p10, p2, p12, i16]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #22 STORE_FAST')
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #25 LOAD_FAST')
++73: guard_nonnull_class(p9, ConstClass(W_IntObject), descr=<Guard14>) [p0, p1, p9, p5, p6, p8, p2, p12, i16]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #28 LOAD_CONST')
++91: guard_value(p6, ConstPtr(ptr21), descr=<Guard15>) [p0, p1, p6, p5, p8, p9, p2, p12, i16]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #31 INPLACE_ADD')
++110: i22 = getfield_gc_pure(p9, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++114: i24 = int_add_ovf(i22, 1)
+guard_no_overflow(, descr=<Guard16>) [p0, p1, p9, i24, p5, p8, p2, i16]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #32 STORE_FAST')
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #35 JUMP_ABSOLUTE')
++124: i26 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++132: i28 = int_sub(i26, 1)
++136: setfield_raw(40588192, i28, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++144: i30 = int_lt(i28, 0)
+guard_false(i30, descr=<Guard17>) [p0, p1, p5, p8, p2, i24, i16]
+debug_merge_point(0, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
++154: p32 = new_with_vtable(ConstClass(W_IntObject))
++238: setfield_gc(p32, i24, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++242: p34 = new_with_vtable(ConstClass(W_IntObject))
++312: setfield_gc(p34, i16, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++323: jump(p1, p0, p5, ConstPtr(ptr35), 0, p8, 3, 19, p32, p34, p2, ConstPtr(ptr39), ConstPtr(ptr40), descr=<Loop0>)
++423: --end of the loop--
+[4cac9aebd2aa] jit-log-opt-bridge}
+[4cac9b1ed9a0] {jit-backend
+[4cac9b2540ba] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9ab5 +0  554889E5534154415541564157488DA500000000488B042590C2540148C7042590C254010000000048898570FFFFFF488B042598C2540148C7042598C254010000000048898568FFFFFF488B0425A0C2540148C70425A0C254010000000048898560FFFFFF488B0425A8C2540148C70425A8C254010000000048898558FFFFFF4C8B3C25D04D5B014C8B3425D84D5B0149BB40A0CFB8A07F00004D8B2B4983C50149BB40A0CFB8A07F00004D892B4981FE102700000F8D000000004C89F048C7C10200000048898550FFFFFF489948F7F94889D048C1FA3F49C7C6020000004921D64C01F04883F8000F85000000004C89F84983C7010F8000000000488B8550FFFFFF4883C0014C8B3425A0536B024983EE014C893425A0536B024983FE000F8C0000000048898548FFFFFF4C8BB548FFFFFFE958FFFFFF488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA540FFFFFF4889BD70FFFFFF4889B568FFFFFF48899560FFFFFF48898D58FFFFFF4D89C74D89CEE9FBFEFFFF49BB00905BB6A07F000041FFD34440484C393D031200000049BB00905BB6A07F000041FFD34440484C01513D031300000049BB00905BB6A07F000041FFD344403D484C075101031400000049BB00905BB6A07F000041FFD34440484C013D0707070315000000
+[4cac9b26ab54] jit-backend-dump}
+[4cac9b26bd8a] {jit-backend-addr
+Loop #1 (<code object bridge, file 'source.py', line 27> #15 LOAD_FAST) has address 7fa0b65b9b45 to 7fa0b65b9bed (bootstrap 7fa0b65b9ab5)
+[4cac9b26e0d0] jit-backend-addr}
+[4cac9b26f1e6] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9ac5 +0  40FFFFFF
+[4cac9b270e96] jit-backend-dump}
+[4cac9b271d42] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9b6c +0  DA000000
+[4cac9b2734ac] jit-backend-dump}
+[4cac9b273ff2] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9ba0 +0  BE000000
+[4cac9b2754e0] jit-backend-dump}
+[4cac9b275efa] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9bad +0  CA000000
+[4cac9b277334] jit-backend-dump}
+[4cac9b277cd0] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9bd6 +0  BB000000
+[4cac9b2790ec] jit-backend-dump}
+[4cac9b279f2c] jit-backend}
+[4cac9b27b3fc] {jit-log-opt-loop
+# Loop 1 : loop with 35 ops
 [p0, p1, p2, p3, i4, i5]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #15 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #18 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #21 COMPARE_OP')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #18 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #21 COMPARE_OP')
 +174: i7 = int_lt(i5, 10000)
-guard_true(i7, descr=<Guard3>) [p1, p0, p2, p3, i4, i5]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #24 POP_JUMP_IF_FALSE')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #27 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #30 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #33 BINARY_MODULO')
+guard_true(i7, descr=<Guard18>) [p1, p0, p2, p3, i5, i4]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #24 POP_JUMP_IF_FALSE')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #27 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #30 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #33 BINARY_MODULO')
 +187: i9 = int_mod(i5, 2)
 +209: i11 = int_rshift(i9, 63)
 +216: i12 = int_and(2, i11)
 +226: i13 = int_add(i9, i12)
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #34 POP_JUMP_IF_FALSE')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #34 POP_JUMP_IF_FALSE')
 +229: i14 = int_is_true(i13)
-guard_false(i14, descr=<Guard4>) [p1, p0, p2, p3, i13, i4, i5]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #50 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #53 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #56 INPLACE_ADD')
-+239: i16 = int_add_ovf(i4, 2)
-guard_no_overflow(, descr=<Guard5>) [p1, p0, i16, p2, p3, None, i4, i5]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #57 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #60 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #63 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #66 INPLACE_ADD')
+guard_false(i14, descr=<Guard19>) [p1, p0, p2, p3, i13, i5, i4]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #53 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #56 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #59 INPLACE_ADD')
++239: i16 = int_add_ovf(i4, 1)
+guard_no_overflow(, descr=<Guard20>) [p1, p0, i16, p2, p3, None, i5, i4]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #60 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
 +252: i19 = int_add(i5, 1)
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #67 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #70 JUMP_ABSOLUTE')
-+263: i21 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
++263: i21 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 +271: i23 = int_sub(i21, 1)
-+275: setfield_raw(40681184, i23, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++275: setfield_raw(40588192, i23, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 +283: i25 = int_lt(i23, 0)
-guard_false(i25, descr=<Guard6>) [p1, p0, p2, p3, i16, i19, None, None, None]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #15 LOAD_FAST')
-+293: jump(p0, p1, p2, p3, i16, i19, descr=<Loop0>)
+guard_false(i25, descr=<Guard21>) [p1, p0, p2, p3, i19, i16, None, None, None]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
++293: jump(p0, p1, p2, p3, i16, i19, descr=<Loop1>)
 +312: --end of the loop--
-[1af179bdc2aa7] jit-log-opt-loop}
-[1af179be14e5b] {jit-log-opt-loop
-# Loop 1 : entry bridge with 44 ops
+[4cac9b2b109c] jit-log-opt-loop}
+[4cac9b2b409c] {jit-backend
+[4cac9b78442f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9cb0 +0  554889E5534154415541564157488DA5000000004C8B3C2590C2540148C7042590C25401000000004C8B342598C2540148C7042598C25401000000004C8B2C25A0C2540148C70425A0C25401000000004C8B2425A8C2540148C70425A8C25401000000004C8B1425D04D5B014C8B0C25B8C2540148C70425B8C25401000000004C8B0425E04D5B01488B3C25E84D5B01488B3425D0C2540148C70425D0C2540100000000488B1C25D8C2540148C70425D8C2540100000000488B1425E0C2540148C70425E0C2540100000000488B0C25E8C2540148C70425E8C254010000000049BB48A0CFB8A07F0000498B034883C00149BB48A0CFB8A07F00004989034983F8020F85000000004883FB017206813B980700000F85000000004983FA000F850000000049BB40F477B6A07F00004D39DC0F8500000000488B4B084881F9102700000F8D0000000049BB00000000000000804C39D90F84000000004889C848C7C10200000048898570FFFFFF489948F7F94889D048C1FA3F48C7C1020000004821D14801C84883F8000F85000000004883FE017206813E980700000F8500000000488B46084883C0010F8000000000488B9D70FFFFFF4883C301488B3425A0536B024883EE0148893425A0536B024883FE000F8C0000000048898568FFFFFF4C89BD70FFFFFF4C89AD60FFFFFF4C898D58FFFFFF4C8BBD68FFFFFF4C89B568FFFFFF4989DE49BB459B5BB6A07F000041FFE3488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA540FFFFFF4989FF4989F64989D54989CC4D89C24C8B5D104D89D84C8B5D184C89DF4C8B5D204C89DE4C8B5D284C89DB4C8B5D304C89DA4C8B5D384C89D9E95AFEFFFF49BB00905BB6A07F000041FFD321383C343029241D180C0804031600000049BB00905BB6A07F000041FFD3383C0C34302924180804031700000049BB00905BB6A07F000041FFD329383C343024180C04031800000049BB00905BB6A07F000041FFD3383C303424180C04031900000049BB00905BB6A07F000041FFD3383C0C342418031A00000049BB00905BB6A07F000041FFD3383C0C05342418031B00000049BB00905BB6A07F000041FFD3383C3424180C01031C00000049BB00905BB6A07F000041FFD3383C1834240C07031D00000049BB00905BB6A07F000041FFD3383C180134240C07031E00000049BB00905BB6A07F000041FFD3383C3424010D07031F000000
+[4cac9b794481] jit-backend-dump}
+[4cac9b794cf3] {jit-backend-addr
+Loop #2 (<code object bridge, file 'source.py', line 27> #15 LOAD_FAST) has address 7fa0b65b9d90 to 7fa0b65b9ec2 (bootstrap 7fa0b65b9cb0)
+[4cac9b795ba9] jit-backend-addr}
+[4cac9b79637b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9cc0 +0  40FFFFFF
+[4cac9b796ff1] jit-backend-dump}
+[4cac9b7975e7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9db4 +0  7E010000
+[4cac9b79807f] jit-backend-dump}
+[4cac9b798617] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9dc6 +0  8A010000
+[4cac9b79903b] jit-backend-dump}
+[4cac9b79951f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9dd0 +0  9C010000
+[4cac9b799e89] jit-backend-dump}
+[4cac9b79a2c7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9de3 +0  A4010000
+[4cac9b79ab5d] jit-backend-dump}
+[4cac9b79af97] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9df4 +0  AD010000
+[4cac9b79b911] jit-backend-dump}
+[4cac9b79be79] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9e07 +0  B2010000
+[4cac9b79cb47] jit-backend-dump}
+[4cac9b79d0d7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9e3b +0  97010000
+[4cac9b79da99] jit-backend-dump}
+[4cac9b79dee5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9e4d +0  9E010000
+[4cac9b79e769] jit-backend-dump}
+[4cac9b79ebb5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9e5b +0  A9010000
+[4cac9b79f44b] jit-backend-dump}
+[4cac9b79f9d9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9e84 +0  9A010000
+[4cac9b7a0481] jit-backend-dump}
+[4cac9b7a0ad7] jit-backend}
+[4cac9b7a16cd] {jit-log-opt-loop
+# Loop 2 : entry bridge with 44 ops
 [p0, p1, p2, p3, i4, p5, i6, i7, p8, p9, p10, p11]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #15 LOAD_FAST')
-+254: guard_value(i6, 0, descr=<Guard7>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11]
-+264: guard_nonnull_class(p11, ConstClass(W_IntObject), descr=<Guard8>) [p1, p0, p11, p2, p3, i4, p5, p8, p9, p10]
-+282: guard_value(i4, 0, descr=<Guard9>) [i4, p1, p0, p2, p3, p5, p11, p9, p10]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #18 LOAD_CONST')
-+292: guard_value(p3, ConstPtr(ptr15), descr=<Guard10>) [p1, p0, p3, p2, p5, p11, p9, p10]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #21 COMPARE_OP')
-+311: i16 = getfield_gc_pure(p11, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
++254: guard_value(i6, 2, descr=<Guard22>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11]
++264: guard_nonnull_class(p9, ConstClass(W_IntObject), descr=<Guard23>) [p1, p0, p9, p2, p3, i4, p5, p8, p10, p11]
++282: guard_value(i4, 0, descr=<Guard24>) [i4, p1, p0, p2, p3, p5, p8, p9, p11]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #18 LOAD_CONST')
++292: guard_value(p3, ConstPtr(ptr15), descr=<Guard25>) [p1, p0, p3, p2, p5, p8, p9, p11]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #21 COMPARE_OP')
++311: i16 = getfield_gc_pure(p9, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
 +315: i18 = int_lt(i16, 10000)
-guard_true(i18, descr=<Guard11>) [p1, p0, p11, p2, p5, p10]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #24 POP_JUMP_IF_FALSE')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #27 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #30 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #33 BINARY_MODULO')
+guard_true(i18, descr=<Guard26>) [p1, p0, p9, p2, p5, p8]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #24 POP_JUMP_IF_FALSE')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #27 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #30 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #33 BINARY_MODULO')
 +328: i20 = int_eq(i16, -9223372036854775808)
-guard_false(i20, descr=<Guard12>) [p1, p0, p11, i16, p2, p5, p10]
+guard_false(i20, descr=<Guard27>) [p1, p0, p9, i16, p2, p5, p8]
 +347: i22 = int_mod(i16, 2)
-+383: i24 = int_rshift(i22, 63)
-+390: i25 = int_and(2, i24)
-+400: i26 = int_add(i22, i25)
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #34 POP_JUMP_IF_FALSE')
-+403: i27 = int_is_true(i26)
-guard_false(i27, descr=<Guard13>) [p1, p0, p2, p5, p10, p11, i26]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #50 LOAD_FAST')
-+413: guard_nonnull_class(p10, ConstClass(W_IntObject), descr=<Guard14>) [p1, p0, p10, p2, p5, p11, None]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #53 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #56 INPLACE_ADD')
-+438: i30 = getfield_gc_pure(p10, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+442: i32 = int_add_ovf(i30, 2)
-guard_no_overflow(, descr=<Guard15>) [p1, p0, p10, i32, p2, p5, p11, None]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #57 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #60 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #63 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #66 INPLACE_ADD')
-+452: i34 = int_add(i16, 1)
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #67 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #70 JUMP_ABSOLUTE')
-+463: i36 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+471: i38 = int_sub(i36, 1)
-+475: setfield_raw(40681184, i38, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+483: i40 = int_lt(i38, 0)
-guard_false(i40, descr=<Guard16>) [p1, p0, p2, p5, i34, i32, None]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #15 LOAD_FAST')
-+493: jump(p0, p1, p2, p5, i32, i34, descr=<Loop0>)
-+551: --end of the loop--
-[1af179be57387] jit-log-opt-loop}
-[1af179c15cdcd] {jit-log-opt-loop
-# Loop 2 : loop with 34 ops
++369: i24 = int_rshift(i22, 63)
++376: i25 = int_and(2, i24)
++386: i26 = int_add(i22, i25)
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #34 POP_JUMP_IF_FALSE')
++389: i27 = int_is_true(i26)
+guard_false(i27, descr=<Guard28>) [p1, p0, p2, p5, p8, p9, i26]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #53 LOAD_FAST')
++399: guard_nonnull_class(p8, ConstClass(W_IntObject), descr=<Guard29>) [p1, p0, p8, p2, p5, p9, None]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #56 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #59 INPLACE_ADD')
++417: i30 = getfield_gc_pure(p8, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++421: i32 = int_add_ovf(i30, 1)
+guard_no_overflow(, descr=<Guard30>) [p1, p0, p8, i32, p2, p5, p9, None]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #60 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
++431: i34 = int_add(i16, 1)
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
++442: i36 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++450: i38 = int_sub(i36, 1)
++454: setfield_raw(40588192, i38, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++462: i40 = int_lt(i38, 0)
+guard_false(i40, descr=<Guard31>) [p1, p0, p2, p5, i32, i34, None]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
++472: jump(p0, p1, p2, p5, i32, i34, descr=<Loop1>)
++530: --end of the loop--
+[4cac9b7c5c13] jit-log-opt-loop}
+[4caca24c49a7] {jit-backend
+[4caca25290e7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba03b +0  554889E5534154415541564157488DA500000000488B042590C2540148C7042590C254010000000048898570FFFFFF488B042598C2540148C7042598C254010000000048898568FFFFFF488B0425A0C2540148C70425A0C254010000000048898560FFFFFF488B0425A8C2540148C70425A8C254010000000048898558FFFFFF4C8B3C25D04D5B014C8B3425D84D5B0149BB50A0CFB8A07F00004D8B2B4983C50149BB50A0CFB8A07F00004D892B4981FE102700000F8D000000004C89F048C7C10200000048898550FFFFFF489948F7F94889D048C1FA3F49C7C6020000004921D64C01F04883F8000F85000000004C89F84983C7010F8000000000488B8550FFFFFF4883C0014C8B3425A0536B024983EE1C4C893425A0536B024983FE000F8C0000000048898548FFFFFF4C8BB548FFFFFFE958FFFFFF488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA540FFFFFF4889BD70FFFFFF4889B568FFFFFF48899560FFFFFF48898D58FFFFFF4D89C74D89CEE9FBFEFFFF49BB00905BB6A07F000041FFD34440484C3D39032000000049BB00905BB6A07F000041FFD34440484C013D51032100000049BB00905BB6A07F000041FFD344403D484C070151032200000049BB00905BB6A07F000041FFD34440484C013D0707070323000000
+[4caca2535c6f] jit-backend-dump}
+[4caca2536b09] {jit-backend-addr
+Loop #3 (<code object bridge, file 'source.py', line 27> #15 LOAD_FAST) has address 7fa0b65ba0cb to 7fa0b65ba173 (bootstrap 7fa0b65ba03b)
+[4caca25499b5] jit-backend-addr}
+[4caca254ae61] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba04b +0  40FFFFFF
+[4caca254cf85] jit-backend-dump}
+[4caca254e18b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba0f2 +0  DA000000
+[4caca254f985] jit-backend-dump}
+[4caca255041d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba126 +0  BE000000
+[4caca2551995] jit-backend-dump}
+[4caca2552337] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba133 +0  CA000000
+[4caca25538d3] jit-backend-dump}
+[4caca2554317] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba15c +0  BB000000
+[4caca25558ad] jit-backend-dump}
+[4caca255673b] jit-backend}
+[4caca2557d67] {jit-log-opt-loop
+# Loop 3 : loop with 34 ops
 [p0, p1, p2, p3, i4, i5]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #18 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #21 COMPARE_OP')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #18 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #21 COMPARE_OP')
 +174: i7 = int_lt(i5, 10000)
-guard_true(i7, descr=<Guard17>) [p1, p0, p2, p3, i5, i4]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #24 POP_JUMP_IF_FALSE')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #27 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #30 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #33 BINARY_MODULO')
+guard_true(i7, descr=<Guard32>) [p1, p0, p2, p3, i4, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #24 POP_JUMP_IF_FALSE')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #27 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #30 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #33 BINARY_MODULO')
 +187: i9 = int_mod(i5, 2)
 +209: i11 = int_rshift(i9, 63)
 +216: i12 = int_and(2, i11)
 +226: i13 = int_add(i9, i12)
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #34 POP_JUMP_IF_FALSE')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #34 POP_JUMP_IF_FALSE')
 +229: i14 = int_is_true(i13)
-guard_false(i14, descr=<Guard18>) [p1, p0, p2, p3, i13, i5, i4]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #50 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #53 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #56 INPLACE_ADD')
-+239: i16 = int_add_ovf(i4, 2)
-guard_no_overflow(, descr=<Guard19>) [p1, p0, i16, p2, p3, None, i5, i4]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #57 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #60 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #63 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #66 INPLACE_ADD')
+guard_false(i14, descr=<Guard33>) [p1, p0, p2, p3, i13, i4, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #53 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #56 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #59 INPLACE_ADD')
++239: i16 = int_add_ovf(i4, 1)
+guard_no_overflow(, descr=<Guard34>) [p1, p0, i16, p2, p3, None, i4, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #60 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
 +252: i19 = int_add(i5, 1)
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #67 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #70 JUMP_ABSOLUTE')
-+263: i21 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+271: i23 = int_sub(i21, 3)
-+275: setfield_raw(40681184, i23, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
++263: i21 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++271: i23 = int_sub(i21, 28)
++275: setfield_raw(40588192, i23, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 +283: i25 = int_lt(i23, 0)
-guard_false(i25, descr=<Guard20>) [p1, p0, p2, p3, i19, i16, None, None, None]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #15 LOAD_FAST')
-+293: jump(p0, p1, p2, p3, i16, i19, descr=<Loop2>)
+guard_false(i25, descr=<Guard35>) [p1, p0, p2, p3, i19, i16, None, None, None]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
++293: jump(p0, p1, p2, p3, i16, i19, descr=<Loop3>)
 +312: --end of the loop--
-[1af179c182ffd] jit-log-opt-loop}
-[1af179c1f947d] {jit-log-opt-bridge
-# bridge out of Guard 4 with 25 ops
+[4caca258fbfd] jit-log-opt-loop}
+[4caca2e41c45] {jit-backend
+[4caca43342ad] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba350 +0  488DA50000000049BB58A0CFB8A07F0000498B034883C00149BB58A0CFB8A07F0000498903488B8570FFFFFF4C8B700849BBA0217CB6A07F00004D39DE0F85000000004D8B6E104981FDC07446010F850000000049BB58026CB6A07F00004D8B334983FE01720741813E082601000F85000000004D8B6E1849BB88F377B6A07F00004D39DD0F85000000004D8B6E4049C7C3B0A0500041FFD34C8B60384C8D9578FFFFFF4C8B48484D85C90F85000000004C8B48284983F9000F850000000049BBA0217CB6A07F00004D39DD0F85000000004D8B4D104981F9C07446010F850000000049BBF80F6CB6A07F00004D8B2B4D85ED0F85000000004C8B2C2508DF45014981FD706A49010F85000000004D8B4D104981F9C07446010F85000000004C8B2C2508B65D014981FD603B62010F85000000004C8B2C25883B62014C8B2C25A0536B024983ED174C892C25A0536B024983FD000F8C000000004C8DAD78FFFFFF48898548FFFFFF4C899540FFFFFF488B0425704F3D01488D5018483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700A816000048891425704F3D014C8B9540FFFFFF4C8950084C8B9548FFFFFF41F642040174164152504C89D74889C649C7C310734D0041FFD358415A498942384C8B8D70FFFFFF4D89691848898538FFFFFF488B0425704F3D01488D9098000000483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700381F010048891425704F3D0149BB88F377B6A07F00004C89587849BBA00171B6A07F00004C89586048C740700200000048898530FFFFFF488B0425704F3D01488D5038483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7008800000048891425704F3D0148C740080500000048898528FFFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7009807000048891425704F3D0148C74008010000004C8B9528FFFFFF41F642040174164152504C89D74889C649C7C310734D0041FFD358415A4989421048898520FFFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7009807000048891425704F3D014C8B9528FFFFFF41F642040174165041524C89D74889C649C7C310734D0041FFD3415A584989421848898518FFFFFF488B0425704F3D01488D5018483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700D030000048891425704F3D0148898510FFFFFF488B0425704F3D01488D5028483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7007038000048891425704F3D0148C740180100000048C74008030000004C8B9510FFFFFF41F642040174165041524C89D74889C649C7C310734D0041FFD3415A584989421049C7420801000000488B8528FFFFFFF640040174165041524889C74C89D649C7C310734D0041FFD3415A584C8950204C8B8D30FFFFFF41F6410401741A50415241514C89CF4889C649C7C310734D0041FFD34159415A584989416849C741581300000049C781800000000300000041F64104017418415241514C89CF4C89E649C7C310734D0041FFD34159415A4D89613041C781900000001500000041F64104017422415241514C89CF49BBA0217CB6A07F00004C89DE49C7C310734D0041FFD34159415A49BBA0217CB6A07F00004D8959084C89BD08FFFFFF4C89B500FFFFFF48C78578FFFFFF2400000049C7C3030000004C891C2449C7C3130000004C895C24084C8B9D20FFFFFF4C895C24104C8B9D18FFFFFF4C895C24184C8954242049C7C3000000004C895C242849C7C3000000004C895C24304C89CF488BB548FFFFFF48C7C20000000049BB88F377B6A07F00004C89D949C7C00000000049BBA00171B6A07F00004D89D949BBC6965BB6A07F000041FFD34883F80074164889C7488BB530FFFFFF49C7C3D0D88C0041FFD3EB23488B8530FFFFFF48C7401800000000488B042590C2540148C7042590C25401000000004883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004C8BB548FFFFFF4D8B56484D85D20F85000000004C8B9530FFFFFF4C3B9570FFFFFF0F84000000004D8B4E2849C74250000000004983F9000F85000000004D8B4E384D8B7A304D0FB6A29400000041F6460401741A41514152504C89F74C89FE49C7C310734D0041FFD358415A41594D897E384D85E40F85000000004C8BA538FFFFFF49C7442408FDFFFFFF8138980700000F85000000004C8B60084C8BB508FFFFFF4D01E60F8000000000488B8550FFFFFF4883C0010F80000000004C8B2425A0536B024983EC1A4C892425A0536B024983FC000F8C00000000488985F8FEFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7009807000048891425704F3D014C897008488985F0FEFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7009807000048891425704F3D014C8B95F8FEFFFF4C895008488985E8FEFFFF4C8BBD70FFFFFF4C8BB568FFFFFF4C8BAD60FFFFFF49BB40F477B6A07F00004D89DC49C7C2000000004C8B8D58FFFFFF49C7C00200000048C7C70F000000488BB5F0FEFFFF488B9DE8FEFFFF48C7C20000000048C7C10000000049BB909D5BB6A07F000041FFE349BB00905BB6A07F000041FFD3440038484C3D51032500000049BB00905BB6A07F000041FFD344003438484C3D51032600000049BB00905BB6A07F000041FFD3440038484C3D51032700000049BB00905BB6A07F000041FFD344003438484C3D51032800000049BB00905BB6A07F000041FFD344400024484C382930343D51032900000049BB00905BB6A07F000041FFD3444000484C382930343D51032A00000049BB00905BB6A07F000041FFD344400034484C382930073D51032B00000049BB00905BB6A07F000041FFD34440002434484C382930073D51032C00000049BB00905BB6A07F000041FFD344400034484C382930073D51032D00000049BB00905BB6A07F000041FFD344400034484C382930073D51032E00000049BB00905BB6A07F000041FFD34440002434484C382930073D51032F00000049BB00905BB6A07F000041FFD344400034484C382930073D51033000000049BB00905BB6A07F000041FFD344400034484C382930073D51033100000049BB00905BB6A07F000041FFD3444000484C382930073D51033200000049BB45905BB6A07F000041FFD344405460005C484C787551032400000049BB45905BB6A07F000041FFD344405460005C484C787551033300000049BB00905BB6A07F000041FFD34440380060285C484C787551033400000049BB00905BB6A07F000041FFD344403800285C484C787551033500000049BB00905BB6A07F000041FFD344400028385C484C787551033600000049BB00905BB6A07F000041FFD34440002428385C484C787551033700000049BB00905BB6A07F000041FFD3444000484C7551033800000049BB00905BB6A07F000041FFD344400039484C7551033900000049BB00905BB6A07F000041FFD3444001484C390751033A00000049BB00905BB6A07F000041FFD34440484C01390707033B000000
+[4caca436d577] jit-backend-dump}
+[4caca436ec69] {jit-backend-addr
+Bridge out of guard 19 has address 7fa0b65ba350 to 7fa0b65bab56
+[4caca4370ee3] jit-backend-addr}
+[4caca43720d1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba353 +0  60FEFFFF
+[4caca4373f79] jit-backend-dump}
+[4caca43750e9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba38f +0  C3070000
+[4caca43766bb] jit-backend-dump}
+[4caca4377105] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba3a0 +0  CB070000
+[4caca43785f9] jit-backend-dump}
+[4caca4379169] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba3c0 +0  C5070000
+[4caca437a6e1] jit-backend-dump}
+[4caca437b233] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba3d7 +0  C7070000
+[4caca437cb5f] jit-backend-dump}
+[4caca437d4dd] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba3fd +0  BB070000
+[4caca437e905] jit-backend-dump}
+[4caca437f28f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba40b +0  CB070000
+[4caca43806b1] jit-backend-dump}
+[4caca4381071] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba41e +0  D5070000
+[4caca4382739] jit-backend-dump}
+[4caca4383237] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba42f +0  E2070000
+[4caca43847d9] jit-backend-dump}
+[4caca4385175] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba445 +0  EB070000
+[4caca438659d] jit-backend-dump}
+[4caca4386f1b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba45a +0  F4070000
+[4caca4388331] jit-backend-dump}
+[4caca4388cf1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba46b +0  01080000
+[4caca438a101] jit-backend-dump}
+[4caca438abe7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba480 +0  0B080000
+[4caca438c219] jit-backend-dump}
+[4caca438d161] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba4a6 +0  21080000
+[4caca438e673] jit-backend-dump}
+[4caca438f04b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba95f +0  85030000
+[4caca4390461] jit-backend-dump}
+[4caca4390e21] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba96e +0  93030000
+[4caca439222b] jit-backend-dump}
+[4caca4392bdf] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba982 +0  9C030000
+[4caca4394217] jit-backend-dump}
+[4caca4394d15] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba996 +0  A6030000
+[4caca43962f3] jit-backend-dump}
+[4caca4396c8f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba9ac +0  AD030000
+[4caca43980b7] jit-backend-dump}
+[4caca4398a89] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65ba9ea +0  8C030000
+[4caca4399e99] jit-backend-dump}
+[4caca439a85f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65baa06 +0  8E030000
+[4caca439bca5] jit-backend-dump}
+[4caca439c731] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65baa1a +0  93030000
+[4caca439dd99] jit-backend-dump}
+[4caca439e807] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65baa2b +0  9C030000
+[4caca439fd13] jit-backend-dump}
+[4caca43a06f7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65baa49 +0  98030000
+[4caca43a6019] jit-backend-dump}
+[4caca43a771d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65b9ba0 +0  AC070000
+[4caca43a8cb9] jit-backend-dump}
+[4caca43a9949] jit-backend}
+[4caca43ab1c1] {jit-log-opt-bridge
+# bridge out of Guard 19 with 124 ops
 [p0, p1, p2, p3, i4, i5, i6]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #37 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #40 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #43 INPLACE_ADD')
-+37: i8 = int_add_ovf(i5, 1)
-guard_no_overflow(, descr=<Guard21>) [p0, p1, i8, p2, p3, i5, i6]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #44 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #47 JUMP_FORWARD')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #60 LOAD_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #63 LOAD_CONST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #66 INPLACE_ADD')
-+50: i10 = int_add_ovf(i6, 1)
-guard_no_overflow(, descr=<Guard22>) [p0, p1, i10, p2, p3, i8, None, i6]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #67 STORE_FAST')
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #70 JUMP_ABSOLUTE')
-+67: i13 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+75: i15 = int_sub(i13, 1)
-+79: setfield_raw(40681184, i15, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+87: i17 = int_lt(i15, 0)
-guard_false(i17, descr=<Guard23>) [p0, p1, p2, p3, i10, i8, None, None]
-debug_merge_point(0, '<code object bridge. file 'source.py'. line 21> #15 LOAD_FAST')
-+97: p19 = new_with_vtable(ConstClass(W_IntObject))
-+167: setfield_gc(p19, i8, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+171: p21 = new_with_vtable(ConstClass(W_IntObject))
-+241: setfield_gc(p21, i10, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
-+252: jump(p1, p0, p2, ConstPtr(ptr22), 0, p3, 0, 15, ConstPtr(ptr26), ConstPtr(ptr27), p19, p21, descr=<Loop1>)
-+362: --end of the loop--
-[1af179c2137b0] jit-log-opt-bridge}
-[1af179c97806b] {jit-log-opt-loop
-# Loop 3 : loop with 30 ops
-[p0, p1, p2, p3, p4, p5, p6, i7, p8, p9, i10, i11, p12, i13, i14, p15, p16]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #13 FOR_ITER')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #37 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #40 LOAD_GLOBAL')
++37: p7 = getfield_gc(p1, descr=<GcPtrFieldDescr pypy.interpreter.eval.Frame.inst_w_globals 8>)
++48: guard_value(p7, ConstPtr(ptr8), descr=<Guard37>) [p0, p1, p7, p2, p3, i6, i5]
++67: p9 = getfield_gc(p7, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++71: guard_value(p9, ConstPtr(ptr10), descr=<Guard38>) [p0, p1, p9, p7, p2, p3, i6, i5]
++84: p12 = getfield_gc(ConstPtr(ptr11), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++97: guard_nonnull_class(p12, ConstClass(Function), descr=<Guard39>) [p0, p1, p12, p2, p3, i6, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #43 CALL_FUNCTION')
++116: p14 = getfield_gc(p12, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
++120: guard_value(p14, ConstPtr(ptr15), descr=<Guard40>) [p0, p1, p14, p12, p2, p3, i6, i5]
++139: p16 = getfield_gc(p12, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
++143: p17 = getfield_gc(p12, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
++143: p19 = call(ConstClass(getexecutioncontext), descr=<GcPtrCallDescr>)
++153: p20 = getfield_gc(p19, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++157: i21 = force_token()
++164: p22 = getfield_gc(p19, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++168: guard_isnull(p22, descr=<Guard41>) [p0, p1, p19, p22, p2, p3, p12, i21, p20, p16, i6, i5]
++177: i23 = getfield_gc(p19, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++181: i24 = int_is_zero(i23)
+guard_true(i24, descr=<Guard42>) [p0, p1, p19, p2, p3, p12, i21, p20, p16, i6, i5]
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #0 LOAD_CONST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #3 STORE_FAST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #6 SETUP_LOOP')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #9 LOAD_GLOBAL')
++191: guard_value(p16, ConstPtr(ptr25), descr=<Guard43>) [p0, p1, p19, p16, p2, p3, p12, i21, p20, None, i6, i5]
++210: p27 = getfield_gc(p16, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++214: guard_value(p27, ConstPtr(ptr28), descr=<Guard44>) [p0, p1, p19, p27, p16, p2, p3, p12, i21, p20, None, i6, i5]
++227: p30 = getfield_gc(ConstPtr(ptr29), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++240: guard_isnull(p30, descr=<Guard45>) [p0, p1, p19, p30, p2, p3, p12, i21, p20, None, i6, i5]
++249: p32 = getfield_gc(ConstPtr(ptr31), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
++257: guard_value(p32, ConstPtr(ptr33), descr=<Guard46>) [p0, p1, p19, p32, p2, p3, p12, i21, p20, None, i6, i5]
++270: p34 = getfield_gc(p32, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++274: guard_value(p34, ConstPtr(ptr35), descr=<Guard47>) [p0, p1, p19, p34, p32, p2, p3, p12, i21, p20, None, i6, i5]
++287: p37 = getfield_gc(ConstPtr(ptr36), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++295: guard_value(p37, ConstPtr(ptr38), descr=<Guard48>) [p0, p1, p19, p37, p2, p3, p12, i21, p20, None, i6, i5]
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #12 LOAD_CONST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #15 CALL_FUNCTION')
++308: p39 = getfield_gc(ConstPtr(ptr38), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++316: guard_not_invalidated(, descr=<Guard49>) [p0, p1, p19, p39, p2, p3, p12, i21, p20, None, i6, i5]
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #18 GET_ITER')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #22 STORE_FAST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #25 LOAD_FAST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #28 LOAD_CONST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #31 INPLACE_ADD')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #32 STORE_FAST')
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #35 JUMP_ABSOLUTE')
++316: i41 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++324: i43 = int_sub(i41, 23)
++328: setfield_raw(40588192, i43, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++336: i45 = int_lt(i43, 0)
+guard_false(i45, descr=<Guard50>) [p0, p1, p19, p2, p3, p12, i21, p20, None, i6, i5]
+debug_merge_point(1, '<code object uninlined_call. file 'source.py'. line 21> #19 FOR_ITER')
++346: i46 = force_token()
++353: p48 = new_with_vtable(20801800)
++430: setfield_gc(p48, i21, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
+setfield_gc(p19, p48, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++481: setfield_gc(p1, i46, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++492: p50 = new_with_vtable(20869528)
++565: setfield_gc(p50, ConstPtr(ptr15), descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_pycode 120>)
++579: setfield_gc(p50, ConstPtr(ptr51), descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_lastblock 96>)
++593: setfield_gc(p50, 2, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.inst_nlocals 112>)
++601: p54 = new_array(5, descr=<GcPtrArrayDescr>)
++679: p56 = new_with_vtable(ConstClass(W_IntObject))
++749: setfield_gc(p56, 1, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
+setarrayitem_gc(p54, 0, p56, descr=<GcPtrArrayDescr>)
++797: p60 = new_with_vtable(ConstClass(W_IntObject))
+setarrayitem_gc(p54, 1, p60, descr=<GcPtrArrayDescr>)
++907: p63 = new_with_vtable(20808496)
++977: p65 = new_with_vtable(20810448)
++1047: setfield_gc(p65, 1, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_step 24>)
++1055: setfield_gc(p65, 3, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_length 8>)
+setfield_gc(p63, p65, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
++1103: setfield_gc(p63, 1, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
+setarrayitem_gc(p54, 2, p63, descr=<GcPtrArrayDescr>)
+setfield_gc(p50, p54, descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_locals_stack_w 104>)
++1194: setfield_gc(p50, 19, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.inst_last_instr 88>)
++1202: setfield_gc(p50, 3, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.inst_valuestackdepth 128>)
+setfield_gc(p50, p20, descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_f_backref 48>)
++1248: setfield_gc(p50, 21, descr=<INTFieldDescr pypy.interpreter.pyframe.PyFrame.inst_f_lineno 144>)
+setfield_gc(p50, ConstPtr(ptr25), descr=<GcPtrFieldDescr pypy.interpreter.eval.Frame.inst_w_globals 8>)
++1314: p77 = call_assembler(p50, p19, ConstPtr(ptr73), ConstPtr(ptr15), 0, ConstPtr(ptr51), 3, 19, p56, p60, p63, ConstPtr(ptr75), ConstPtr(ptr76), descr=<Loop0>)
+guard_not_forced(, descr=<Guard36>) [p0, p1, p19, p50, p77, p48, p2, p3, p12, i6, i5]
++1555: guard_no_exception(, descr=<Guard51>) [p0, p1, p19, p50, p77, p48, p2, p3, p12, i6, i5]
++1570: p78 = getfield_gc(p19, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++1581: guard_isnull(p78, descr=<Guard52>) [p0, p1, p19, p77, p50, p78, p48, p2, p3, p12, i6, i5]
++1590: i79 = ptr_eq(p50, p1)
+guard_false(i79, descr=<Guard53>) [p0, p1, p19, p77, p50, p48, p2, p3, p12, i6, i5]
++1610: i80 = getfield_gc(p19, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++1614: setfield_gc(p50, ConstPtr(ptr81), descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_last_exception 80>)
++1622: i82 = int_is_true(i80)
+guard_false(i82, descr=<Guard54>) [p0, p1, p77, p50, p19, p48, p2, p3, p12, i6, i5]
++1632: p83 = getfield_gc(p19, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++1636: p84 = getfield_gc(p50, descr=<GcPtrFieldDescr pypy.interpreter.pyframe.PyFrame.inst_f_backref 48>)
++1640: i85 = getfield_gc(p50, descr=<BoolFieldDescr pypy.interpreter.pyframe.PyFrame.inst_escaped 148>)
+setfield_gc(p19, p84, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++1685: guard_false(i85, descr=<Guard55>) [p0, p1, p77, p83, p50, p19, p48, p2, p3, p12, i6, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #46 INPLACE_ADD')
++1694: setfield_gc(p48, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
++1710: guard_class(p77, ConstClass(W_IntObject), descr=<Guard56>) [p0, p1, p77, p2, p3, i6, i5]
++1722: i88 = getfield_gc_pure(p77, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++1726: i89 = int_add_ovf(i6, i88)
+guard_no_overflow(, descr=<Guard57>) [p0, p1, p77, i89, p2, p3, i6, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #47 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #50 JUMP_FORWARD')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #63 LOAD_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #66 LOAD_CONST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #69 INPLACE_ADD')
++1742: i91 = int_add_ovf(i5, 1)
+guard_no_overflow(, descr=<Guard58>) [p0, p1, i91, p2, p3, i89, None, i5]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #70 STORE_FAST')
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #73 JUMP_ABSOLUTE')
++1759: i93 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++1767: i95 = int_sub(i93, 26)
++1771: setfield_raw(40588192, i95, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++1779: i97 = int_lt(i95, 0)
+guard_false(i97, descr=<Guard59>) [p0, p1, p2, p3, i91, i89, None, None]
+debug_merge_point(0, '<code object bridge. file 'source.py'. line 27> #15 LOAD_FAST')
++1789: p99 = new_with_vtable(ConstClass(W_IntObject))
++1859: setfield_gc(p99, i89, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++1863: p101 = new_with_vtable(ConstClass(W_IntObject))
++1933: setfield_gc(p101, i91, descr=<SignedFieldDescr pypy.objspace.std.intobject.W_IntObject.inst_intval 8>)
++1944: jump(p1, p0, p2, ConstPtr(ptr102), 0, p3, 2, 15, p99, p101, ConstPtr(ptr106), ConstPtr(ptr107), descr=<Loop2>)
++2054: --end of the loop--
+[4caca4492641] jit-log-opt-bridge}
+[4caca6b867f7] {jit-backend
+[4caca6be469f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bae6a +0  554889E5534154415541564157488DA500000000488B042590C2540148C7042590C254010000000048898570FFFFFF488B042598C2540148C7042598C254010000000048898568FFFFFF488B0425A0C2540148C70425A0C254010000000048898560FFFFFF488B0425A8C2540148C70425A8C254010000000048898558FFFFFF4C8B3C25D04D5B01488B0425B8C2540148C70425B8C254010000000048898550FFFFFF488B0425C0C2540148C70425C0C254010000000048898548FFFFFF488B0425C8C2540148C70425C8C254010000000048898540FFFFFF488B0425D0C2540148C70425D0C254010000000048898538FFFFFF488B0425D8C2540148C70425D8C254010000000048898530FFFFFF4C8B3425004E5B01488B0425084E5B0148898528FFFFFF488B0425F0C2540148C70425F0C254010000000048898520FFFFFF488B0425184E5B0148898518FFFFFF488B0425204E5B0148898510FFFFFF488B042508C3540148C7042508C354010000000048898508FFFFFF488B042510C3540148C7042510C354010000000048898500FFFFFF49BB60A0CFB8A07F00004D8B2B4983C50149BB60A0CFB8A07F00004D892B4C3BB528FFFFFF0F8D000000004D89F74C0FAFB518FFFFFF4C8BAD10FFFFFF4D01F54983C7014C8BB538FFFFFF4D897E084C89EF49C7C31061B70041FFD34C8BA500FFFFFF4D8B5424084D89D14983C201488985F8FEFFFF4C898DF0FEFFFF4C89E74C89D649C7C3C07FB50041FFD348833C2550546B02000F85000000004D8B5424104C8995E8FEFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700D004000048891425704F3D014C8B95F8FEFFFF4C8950084C8B95E8FEFFFF4C8B8DF0FEFFFF41F6420401741D41524151504C89D74C89CE4889C249C7C380DEB20041FFD3584159415A4B8944CA10488B0425A0536B024883E80448890425A0536B024883F8000F8C000000004C89B538FFFFFF4D89FE4C89A500FFFFFF4D89EFE9A0FEFFFF488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA560FEFFFF4889BD70FFFFFF4889B568FFFFFF48899560FFFFFF48898D58FFFFFF4D89C74C898D50FFFFFF4C8B5D104C899D48FFFFFF4C8B5D184C899D40FFFFFF4C8B5D204C899D38FFFFFF4C8B5D284C899D30FFFFFF4C8B5D304D89DE4C8B5D384C899D28FFFFFF4C8B5D404C899D20FFFFFF4C8B5D484C899D18FFFFFF4C8B5D504C899D10FFFFFF4C8B5D584C899D08FFFFFF4C8B5D604C899D00FFFFFFE9CAFDFFFF49BB00905BB6A07F000041FFD344405C3968484C505458603D033C00000049BB00905BB6A07F000041FFD3444074484C50545838603507033D00000049BB45905BB6A07F000041FFD34440810130484C50545838607C3507033E00000049BB00905BB6A07F000041FFD34440484C505458386035033F000000
+[4caca6bf7b89] jit-backend-dump}
+[4caca6bf857d] {jit-backend-addr
+Loop #4 (<code object inlined_str_stuff, file 'source.py', line 40> #13 FOR_ITER) has address 7fa0b65bafff to 7fa0b65bb15f (bootstrap 7fa0b65bae6a)
+[4caca6bf97cf] jit-backend-addr}
+[4caca6bfa0ad] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bae7a +0  60FEFFFF
+[4caca6bfad9b] jit-backend-dump}
+[4caca6bfb47b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb026 +0  0B020000
+[4caca6bfbdd5] jit-backend-dump}
+[4caca6bfc367] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb097 +0  D6010000
+[4caca6bfcc49] jit-backend-dump}
+[4caca6bfd1b9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb142 +0  4C010000
+[4caca6bfdc6b] jit-backend-dump}
+[4caca6bfe3b7] jit-backend}
+[4caca6bff1d3] {jit-log-opt-loop
+# Loop 4 : loop with 30 ops
+[p0, p1, p2, p3, i4, p5, p6, p7, p8, p9, i10, i11, p12, i13, i14, p15, p16]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
 +435: i17 = int_ge(i10, i11)
-guard_false(i17, descr=<Guard24>) [p1, p0, p5, i10, p12, p2, p3, p4, p6, p8, p9, i7]
+guard_false(i17, descr=<Guard60>) [p1, p0, p8, i10, p12, p2, p3, p5, p6, p7, p9, i4]
 +448: i18 = int_mul(i10, i13)
 +459: i19 = int_add(i14, i18)
 +469: i21 = int_add(i10, 1)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #16 STORE_FAST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #19 LOAD_GLOBAL')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #22 LOAD_FAST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #25 CALL_FUNCTION')
-+473: setfield_gc(p5, i21, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+484: guard_not_invalidated(, descr=<Guard25>) [p1, p0, p15, p2, p3, p4, p5, p6, p8, p9, i19, None]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #16 STORE_FAST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #19 LOAD_GLOBAL')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #22 LOAD_FAST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #25 CALL_FUNCTION')
++473: setfield_gc(p8, i21, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++484: guard_not_invalidated(, descr=<Guard61>) [p1, p0, p15, p2, p3, p5, p6, p7, p8, p9, i19, None]
 +484: p24 = call(ConstClass(ll_int_str__IntegerR_SignedConst_Signed), i19, descr=<GcPtrCallDescr>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #28 LIST_APPEND')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #28 LIST_APPEND')
 +497: i25 = getfield_gc(p16, descr=<SignedFieldDescr list.length 8>)
 +509: i27 = int_add(i25, 1)
 +516: call(ConstClass(_ll_list_resize_ge__listPtr_Signed), p16, i27, descr=<VoidCallDescr>)
-+546: guard_no_exception(, descr=<Guard26>) [p1, p0, i25, p16, p2, p3, p4, p5, p6, p8, p9, p24, i19, None]
++546: guard_no_exception(, descr=<Guard62>) [p1, p0, i25, p16, p2, p3, p5, p6, p7, p8, p9, p24, i19, None]
 +561: p29 = getfield_gc(p16, descr=<GcPtrFieldDescr list.items 16>)
 +566: p31 = new_with_vtable(ConstClass(W_StringObject))
 +636: setfield_gc(p31, p24, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
 setarrayitem_gc(p29, i25, p31, descr=<GcPtrArrayDescr>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #31 JUMP_ABSOLUTE')
-+702: i33 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #31 JUMP_ABSOLUTE')
++702: i33 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 +710: i35 = int_sub(i33, 4)
-+714: setfield_raw(40681184, i35, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++714: setfield_raw(40588192, i35, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 +722: i37 = int_lt(i35, 0)
-guard_false(i37, descr=<Guard27>) [p1, p0, p2, p3, p4, p5, p6, p8, p9, i19]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #13 FOR_ITER')
-+732: jump(p0, p1, p2, p3, p4, p5, p6, i19, p8, p9, i21, i11, p12, i13, i14, p15, p16, descr=<Loop3>)
+guard_false(i37, descr=<Guard63>) [p1, p0, p2, p3, p5, p6, p7, p8, p9, i19]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
++732: jump(p0, p1, p2, p3, i19, p5, p6, p7, p8, p9, i21, i11, p12, i13, i14, p15, p16, descr=<Loop4>)
 +757: --end of the loop--
-[1af179c9ab950] jit-log-opt-loop}
-[1af179cc419a7] {jit-log-opt-loop
-# Loop 4 : entry bridge with 56 ops
+[4caca6c22a91] jit-log-opt-loop}
+[4caca6c25811] {jit-backend
+[4caca6e7f105] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb30f +0  554889E5534154415541564157488DA5000000004C8B3C2590C2540148C7042590C25401000000004C8B342598C2540148C7042598C25401000000004C8B2C25A0C2540148C70425A0C25401000000004C8B2425A8C2540148C70425A8C25401000000004C8B1425D04D5B014C8B0C25B8C2540148C70425B8C25401000000004C8B0425E04D5B01488B3C25E84D5B01488B3425D0C2540148C70425D0C2540100000000488B1C25D8C2540148C70425D8C2540100000000488B1425E0C2540148C70425E0C2540100000000488B0C25E8C2540148C70425E8C2540100000000488B0425F0C2540148C70425F0C254010000000048898570FFFFFF488B0425F8C2540148C70425F8C254010000000048898568FFFFFF488B042500C3540148C7042500C354010000000048898560FFFFFF488B042508C3540148C7042508C354010000000048898558FFFFFF49BB68A0CFB8A07F0000498B034883C00149BB68A0CFB8A07F00004989034983F8050F8500000000488BBD70FFFFFF813FD03000000F85000000004C8B47104D85C00F8400000000488B47084C89BD50FFFFFF4D8B78204D85FF0F85000000004D8B78084C39F80F8D0000000048899D48FFFFFF498B581048899D40FFFFFF498B581848898538FFFFFF480FAFC348899D30FFFFFF488B9D40FFFFFF4801C3488B8538FFFFFF4883C001488947084983FA000F850000000049BBF8F477B6A07F00004D39DC0F85000000004C8BA550FFFFFF498B74240849BBA0217CB6A07F00004C39DE0F85000000004C8B56104981FAC07446010F850000000049BBF85371B6A07F0000498B334885F60F8500000000488B342508DF45014881FE706A49010F85000000004C8B56104981FAC07446010F8500000000488B3425B8B55D014881FE007D44010F8500000000488B342548A85A0148898D28FFFFFF48899520FFFFFF48898518FFFFFF4C898510FFFFFF4C898D08FFFFFF4889B500FFFFFF4889DF49C7C31061B70041FFD3488BB528FFFFFF4C8B4E084D8B41084C89C74983C001488985F8FEFFFF4889BDF0FEFFFF4C898DE8FEFFFF4C89CF4C89C649C7C3C07FB50041FFD348833C2550546B02000F85000000004C8B85E8FEFFFF4D8B48104C898DE0FEFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700D004000048891425704F3D014C8B95F8FEFFFF4C8950084C8B95E0FEFFFF4C8B8DF0FEFFFF41F6420401741D41514152504C89D74C89CE4889C249C7C380DEB20041FFD358415A41594B8944CA10488B0425A0536B024883E80448890425A0536B024883F8000F8C000000004C89B568FFFFFF4C89AD60FFFFFF488B8548FFFFFF48898550FFFFFF488B8520FFFFFF48898548FFFFFF488B8570FFFFFF48898538FFFFFF4C8BB518FFFFFF488B8510FFFFFF48898520FFFFFF488B8530FFFFFF48898518FFFFFF488B8540FFFFFF48898510FFFFFF4C89A570FFFFFF488B8528FFFFFF48898540FFFFFF488B8558FFFFFF48898530FFFFFF4C89BD28FFFFFF488B8508FFFFFF48898558FFFFFF4989DF488B8500FFFFFF48898508FFFFFF488B85E8FEFFFF48898500FFFFFF49BBFFAF5BB6A07F000041FFE3488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA550FEFFFF4989FF4989F64989D54989CC4D89C24C8B5D104D89D84C8B5D184C89DF4C8B5D204C89DE4C8B5D284C89DB4C8B5D304C89DA4C8B5D384C89D94C8B5D404C899D70FFFFFF4C8B5D484C899D68FFFFFF4C8B5D504C899D60FFFFFF4C8B5D584C899D58FFFFFFE90DFCFFFF49BB00905BB6A07F000041FFD321383C343029241D180C08044044484C034000000049BB00905BB6A07F000041FFD3383C1C34302924180C080444484C034100000049BB00905BB6A07F000041FFD3383C1C2034302924180C080444484C034200000049BB00905BB6A07F000041FFD338501C01203C34302924180C080444484C034300000049BB00905BB6A07F000041FFD338501C012034302924180C080444484C034400000049BB00905BB6A07F000041FFD3293850343024185408041C484C0D034500000049BB00905BB6A07F000041FFD338503034245408041C484C0D034600000049BB00905BB6A07F000041FFD338301834245408041C484C0D034700000049BB00905BB6A07F000041FFD33830281834245408041C484C0D034800000049BB00905BB6A07F000041FFD338301834245408041C484C0D034900000049BB00905BB6A07F000041FFD338301834245408041C484C0D034A00000049BB00905BB6A07F000041FFD33830281834245408041C484C0D034B00000049BB00905BB6A07F000041FFD338301834245408041C484C0D034C00000049BB00905BB6A07F000041FFD338301834245408041C4C0D034D00000049BB45905BB6A07F000041FFD33830810184013474546864404C7C0D034E00000049BB00905BB6A07F000041FFD338303474546864404C0D034F000000
+[4caca6e926f2] jit-backend-dump}
+[4caca6e930e2] {jit-backend-addr
+Loop #5 (<code object inlined_str_stuff, file 'source.py', line 40> #13 FOR_ITER) has address 7fa0b65bb45b to 7fa0b65bb7ae (bootstrap 7fa0b65bb30f)
+[4caca6e94267] jit-backend-addr}
+[4caca6e94a6e] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb31f +0  50FEFFFF
+[4caca6e95923] jit-backend-dump}
+[4caca6e96085] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb47f +0  CB030000
+[4caca6e96c46] jit-backend-dump}
+[4caca6e97240] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb492 +0  DA030000
+[4caca6e97cfc] jit-backend-dump}
+[4caca6e981a9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb49f +0  ED030000
+[4caca6e98be1] jit-backend-dump}
+[4caca6e9906d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb4b7 +0  F6030000
+[4caca6e999f7] jit-backend-dump}
+[4caca6e99f88] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb4c4 +0  0C040000
+[4caca6e9aaa1] jit-backend-dump}
+[4caca6e9afd8] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb50f +0  E3030000
+[4caca6e9bb90] jit-backend-dump}
+[4caca6e9c025] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb522 +0  F0030000
+[4caca6e9c9ac] jit-backend-dump}
+[4caca6e9ce29] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb541 +0  EF030000
+[4caca6e9d7b0] jit-backend-dump}
+[4caca6e9dc45] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb552 +0  FC030000
+[4caca6e9e848] jit-backend-dump}
+[4caca6e9edeb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb568 +0  05040000
+[4caca6e9f91f] jit-backend-dump}
+[4caca6e9fd9c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb57d +0  0E040000
+[4caca6ea0723] jit-backend-dump}
+[4caca6ea0b9d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb58e +0  1B040000
+[4caca6ea1524] jit-backend-dump}
+[4caca6ea19b6] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb5a3 +0  25040000
+[4caca6ea233d] jit-backend-dump}
+[4caca6ea29f4] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb62c +0  D7030000
+[4caca6ea34fe] jit-backend-dump}
+[4caca6ea53b3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bb6dd +0  47030000
+[4caca6ea5e3b] jit-backend-dump}
+[4caca6ea646b] jit-backend}
+[4caca6ea7139] {jit-log-opt-loop
+# Loop 5 : entry bridge with 56 ops
 [p0, p1, p2, p3, i4, p5, i6, i7, p8, p9, p10, p11, p12, p13, p14, p15]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #13 FOR_ITER')
-+362: guard_value(i6, 2, descr=<Guard28>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11, p12, p13, p14, p15]
-+372: guard_class(p9, 21012688, descr=<Guard29>) [p1, p0, p9, p2, p3, i4, p5, p8, p10, p11, p12, p13, p14, p15]
-+384: p18 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
-+388: guard_nonnull(p18, descr=<Guard30>) [p1, p0, p9, p18, p2, p3, i4, p5, p8, p10, p11, p12, p13, p14, p15]
-+397: i19 = getfield_gc(p9, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+401: p20 = getfield_gc(p18, descr=<GcPtrFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_w_list 32>)
-+405: guard_isnull(p20, descr=<Guard31>) [p1, p0, p9, i19, p18, p20, p2, p3, i4, p5, p8, p10, p11, p12, p13, p14, p15]
-+414: i21 = getfield_gc(p18, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_length 8>)
-+418: i22 = int_ge(i19, i21)
-guard_false(i22, descr=<Guard32>) [p1, p0, p9, i19, p18, p2, p3, i4, p5, p8, p10, p11, p12, p13, p14, p15]
-+427: i23 = getfield_gc(p18, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_start 16>)
-+431: i24 = getfield_gc(p18, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_step 24>)
-+442: i25 = int_mul(i19, i24)
-+453: i26 = int_add(i23, i25)
-+463: i28 = int_add(i19, 1)
-+474: setfield_gc(p9, i28, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+478: guard_value(i4, 0, descr=<Guard33>) [i4, p1, p0, p2, p3, p5, p8, p9, p11, p12, p13, p14, p15, i26]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #16 STORE_FAST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #19 LOAD_GLOBAL')
-+488: guard_value(p3, ConstPtr(ptr30), descr=<Guard34>) [p1, p0, p3, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-+507: p31 = getfield_gc(p0, descr=<GcPtrFieldDescr pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+519: guard_value(p31, ConstPtr(ptr32), descr=<Guard35>) [p1, p0, p31, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-+538: p33 = getfield_gc(p31, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+549: guard_isnull(p33, descr=<Guard36>) [p1, p0, p33, p31, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-+558: p35 = getfield_gc(ConstPtr(ptr34), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+571: guard_isnull(p35, descr=<Guard37>) [p1, p0, p35, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-+580: p37 = getfield_gc(ConstPtr(ptr36), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
-+588: guard_value(p37, ConstPtr(ptr38), descr=<Guard38>) [p1, p0, p37, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-+601: p39 = getfield_gc(p37, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+605: guard_isnull(p39, descr=<Guard39>) [p1, p0, p39, p37, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-+614: p41 = getfield_gc(ConstPtr(ptr40), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+622: guard_value(p41, ConstPtr(ptr42), descr=<Guard40>) [p1, p0, p41, p2, p5, p8, p9, p11, p12, p14, p15, i26]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #22 LOAD_FAST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #25 CALL_FUNCTION')
-+635: p44 = getfield_gc(ConstPtr(ptr43), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+643: guard_not_invalidated(, descr=<Guard41>) [p1, p0, p44, p2, p5, p8, p9, p12, p14, p15, i26]
-+643: p46 = call(ConstClass(ll_int_str__IntegerR_SignedConst_Signed), i26, descr=<GcPtrCallDescr>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #28 LIST_APPEND')
-+705: p47 = getfield_gc(p8, descr=<GcPtrFieldDescr pypy.objspace.std.listobject.W_ListObject.inst_wrappeditems 8>)
-+716: i48 = getfield_gc(p47, descr=<SignedFieldDescr list.length 8>)
-+720: i50 = int_add(i48, 1)
-+727: call(ConstClass(_ll_list_resize_ge__listPtr_Signed), p47, i50, descr=<VoidCallDescr>)
-+764: guard_no_exception(, descr=<Guard42>) [p1, p0, i48, p47, p2, p5, p8, p9, p12, p14, p15, p46, i26]
-+779: p52 = getfield_gc(p47, descr=<GcPtrFieldDescr list.items 16>)
-+790: p54 = new_with_vtable(ConstClass(W_StringObject))
-+860: setfield_gc(p54, p46, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
-setarrayitem_gc(p52, i48, p54, descr=<GcPtrArrayDescr>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #31 JUMP_ABSOLUTE')
-+926: i56 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+934: i58 = int_sub(i56, 4)
-+938: setfield_raw(40681184, i58, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+946: i60 = int_lt(i58, 0)
-guard_false(i60, descr=<Guard43>) [p1, p0, p2, p5, p8, p9, p12, p14, p15, i26]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #13 FOR_ITER')
-+956: jump(p0, p1, p2, p5, p8, p9, p12, i26, p14, p15, i28, i21, p18, i24, i23, p44, p47, descr=<Loop3>)
-+1149: --end of the loop--
-[1af179cc8cec7] jit-log-opt-loop}
-[1af179d0cacd1] {jit-log-opt-loop
-# Loop 5 : entry bridge with 10 ops
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
++362: guard_value(i6, 5, descr=<Guard64>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11, p12, p13, p14, p15]
++372: guard_class(p12, 20808496, descr=<Guard65>) [p1, p0, p12, p2, p3, i4, p5, p8, p9, p10, p11, p13, p14, p15]
++391: p18 = getfield_gc(p12, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_w_seq 16>)
++395: guard_nonnull(p18, descr=<Guard66>) [p1, p0, p12, p18, p2, p3, i4, p5, p8, p9, p10, p11, p13, p14, p15]
++404: i19 = getfield_gc(p12, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++408: p20 = getfield_gc(p18, descr=<GcPtrFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_w_list 32>)
++419: guard_isnull(p20, descr=<Guard67>) [p1, p0, p12, i19, p18, p20, p2, p3, i4, p5, p8, p9, p10, p11, p13, p14, p15]
++428: i21 = getfield_gc(p18, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_length 8>)
++432: i22 = int_ge(i19, i21)
+guard_false(i22, descr=<Guard68>) [p1, p0, p12, i19, p18, p2, p3, i4, p5, p8, p9, p10, p11, p13, p14, p15]
++441: i23 = getfield_gc(p18, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_start 16>)
++452: i24 = getfield_gc(p18, descr=<SignedFieldDescr pypy.objspace.std.rangeobject.W_RangeListObject.inst_step 24>)
++463: i25 = int_mul(i19, i24)
++474: i26 = int_add(i23, i25)
++491: i28 = int_add(i19, 1)
++502: setfield_gc(p12, i28, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++506: guard_value(i4, 0, descr=<Guard69>) [i4, p1, p0, p2, p3, p5, p8, p9, p10, p11, p12, p14, p15, i26]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #16 STORE_FAST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #19 LOAD_GLOBAL')
++516: guard_value(p3, ConstPtr(ptr30), descr=<Guard70>) [p1, p0, p3, p2, p5, p9, p10, p11, p12, p14, p15, i26]
++535: p31 = getfield_gc(p0, descr=<GcPtrFieldDescr pypy.interpreter.eval.Frame.inst_w_globals 8>)
++547: guard_value(p31, ConstPtr(ptr32), descr=<Guard71>) [p1, p0, p31, p2, p5, p9, p10, p11, p12, p14, p15, i26]
++566: p33 = getfield_gc(p31, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++570: guard_value(p33, ConstPtr(ptr34), descr=<Guard72>) [p1, p0, p33, p31, p2, p5, p9, p10, p11, p12, p14, p15, i26]
++583: p36 = getfield_gc(ConstPtr(ptr35), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++596: guard_isnull(p36, descr=<Guard73>) [p1, p0, p36, p2, p5, p9, p10, p11, p12, p14, p15, i26]
++605: p38 = getfield_gc(ConstPtr(ptr37), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
++613: guard_value(p38, ConstPtr(ptr39), descr=<Guard74>) [p1, p0, p38, p2, p5, p9, p10, p11, p12, p14, p15, i26]
++626: p40 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++630: guard_value(p40, ConstPtr(ptr41), descr=<Guard75>) [p1, p0, p40, p38, p2, p5, p9, p10, p11, p12, p14, p15, i26]
++643: p43 = getfield_gc(ConstPtr(ptr42), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++651: guard_value(p43, ConstPtr(ptr44), descr=<Guard76>) [p1, p0, p43, p2, p5, p9, p10, p11, p12, p14, p15, i26]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #22 LOAD_FAST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #25 CALL_FUNCTION')
++664: p46 = getfield_gc(ConstPtr(ptr45), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++672: guard_not_invalidated(, descr=<Guard77>) [p1, p0, p46, p2, p5, p9, p10, p11, p12, p15, i26]
++672: p48 = call(ConstClass(ll_int_str__IntegerR_SignedConst_Signed), i26, descr=<GcPtrCallDescr>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #28 LIST_APPEND')
++727: p49 = getfield_gc(p11, descr=<GcPtrFieldDescr pypy.objspace.std.listobject.W_ListObject.inst_wrappeditems 8>)
++738: i50 = getfield_gc(p49, descr=<SignedFieldDescr list.length 8>)
++742: i52 = int_add(i50, 1)
++749: call(ConstClass(_ll_list_resize_ge__listPtr_Signed), p49, i52, descr=<VoidCallDescr>)
++786: guard_no_exception(, descr=<Guard78>) [p1, p0, i50, p49, p2, p5, p9, p10, p11, p12, p15, p48, i26]
++801: p54 = getfield_gc(p49, descr=<GcPtrFieldDescr list.items 16>)
++812: p56 = new_with_vtable(ConstClass(W_StringObject))
++882: setfield_gc(p56, p48, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
+setarrayitem_gc(p54, i50, p56, descr=<GcPtrArrayDescr>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #31 JUMP_ABSOLUTE')
++948: i58 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++956: i60 = int_sub(i58, 4)
++960: setfield_raw(40588192, i60, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++968: i62 = int_lt(i60, 0)
+guard_false(i62, descr=<Guard79>) [p1, p0, p2, p5, p9, p10, p11, p12, p15, i26]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #13 FOR_ITER')
++978: jump(p0, p1, p2, p5, i26, p9, p10, p11, p12, p15, i28, i21, p18, i24, i23, p46, p49, descr=<Loop4>)
++1183: --end of the loop--
+[4caca6ee826b] jit-log-opt-loop}
+[4caca7252489] {jit-backend
+[4caca726cc63] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bba44 +0  554889E5534154415541564157488DA5000000004C8B3C25B04D5B014C8B342598C2540148C7042598C254010000000049BB70A0CFB8A07F00004D8B2B4983C50149BB70A0CFB8A07F00004D892B4D8B6E404F0FB66C3D184983FD330F85000000004D89FD4983C7014D897E1849C74620000000004D896E2848C7C00100000048890425B04D5B0149C7C340BC920041FFD348C7C001000000488D65D8415F415E415D415C5B5DC3488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA570FFFFFF4989FF4989F6E947FFFFFF49BB00905BB6A07F000041FFD33D380350000000
+[4caca727040f] jit-backend-dump}
+[4caca7270a0d] {jit-backend-addr
+Loop #6 (StrLiteralSearch at 11/51 [17, 8, 3, 1, 1, 1, 1, 51, 0, 19, 51, 1]) has address 7fa0b65bba74 to 7fa0b65bbaec (bootstrap 7fa0b65bba44)
+[4caca72717af] jit-backend-addr}
+[4caca7271eeb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bba54 +0  70FFFFFF
+[4caca7273019] jit-backend-dump}
+[4caca72738af] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbaa2 +0  87000000
+[4caca72746b5] jit-backend-dump}
+[4caca7274fab] jit-backend}
+[4caca7275aaf] {jit-log-opt-loop
+# Loop 6 : entry bridge with 10 ops
 [i0, p1]
 debug_merge_point(0, 'StrLiteralSearch at 11/51 [17. 8. 3. 1. 1. 1. 1. 51. 0. 19. 51. 1]')
 +78: p2 = getfield_gc(p1, descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
 +82: i3 = strgetitem(p2, i0)
 +88: i5 = int_eq(i3, 51)
-guard_true(i5, descr=<Guard44>) [i0, p1]
+guard_true(i5, descr=<Guard80>) [i0, p1]
 +98: i7 = int_add(i0, 1)
 +105: setfield_gc(p1, i7, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_end 24>)
 +109: setfield_gc(p1, ConstPtr(ptr8), descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_marks 32>)
 +117: setfield_gc(p1, i0, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_match_start 40>)
-+121: finish(1, descr=<DoneWithThisFrameDescrInt object at 0x153dd00>)
++121: finish(1, descr=<DoneWithThisFrameDescrInt object at 0x1508560>)
 +168: --end of the loop--
-[1af179d0da7b8] jit-log-opt-loop}
-[1af179d281c59] {jit-log-opt-bridge
-# bridge out of Guard 44 with 6 ops
+[4caca72833af] jit-log-opt-loop}
+[4caca73ec6b9] {jit-backend
+[4caca73feba1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbb41 +0  488DA50000000049BB78A0CFB8A07F00004D8B2B4983C50149BB78A0CFB8A07F00004D892B4983C7014D8B6E084D39EF0F8D0000000049BB74BA5BB6A07F000041FFE349BB00905BB6A07F000041FFD33D380351000000
+[4caca7401165] jit-backend-dump}
+[4caca74017bb] {jit-backend-addr
+Bridge out of guard 80 has address 7fa0b65bbb41 to 7fa0b65bbb84
+[4caca7402331] jit-backend-addr}
+[4caca740291b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbb44 +0  70FFFFFF
+[4caca7403451] jit-backend-dump}
+[4caca7403a29] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbb73 +0  0D000000
+[4caca740430b] jit-backend-dump}
+[4caca7404bf1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbaa2 +0  9B000000
+[4caca74054b5] jit-backend-dump}
+[4caca7405a91] jit-backend}
+[4caca7406281] {jit-log-opt-bridge
+# bridge out of Guard 80 with 6 ops
 [i0, p1]
 +37: i3 = int_add(i0, 1)
 +41: i4 = getfield_gc_pure(p1, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_end 8>)
 +45: i5 = int_lt(i3, i4)
-guard_true(i5, descr=<Guard45>) [i3, p1]
+guard_true(i5, descr=<Guard81>) [i3, p1]
 debug_merge_point(0, 'StrLiteralSearch at 11/51 [17. 8. 3. 1. 1. 1. 1. 51. 0. 19. 51. 1]')
-+54: jump(i3, p1, descr=<Loop5>)
++54: jump(i3, p1, descr=<Loop6>)
 +67: --end of the loop--
-[1af179d28ad65] jit-log-opt-bridge}
-[1af179d501794] {jit-log-opt-bridge
-# bridge out of Guard 45 with 1 ops
+[4caca740c999] jit-log-opt-bridge}
+[4caca77f59c2] {jit-backend
+[4caca780f57c] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbb98 +0  488DA50000000049BB80A0CFB8A07F00004D8B334983C60149BB80A0CFB8A07F00004D893348C7C00000000048890425B04D5B0149C7C340BC920041FFD348C7C001000000488D65D8415F415E415D415C5B5DC3
+[4caca782495a] jit-backend-dump}
+[4caca7826082] {jit-backend-addr
+Bridge out of guard 81 has address 7fa0b65bbb98 to 7fa0b65bbbec
+[4caca7827f7e] jit-backend-addr}
+[4caca7829178] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbb9b +0  70FFFFFF
+[4caca782b236] jit-backend-dump}
+[4caca782c3c4] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbb73 +0  21000000
+[4caca782e12e] jit-backend-dump}
+[4caca782efb6] jit-backend}
+[4caca78304da] {jit-log-opt-bridge
+# bridge out of Guard 81 with 1 ops
 [i0, p1]
-+37: finish(0, descr=<DoneWithThisFrameDescrInt object at 0x153dd00>)
++37: finish(0, descr=<DoneWithThisFrameDescrInt object at 0x1508560>)
 +84: --end of the loop--
-[1af179d5051db] jit-log-opt-bridge}
-[1af179fc93628] {jit-log-opt-loop
-# Loop 6 : loop with 201 ops
+[4caca78370ec] jit-log-opt-bridge}
+[4cacad3efadb] {jit-backend
+[4cacad6472d9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbd77 +0  554889E5534154415541564157488DA500000000488B042590C2540148C7042590C254010000000048898570FFFFFF488B042598C2540148C7042598C254010000000048898568FFFFFF488B0425A0C2540148C70425A0C254010000000048898560FFFFFF488B0425A8C2540148C70425A8C254010000000048898558FFFFFF488B0425B0C2540148C70425B0C254010000000048898550FFFFFF488B0425B8C2540148C70425B8C254010000000048898548FFFFFF4C8B3C25C0C2540148C70425C0C2540100000000488B0425C8C2540148C70425C8C254010000000048898540FFFFFF4C8B3425F04D5B01488B0425D8C2540148C70425D8C254010000000048898538FFFFFF488B0425E0C2540148C70425E0C254010000000048898530FFFFFF49BB88A0CFB8A07F00004D8B2B4983C50149BB88A0CFB8A07F00004D892B4C8BAD40FFFFFF4D8B65184D85E40F84000000004D8B55084D8B4C24084D39CA0F8D000000004D8B6424104F8B64D4104983C2014C8BBD70FFFFFF4D8B4F084D89550849BBA0217CB6A07F00004D39D90F85000000004D8B51104981FAC07446010F850000000049BB683A79B6A07F00004D8B0B4983F9017207418139C84000000F85000000004D8B510849BB904279B6A07F00004D39DA0F85000000004D8B42104981F8C07446010F850000000049BB883D79B6A07F00004D8B134983FA01720741813A082601000F85000000004983FC01720841813C24D00400000F85000000004D8B4A1849BB20F777B6A07F00004D39D90F85000000004D8B4A204D8B410848C7C7030000004C29C74883FF020F8F00000000498B7A404C89C64983E8014939F00F8D000000004F8B44C1104C8D8D78FFFFFF4983FE000F850000000049BB904279B6A07F00004C39DF0F85000000004C8B77104981FEC07446010F850000000049BB583C79B6A07F0000498B3B4883FF017206813F082601000F85000000004D85C00F84000000004C8B771849BB68F679B6A07F00004D39DE0F85000000004C8B7740488DB578FFFFFF49BB904279B6A07F00004D39DE0F8500000000498B5E104881FBC07446010F850000000049BBF877CEB8A07F00004D8B334D85F60F85000000004C8B342508DF45014981FE706A49010F8500000000498B5E104881FBC07446010F85000000004C8B3425E8B35D014981FE400244010F850000000049BB683B79B6A07F00004D8B334983FE01720741813E501800000F8500000000488B1C2568915201498B5E10813BE08701000F8500000000498B5E08488D9578FFFFFF48899528FFFFFF4889B520FFFFFF4889BD18FFFFFF4C898510FFFFFF4C898D08FFFFFF4C899500FFFFFF488B0425704F3D01488D5018483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700A816000048891425704F3D014C8B9520FFFFFF4C8950084C8B9538FFFFFF41F642040174165041524C89D74889C649C7C310734D0041FFD3415A58498942384C8B8D28FFFFFF4D894F18488985F8FEFFFF488B0425704F3D01488D5028483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7008800000048891425704F3D0148C740080300000048C74010007D440149BB303879B6A07F00004C8958184C8B9510FFFFFF4C89502048899DF0FEFFFF488985E8FEFFFF4C89B5E0FEFFFF4C89A5D8FEFFFF48C78578FFFFFF520000004889C749C7C300B2660041FFD34883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004C8DA578FFFFFF4C8BBD70FFFFFF4D896718488985D0FEFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700F016000048891425704F3D014C8B95E8FEFFFF4C895008488985C8FEFFFF48C78578FFFFFF53000000488BBDF0FEFFFF4889C6488B95D0FEFFFF49C7C3A0EE660041FFD34883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004989C749BB00000000000000804C21D84883F8000F8500000000488BBDF0FEFFFF4C89FE49C7C370DFB40041FFD348833C2550546B02000F85000000004883F80172068138D03903000F85000000004881F850EB44010F84000000004C8BBD38FFFFFF4D8B57484D85D20F85000000004D8B57284983FA000F85000000004C8B1425E8546D014C8B8DF8FEFFFF49C74108FDFFFFFF4C8B95D8FEFFFF4D8B4A084D8B411049BBFFFFFFFFFFFFFF7F4D39D80F8D00000000488B7810488B7018488B57104883FA110F8500000000488B57204889D14883E2014883FA000F8400000000488B4F384883F9010F8F00000000488B4F184883C101488B54CF104883FA130F85000000004889CA4883C101488B4CCF104883C2024983F8000F8E000000004883FA0B0F85000000004883F9330F850000000049BB2020C8B8A07F00004C39DF0F8500000000488DBD78FFFFFF488985C0FEFFFF4889B5B8FEFFFF4889BDB0FEFFFF4C8985A8FEFFFF4C898DA0FEFFFF488B0425704F3D01488D5018483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700A816000048891425704F3D014C8B9508FFFFFF4C89500841F64704017412504C89FF4889C649C7C310734D0041FFD358498947384C8B9570FFFFFF4C8B8DB0FEFFFF4D894A1848898598FEFFFF488B0425704F3D01488D5048483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700685D000048891425704F3D014C8B95A8FEFFFF4C8950084C8B95B8FEFFFF4C8950104C8B95A0FEFFFF4C89504049BB2020C8B8A07F00004C89583848898590FEFFFF48C78578FFFFFF5400000048C7C7000000004889C649BBECBA5BB6A07F000041FFD34883F80174164889C748C7C60000000049C7C3709CBD0041FFD3EB08488B0425B04D5B014883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004885C00F8400000000488B8538FFFFFF4C8B78484D85FF0F85000000004C8B78284983FF000F85000000004C8B1425A0536B024983EA3E4C891425A0536B024C8B8D30FFFFFFF6400401741A41514152504889C74C89CE49C7C310734D0041FFD358415A41594C8948384C8B8598FEFFFF49C74008FDFFFFFF4983FA000F8C000000004D89FE4C898D30FFFFFF4C8BBDD8FEFFFFE905F8FFFF488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA500FEFFFF4889BD70FFFFFF4889B568FFFFFF48899560FFFFFF48898D58FFFFFF4C898550FFFFFF4C898D48FFFFFF4C8B5D104D89DF4C8B5D184C899D40FFFFFF4C8B5D204D89DE4C8B5D284C899D38FFFFFF4C8B5D304C899D30FFFFFFE971F7FFFF49BB00905BB6A07F000041FFD344403430484C50543C035500000049BB00905BB6A07F000041FFD34440342930484C50543C035600000049BB00905BB6A07F000041FFD3443C24484C50543034035700000049BB00905BB6A07F000041FFD3443C2824484C50543034035800000049BB00905BB6A07F000041FFD3443C24484C50543034035900000049BB00905BB6A07F000041FFD3443C2428484C50543034035A00000049BB00905BB6A07F000041FFD3443C242028484C50543034035B00000049BB00905BB6A07F000041FFD3443C2824484C50543034035C00000049BB00905BB6A07F000041FFD3443C30484C50543428035D00000049BB00905BB6A07F000041FFD3443C2428484C50543034035E00000049BB00905BB6A07F000041FFD3443C28484C50543034035F00000049BB00905BB6A07F000041FFD3443C192128484C505430341C036000000049BB00905BB6A07F000041FFD3443C5C484C50543034286020251C036100000049BB00905BB6A07F000041FFD3443C5C1C484C505430342860202507036200000049BB00905BB6A07F000041FFD3443C5C381C484C505430342860202507036300000049BB00905BB6A07F000041FFD3443C5C1C484C505430342860202507036400000049BB00905BB6A07F000041FFD3443C5C20484C50543034281C60072507036500000049BB00905BB6A07F000041FFD3443C5C381C484C50543034280760202507036600000049BB00905BB6A07F000041FFD3443C5C38484C5054303428191C60202507036700000049BB00905BB6A07F000041FFD3443C5C0C38484C5054303428191C60202507036800000049BB00905BB6A07F000041FFD3443C5C38484C5054303428191C60202507036900000049BB00905BB6A07F000041FFD3443C5C38484C5054303428191C60202507036A00000049BB00905BB6A07F000041FFD3443C5C0C38484C5054303428191C60202507036B00000049BB00905BB6A07F000041FFD3443C5C38484C5054303428191C60202507036C00000049BB00905BB6A07F000041FFD3443C5C38484C5054303428191C60202507036D00000049BB00905BB6A07F000041FFD3443C5C0C484C505430342838191C60202507036E00000049BB00905BB6A07F000041FFD3443C5C380C484C505430342807191C60202507036F00000049BB45905BB6A07F000041FFD344405C88018001017C484C50548C01587860840170756C035200000049BB45905BB6A07F000041FFD344405C88018001017C484C50548C01587860840170756C037000000049BB45905BB6A07F000041FFD344405C940188010180017C484C50548C01587860706C75035300000049BB45905BB6A07F000041FFD344405C940188010180017C484C50548C01587860706C75037100000049BB00905BB6A07F000041FFD344405C940188013D80017C484C50548C01587860706C75037200000049BB45905BB6A07F000041FFD344405C94018801007C484C50548C01587860706C75037300000049BB00905BB6A07F000041FFD344405C94018801007C484C50548C01587860706C75037400000049BB00905BB6A07F000041FFD344405C7C484C50548C01587894010060706C75037500000049BB00905BB6A07F000041FFD344403C00287C484C50548C01587894010760706C75037600000049BB00905BB6A07F000041FFD344403C007C484C50548C01587894010760706C75037700000049BB00905BB6A07F000041FFD344403C28484C50548C015878070060700775037800000049BB00905BB6A07F000041FFD344403C0024484C5054285878070760700775037900000049BB00905BB6A07F000041FFD344403C00484C5054285878211C1924070760700775037A00000049BB00905BB6A07F000041FFD344403C0005484C5054285878211C1924070760700775037B00000049BB00905BB6A07F000041FFD344403C00484C5054285878211C1924070760700775037C00000049BB00905BB6A07F000041FFD344403C0005484C5054285878211C1924070760700775037D00000049BB00905BB6A07F000041FFD344403C000509484C5054285878211C1924070760700775037E00000049BB00905BB6A07F000041FFD344403C0005091C484C505428587821071924070760700775037F00000049BB00905BB6A07F000041FFD344403C00051C484C505428587821071924070760700775038000000049BB00905BB6A07F000041FFD344403C001C484C505428587821071924070760700775038100000049BB45905BB6A07F000041FFD344405C9801B00101AC01484C50548C0158786070035400000049BB45905BB6A07F000041FFD344405C9801B00101AC01484C50548C0158786070038200000049BB00905BB6A07F000041FFD344405C9801B001AC01484C50548C0158786070038300000049BB00905BB6A07F000041FFD34440003CAC01484C50548C0158789801B0016070038400000049BB00905BB6A07F000041FFD3444000AC01484C50548C0158789801B0016070038500000049BB00905BB6A07F000041FFD34440484C50548C0158070707070386000000
+[4cacad697d75] jit-backend-dump}
+[4cacad699617] {jit-backend-addr
+Loop #7 (<code object inlined_str_stuff, file 'source.py', line 40> #44 FOR_ITER) has address 7fa0b65bbe9a to 7fa0b65bc695 (bootstrap 7fa0b65bbd77)
+[4cacad69bef7] jit-backend-addr}
+[4cacad69d3df] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbd87 +0  00FEFFFF
+[4cacad69f335] jit-backend-dump}
+[4cacad6a04db] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbec8 +0  5D080000
+[4cacad6a1abf] jit-backend-dump}
+[4cacad6a253f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbeda +0  66080000
+[4cacad6a3a21] jit-backend-dump}
+[4cacad6a43ff] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf0a +0  52080000
+[4cacad6a583f] jit-backend-dump}
+[4cacad6a6397] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf1b +0  5C080000
+[4cacad6a78f1] jit-backend-dump}
+[4cacad6a840d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf3b +0  58080000
+[4cacad6a997f] jit-backend-dump}
+[4cacad6aa327] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf52 +0  5C080000
+[4cacad6ab73d] jit-backend-dump}
+[4cacad6ac0d9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf63 +0  67080000
+[4cacad6ad4ef] jit-backend-dump}
+[4cacad6ade9d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf83 +0  64080000
+[4cacad6af3d3] jit-backend-dump}
+[4cacad6afe83] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbf97 +0  6C080000
+[4cacad6b14c7] jit-backend-dump}
+[4cacad6b1e63] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbfae +0  70080000
+[4cacad6b3285] jit-backend-dump}
+[4cacad6b3c1b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbfca +0  70080000
+[4cacad6b502b] jit-backend-dump}
+[4cacad6b59e5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbfde +0  77080000
+[4cacad6b6df5] jit-backend-dump}
+[4cacad6b78d5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bbff4 +0  7F080000
+[4cacad6b8e65] jit-backend-dump}
+[4cacad6b9933] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc007 +0  8C080000
+[4cacad6bae2d] jit-backend-dump}
+[4cacad6bb7e7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc018 +0  9C080000
+[4cacad6bcbf7] jit-backend-dump}
+[4cacad6bd58d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc037 +0  9F080000
+[4cacad6be9a9] jit-backend-dump}
+[4cacad6bf345] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc040 +0  B7080000
+[4cacad6c6e0f] jit-backend-dump}
+[4cacad6c7d0f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc057 +0  C2080000
+[4cacad6c9485] jit-backend-dump}
+[4cacad6c9fe9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc075 +0  C7080000
+[4cacad6cb4bf] jit-backend-dump}
+[4cacad6cbebb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc086 +0  D9080000
+[4cacad6cd319] jit-backend-dump}
+[4cacad6cdcd3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc09c +0  E7080000
+[4cacad6cf10d] jit-backend-dump}
+[4cacad6cfaf7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc0b1 +0  F5080000
+[4cacad6d1177] jit-backend-dump}
+[4cacad6d1c81] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc0c2 +0  07090000
+[4cacad6d31bd] jit-backend-dump}
+[4cacad6d3b8f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc0d7 +0  16090000
+[4cacad6d4fc9] jit-backend-dump}
+[4cacad6d5971] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc0f7 +0  19090000
+[4cacad6d6dab] jit-backend-dump}
+[4cacad6d7aa1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc10f +0  48090000
+[4cacad6d90df] jit-backend-dump}
+[4cacad6d9bb9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc272 +0  0A080000
+[4cacad6db179] jit-backend-dump}
+[4cacad6dbcfb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc281 +0  24080000
+[4cacad6dd18f] jit-backend-dump}
+[4cacad6ddc2d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc31f +0  AF070000
+[4cacad6df061] jit-backend-dump}
+[4cacad6dfa27] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc32e +0  C9070000
+[4cacad6e0e67] jit-backend-dump}
+[4cacad6e1959] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc348 +0  D8070000
+[4cacad6e2f85] jit-backend-dump}
+[4cacad6e3abf] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc36b +0  DE070000
+[4cacad6e4fdd] jit-backend-dump}
+[4cacad6e59c7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc37d +0  F3070000
+[4cacad6e6e07] jit-backend-dump}
+[4cacad6e77cd] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc38a +0  0D080000
+[4cacad6e8c19] jit-backend-dump}
+[4cacad6e95f7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc39e +0  1E080000
+[4cacad6eac77] jit-backend-dump}
+[4cacad6eb75d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc3ac +0  37080000
+[4cacad6ecc9f] jit-backend-dump}
+[4cacad6ed74f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc3e5 +0  48080000
+[4cacad6eeb95] jit-backend-dump}
+[4cacad6ef54f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc3fb +0  56080000
+[4cacad6f0989] jit-backend-dump}
+[4cacad6f1355] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc410 +0  68080000
+[4cacad6f290f] jit-backend-dump}
+[4cacad6f3431] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc41e +0  82080000
+[4cacad6f4985] jit-backend-dump}
+[4cacad6f5507] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc435 +0  92080000
+[4cacad6f6941] jit-backend-dump}
+[4cacad6f72f5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc44f +0  A0080000
+[4cacad6f8735] jit-backend-dump}
+[4cacad6f90f5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc459 +0  BF080000
+[4cacad6fa529] jit-backend-dump}
+[4cacad6fb07b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc463 +0  DF080000
+[4cacad6fc6c5] jit-backend-dump}
+[4cacad6fd175] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc476 +0  F5080000
+[4cacad6fe6e1] jit-backend-dump}
+[4cacad6ff0a1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc5e9 +0  AA070000
+[4cacad7004db] jit-backend-dump}
+[4cacad704bfd] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc5f8 +0  C1070000
+[4cacad706457] jit-backend-dump}
+[4cacad706fd9] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc601 +0  DE070000
+[4cacad708581] jit-backend-dump}
+[4cacad709097] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc615 +0  EF070000
+[4cacad70a645] jit-backend-dump}
+[4cacad70b113] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc623 +0  07080000
+[4cacad70c59b] jit-backend-dump}
+[4cacad70cf55] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bc67b +0  D4070000
+[4cacad70e311] jit-backend-dump}
+[4cacad70f2dd] jit-backend}
+[4cacad71126f] {jit-log-opt-loop
+# Loop 7 : loop with 202 ops
 [p0, p1, p2, p3, p4, p5, p6, p7, i8, p9, p10]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #44 FOR_ITER')
-+321: p11 = getfield_gc(p4, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_FastListIterObject.inst_listitems 24>)
-+332: guard_nonnull(p11, descr=<Guard49>) [p1, p0, p4, p11, p2, p3, p5, p6, p7]
-+341: i12 = getfield_gc(p4, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #44 FOR_ITER')
++321: p11 = getfield_gc(p7, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_FastListIterObject.inst_listitems 24>)
++332: guard_nonnull(p11, descr=<Guard85>) [p1, p0, p7, p11, p2, p3, p4, p5, p6]
++341: i12 = getfield_gc(p7, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
 +345: i13 = getfield_gc(p11, descr=<SignedFieldDescr list.length 8>)
 +350: i14 = int_ge(i12, i13)
-guard_false(i14, descr=<Guard50>) [p1, p0, p4, i12, p11, p2, p3, p5, p6, p7]
+guard_false(i14, descr=<Guard86>) [p1, p0, p7, i12, p11, p2, p3, p4, p5, p6]
 +359: p15 = getfield_gc(p11, descr=<GcPtrFieldDescr list.items 16>)
 +364: p16 = getarrayitem_gc(p15, i12, descr=<GcPtrArrayDescr>)
 +369: i18 = int_add(i12, 1)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #47 STORE_FAST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #50 LOAD_GLOBAL')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #47 STORE_FAST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #50 LOAD_GLOBAL')
 +373: p19 = getfield_gc(p0, descr=<GcPtrFieldDescr pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+384: setfield_gc(p4, i18, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+388: guard_value(p19, ConstPtr(ptr20), descr=<Guard51>) [p1, p0, p19, p2, p3, p4, p5, p6, p16]
-+407: p21 = getfield_gc(p19, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+411: guard_isnull(p21, descr=<Guard52>) [p1, p0, p21, p19, p2, p3, p4, p5, p6, p16]
-+420: p23 = getfield_gc(ConstPtr(ptr22), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+433: guard_nonnull_class(p23, 21015776, descr=<Guard53>) [p1, p0, p23, p2, p3, p4, p5, p6, p16]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #53 LOOKUP_METHOD')
-+452: p25 = getfield_gc(p23, descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
-+456: guard_value(p25, ConstPtr(ptr26), descr=<Guard54>) [p1, p0, p23, p25, p2, p3, p4, p5, p6, p16]
-+475: p27 = getfield_gc(p25, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+479: guard_isnull(p27, descr=<Guard55>) [p1, p0, p23, p27, p25, p2, p3, p4, p5, p6, p16]
-+488: p29 = getfield_gc(ConstPtr(ptr28), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+501: guard_nonnull_class(p29, ConstClass(Function), descr=<Guard56>) [p1, p0, p29, p23, p2, p3, p4, p5, p6, p16]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #56 LOAD_CONST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #59 LOAD_FAST')
-+520: guard_nonnull_class(p16, ConstClass(W_StringObject), descr=<Guard57>) [p1, p0, p16, p2, p3, p4, p29, p5, p6]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #62 CALL_METHOD')
-+540: p32 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
-+544: guard_value(p32, ConstPtr(ptr33), descr=<Guard58>) [p1, p0, p32, p29, p2, p3, p4, p16, p5, p6]
-+563: p34 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
-+567: i35 = arraylen_gc(p34, descr=<GcPtrArrayDescr>)
-+571: i37 = int_sub(3, i35)
-+581: i39 = int_ge(2, i37)
-guard_true(i39, descr=<Guard59>) [p1, p0, p29, p2, p3, p4, p16, p5, p6]
-+591: p40 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
-+595: p41 = getfield_gc(p29, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
-+595: i43 = int_sub(i35, 1)
-+602: i44 = int_ge(i43, i35)
-guard_false(i44, descr=<Guard60>) [p1, p0, i35, i43, p29, p2, p3, p4, p16, p5, p6, p40]
-+611: p45 = getarrayitem_gc_pure(p34, i43, descr=<GcPtrArrayDescr>)
-+616: i46 = force_token()
-+623: i47 = int_is_zero(i8)
-guard_true(i47, descr=<Guard61>) [p1, p0, p9, p2, p3, p4, p29, p16, p5, p6, p45, p10, i46, p40]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #0 LOAD_GLOBAL')
-+633: guard_value(p40, ConstPtr(ptr48), descr=<Guard62>) [p1, p0, p9, p40, p2, p3, p4, p29, p16, p5, p6, p45, p10, i46, None]
-+652: p50 = getfield_gc(p40, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+656: guard_isnull(p50, descr=<Guard63>) [p1, p0, p9, p50, p40, p2, p3, p4, p29, p16, p5, p6, p45, p10, i46, None]
-+665: p52 = getfield_gc(ConstPtr(ptr51), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+678: guard_nonnull_class(p52, ConstClass(Function), descr=<Guard64>) [p1, p0, p9, p52, p2, p3, p4, p29, p16, p5, p6, p45, p10, i46, None]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #3 LOAD_FAST')
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #6 LOAD_FAST')
-+696: guard_nonnull(p45, descr=<Guard65>) [p1, p0, p9, p45, p2, p3, p4, p29, p16, p5, p6, p52, None, p10, i46, None]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #9 CALL_FUNCTION')
-+705: p54 = getfield_gc(p52, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
-+709: guard_value(p54, ConstPtr(ptr55), descr=<Guard66>) [p1, p0, p9, p54, p52, p2, p3, p4, p29, p16, p5, p6, None, p45, p10, i46, None]
-+728: p56 = getfield_gc(p52, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
-+732: p57 = getfield_gc(p52, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
-+732: p58 = getfield_gc(p52, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+732: p59 = getfield_gc(p52, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
-+732: i60 = force_token()
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #0 LOAD_GLOBAL')
-+739: guard_value(p56, ConstPtr(ptr61), descr=<Guard67>) [p1, p0, p9, p56, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-+758: p62 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+762: guard_isnull(p62, descr=<Guard68>) [p1, p0, p9, p62, p56, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-+771: p64 = getfield_gc(ConstPtr(ptr63), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+784: guard_isnull(p64, descr=<Guard69>) [p1, p0, p9, p64, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-+793: p66 = getfield_gc(ConstPtr(ptr65), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
-+801: guard_value(p66, ConstPtr(ptr67), descr=<Guard70>) [p1, p0, p9, p66, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-+814: p68 = getfield_gc(p66, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+818: guard_isnull(p68, descr=<Guard71>) [p1, p0, p9, p68, p66, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-+827: p70 = getfield_gc(ConstPtr(ptr69), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+835: guard_value(p70, ConstPtr(ptr71), descr=<Guard72>) [p1, p0, p9, p70, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #3 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #6 LOAD_CONST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #9 BINARY_SUBSCR')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #10 CALL_FUNCTION')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #13 BUILD_TUPLE')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #16 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #19 BINARY_ADD')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #20 STORE_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #23 LOAD_GLOBAL')
-+848: p73 = getfield_gc(ConstPtr(ptr72), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+861: guard_nonnull_class(p73, 21003520, descr=<Guard73>) [p1, p0, p9, p73, p2, p3, p4, p29, p16, p5, p6, i60, p52, p45, p10, i46, None]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #26 LOOKUP_METHOD')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #29 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #32 CALL_METHOD')
-+880: p76 = getfield_gc(ConstPtr(ptr75), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+888: guard_not_invalidated(, descr=<Guard74>) [p1, p0, p9, p76, p2, p3, p4, p29, p16, p5, p6, p73, i60, p52, p45, p10, i46, None]
-+888: p77 = getfield_gc(p73, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+892: guard_nonnull(p77, descr=<Guard75>) [p1, p0, p9, p73, p77, p2, p3, p4, p29, p16, p5, p6, None, i60, p52, p45, p10, i46, None]
-+901: i78 = force_token()
-+908: p80 = new_with_vtable(21002328)
-+1013: setfield_gc(p80, i60, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-setfield_gc(p9, p80, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+1064: setfield_gc(p0, i78, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+1075: p82 = new_array(3, descr=<GcPtrArrayDescr>)
-+1153: setarrayitem_gc(p82, 0, ConstPtr(ptr84), descr=<GcPtrArrayDescr>)
-+1161: setarrayitem_gc(p82, 1, ConstPtr(ptr86), descr=<GcPtrArrayDescr>)
-+1175: setarrayitem_gc(p82, 2, p45, descr=<GcPtrArrayDescr>)
-+1186: i89 = call_may_force(ConstClass(hash_tuple), p82, descr=<SignedCallDescr>)
-guard_not_forced(, descr=<Guard46>) [p1, p0, p9, p73, p77, i89, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p82, p10]
-+1252: guard_no_exception(, descr=<Guard76>) [p1, p0, p9, p73, p77, i89, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p82, p10]
-+1267: i90 = force_token()
-+1274: setfield_gc(p0, i90, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+1285: p92 = new_with_vtable(21002400)
-+1355: setfield_gc(p92, p82, descr=<GcPtrFieldDescr pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems 8>)
-+1366: i94 = call_may_force(ConstClass(ll_dict_lookup__dicttablePtr_pypy_interpreter_baseobjspace_W_RootPtr_Signed), p77, p92, i89, descr=<SignedCallDescr>)
-guard_not_forced(, descr=<Guard47>) [p1, p0, p9, p92, p73, i94, p77, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p10]
-+1425: guard_no_exception(, descr=<Guard77>) [p1, p0, p9, p92, p73, i94, p77, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p10]
-+1440: i96 = int_and(i94, -9223372036854775808)
-+1456: i97 = int_is_true(i96)
-guard_false(i97, descr=<Guard78>) [p1, p0, p9, p92, p73, i94, p77, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p10]
-+1466: p99 = call(ConstClass(ll_get_value__dicttablePtr_Signed), p77, i94, descr=<GcPtrCallDescr>)
-+1486: guard_no_exception(, descr=<Guard79>) [p1, p0, p9, p92, p73, p99, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p10]
-+1501: guard_nonnull_class(p99, 21206408, descr=<Guard80>) [p1, p0, p9, p92, p73, p99, p80, p2, p3, p4, p29, p16, p5, p6, p52, i46, p45, p10]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #35 STORE_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #38 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #41 LOAD_CONST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #44 COMPARE_OP')
-+1519: i102 = ptr_eq(p99, ConstPtr(ptr101))
-guard_false(i102, descr=<Guard81>) [p1, p0, p9, p80, p2, p3, p4, p29, p16, p5, p6, p92, p99, p52, i46, p45, p10]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #47 POP_JUMP_IF_FALSE')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #50 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #53 RETURN_VALUE')
-+1532: p103 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
-+1543: guard_isnull(p103, descr=<Guard82>) [p1, p0, p9, p99, p103, p80, p2, p3, p4, p29, p16, p5, p6, p92, None, p52, i46, p45, p10]
-+1552: i104 = getfield_gc(p9, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
-+1556: i105 = int_is_true(i104)
-guard_false(i105, descr=<Guard83>) [p1, p0, p9, p99, p80, p2, p3, p4, p29, p16, p5, p6, p92, None, p52, i46, p45, p10]
-+1566: p106 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #12 LOOKUP_METHOD')
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #15 LOAD_FAST')
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #18 CALL_METHOD')
-+1566: p108 = getfield_gc(ConstPtr(ptr107), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+1574: setfield_gc(p80, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-+1589: guard_not_invalidated(, descr=<Guard84>) [p1, p0, p9, p108, p2, p3, p4, p29, p16, p5, p6, None, p99, None, i46, p45, p10]
-+1589: p110 = getfield_gc_pure(p16, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
-+1600: i111 = strlen(p110)
-+1604: i113 = int_gt(9223372036854775807, i111)
-guard_true(i113, descr=<Guard85>) [p1, p0, p9, p99, p110, p2, p3, p4, p29, p16, p5, p6, None, None, None, i46, p45, p10]
-+1623: p114 = getfield_gc(p99, descr=<GcPtrFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_code 16>)
-+1627: i115 = getfield_gc(p99, descr=<SignedFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_flags 24>)
-+1631: i117 = getarrayitem_gc_pure(p114, 0, descr=<SignedArrayDescr>)
-+1635: i119 = int_eq(i117, 17)
-guard_true(i119, descr=<Guard86>) [p1, p0, p9, p99, p2, p3, p4, p29, p16, p5, p6, p114, i111, p110, i115, None, None, None, i46, p45, p10]
-+1645: i121 = getarrayitem_gc_pure(p114, 2, descr=<SignedArrayDescr>)
-+1649: i123 = int_and(i121, 1)
-+1656: i124 = int_is_true(i123)
-guard_true(i124, descr=<Guard87>) [p1, p0, p9, p99, i121, p2, p3, p4, p29, p16, p5, p6, p114, i111, p110, i115, None, None, None, i46, p45, p10]
-+1666: i126 = getarrayitem_gc_pure(p114, 5, descr=<SignedArrayDescr>)
-+1670: i128 = int_gt(i126, 1)
-guard_false(i128, descr=<Guard88>) [p1, p0, p9, p99, p2, p3, p4, p29, p16, p5, p6, p114, i111, p110, i115, None, None, None, i46, p45, p10]
-+1680: i130 = getarrayitem_gc_pure(p114, 1, descr=<SignedArrayDescr>)
-+1684: i132 = int_add(i130, 1)
-+1688: i133 = getarrayitem_gc_pure(p114, i132, descr=<SignedArrayDescr>)
-+1693: i135 = int_eq(i133, 19)
-guard_true(i135, descr=<Guard89>) [p1, p0, p9, p99, i132, p2, p3, p4, p29, p16, p5, p6, p114, i111, p110, i115, None, None, None, i46, p45, p10]
-+1703: i137 = int_add(i132, 1)
-+1710: i138 = getarrayitem_gc_pure(p114, i137, descr=<SignedArrayDescr>)
-+1715: i140 = int_add(i132, 2)
-+1719: i142 = int_lt(0, i111)
-guard_true(i142, descr=<Guard90>) [p1, p0, p9, p99, i138, i140, p2, p3, p4, p29, p16, p5, p6, p114, i111, p110, i115, None, None, None, i46, p45, p10]
-+1729: guard_value(i140, 11, descr=<Guard91>) [p1, p0, p9, p99, i138, i140, p114, p2, p3, p4, p29, p16, p5, p6, None, i111, p110, i115, None, None, None, i46, p45, p10]
-+1739: guard_value(i138, 51, descr=<Guard92>) [p1, p0, p9, p99, i138, p114, p2, p3, p4, p29, p16, p5, p6, None, i111, p110, i115, None, None, None, i46, p45, p10]
-+1749: guard_value(p114, ConstPtr(ptr145), descr=<Guard93>) [p1, p0, p9, p99, p114, p2, p3, p4, p29, p16, p5, p6, None, i111, p110, i115, None, None, None, i46, p45, p10]
++384: setfield_gc(p7, i18, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++388: guard_value(p19, ConstPtr(ptr20), descr=<Guard87>) [p1, p0, p19, p2, p3, p4, p5, p16, p7]
++407: p21 = getfield_gc(p19, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++411: guard_value(p21, ConstPtr(ptr22), descr=<Guard88>) [p1, p0, p21, p19, p2, p3, p4, p5, p16, p7]
++424: p24 = getfield_gc(ConstPtr(ptr23), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++437: guard_nonnull_class(p24, 20812584, descr=<Guard89>) [p1, p0, p24, p2, p3, p4, p5, p16, p7]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #53 LOOKUP_METHOD')
++456: p26 = getfield_gc(p24, descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
++460: guard_value(p26, ConstPtr(ptr27), descr=<Guard90>) [p1, p0, p24, p26, p2, p3, p4, p5, p16, p7]
++479: p28 = getfield_gc(p26, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++483: guard_value(p28, ConstPtr(ptr29), descr=<Guard91>) [p1, p0, p24, p28, p26, p2, p3, p4, p5, p16, p7]
++496: p31 = getfield_gc(ConstPtr(ptr30), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++509: guard_nonnull_class(p31, ConstClass(Function), descr=<Guard92>) [p1, p0, p31, p24, p2, p3, p4, p5, p16, p7]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #56 LOAD_CONST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #59 LOAD_FAST')
++528: guard_nonnull_class(p16, ConstClass(W_StringObject), descr=<Guard93>) [p1, p0, p16, p2, p3, p4, p5, p7, p31]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #62 CALL_METHOD')
++548: p34 = getfield_gc(p31, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
++552: guard_value(p34, ConstPtr(ptr35), descr=<Guard94>) [p1, p0, p34, p31, p2, p3, p4, p5, p16, p7]
++571: p36 = getfield_gc(p31, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
++575: i37 = arraylen_gc(p36, descr=<GcPtrArrayDescr>)
++579: i39 = int_sub(3, i37)
++589: i41 = int_ge(2, i39)
+guard_true(i41, descr=<Guard95>) [p1, p0, p31, p2, p3, p4, p5, p16, p7]
++599: p42 = getfield_gc(p31, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
++603: p43 = getfield_gc(p31, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
++603: i45 = int_sub(i37, 1)
++610: i46 = int_ge(i45, i37)
+guard_false(i46, descr=<Guard96>) [p1, p0, i37, i45, p31, p2, p3, p4, p5, p16, p7, p42]
++619: p47 = getarrayitem_gc_pure(p36, i45, descr=<GcPtrArrayDescr>)
++624: i48 = force_token()
++631: i49 = int_is_zero(i8)
+guard_true(i49, descr=<Guard97>) [p1, p0, p9, p2, p3, p4, p5, p16, p7, p31, p10, p47, i48, p42]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #0 LOAD_GLOBAL')
++641: guard_value(p42, ConstPtr(ptr50), descr=<Guard98>) [p1, p0, p9, p42, p2, p3, p4, p5, p16, p7, p31, p10, p47, i48, None]
++660: p52 = getfield_gc(p42, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++664: guard_value(p52, ConstPtr(ptr53), descr=<Guard99>) [p1, p0, p9, p52, p42, p2, p3, p4, p5, p16, p7, p31, p10, p47, i48, None]
++677: p55 = getfield_gc(ConstPtr(ptr54), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++690: guard_nonnull_class(p55, ConstClass(Function), descr=<Guard100>) [p1, p0, p9, p55, p2, p3, p4, p5, p16, p7, p31, p10, p47, i48, None]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #3 LOAD_FAST')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #6 LOAD_FAST')
++708: guard_nonnull(p47, descr=<Guard101>) [p1, p0, p9, p47, p2, p3, p4, p5, p16, p7, p31, p55, p10, None, i48, None]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #9 CALL_FUNCTION')
++717: p57 = getfield_gc(p55, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
++721: guard_value(p57, ConstPtr(ptr58), descr=<Guard102>) [p1, p0, p9, p57, p55, p2, p3, p4, p5, p16, p7, p31, None, p10, p47, i48, None]
++740: p59 = getfield_gc(p55, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
++744: p60 = getfield_gc(p55, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
++744: p61 = getfield_gc(p55, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++744: p62 = getfield_gc(p55, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
++744: i63 = force_token()
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #0 LOAD_GLOBAL')
++751: guard_value(p59, ConstPtr(ptr64), descr=<Guard103>) [p1, p0, p9, p59, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
++770: p65 = getfield_gc(p59, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++774: guard_value(p65, ConstPtr(ptr66), descr=<Guard104>) [p1, p0, p9, p65, p59, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
++787: p68 = getfield_gc(ConstPtr(ptr67), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++800: guard_isnull(p68, descr=<Guard105>) [p1, p0, p9, p68, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
++809: p70 = getfield_gc(ConstPtr(ptr69), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
++817: guard_value(p70, ConstPtr(ptr71), descr=<Guard106>) [p1, p0, p9, p70, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
++830: p72 = getfield_gc(p70, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++834: guard_value(p72, ConstPtr(ptr73), descr=<Guard107>) [p1, p0, p9, p72, p70, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
++847: p75 = getfield_gc(ConstPtr(ptr74), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++855: guard_value(p75, ConstPtr(ptr76), descr=<Guard108>) [p1, p0, p9, p75, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #3 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #6 LOAD_CONST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #9 BINARY_SUBSCR')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #10 CALL_FUNCTION')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #13 BUILD_TUPLE')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #16 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #19 BINARY_ADD')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #20 STORE_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #23 LOAD_GLOBAL')
++868: p78 = getfield_gc(ConstPtr(ptr77), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++881: guard_nonnull_class(p78, 20802224, descr=<Guard109>) [p1, p0, p9, p78, p2, p3, p4, p5, p16, p7, p31, i63, p55, p10, p47, i48, None]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #26 LOOKUP_METHOD')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #29 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #32 CALL_METHOD')
++900: p81 = getfield_gc(ConstPtr(ptr80), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++908: guard_not_invalidated(, descr=<Guard110>) [p1, p0, p9, p81, p2, p3, p4, p5, p16, p7, p31, p78, i63, p55, p10, p47, i48, None]
++908: p82 = getfield_gc(p78, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++912: guard_class(p82, ConstClass(ObjectDictStrategy), descr=<Guard111>) [p1, p0, p9, p78, p82, p2, p3, p4, p5, p16, p7, p31, None, i63, p55, p10, p47, i48, None]
++924: p84 = getfield_gc(p78, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage 8>)
++928: i85 = force_token()
++935: p87 = new_with_vtable(20801800)
++1040: setfield_gc(p87, i63, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
+setfield_gc(p9, p87, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++1091: setfield_gc(p0, i85, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++1102: p89 = new_array(3, descr=<GcPtrArrayDescr>)
++1180: setarrayitem_gc(p89, 0, ConstPtr(ptr91), descr=<GcPtrArrayDescr>)
++1188: setarrayitem_gc(p89, 1, ConstPtr(ptr93), descr=<GcPtrArrayDescr>)
++1202: setarrayitem_gc(p89, 2, p47, descr=<GcPtrArrayDescr>)
++1213: i96 = call_may_force(ConstClass(hash_tuple), p89, descr=<SignedCallDescr>)
+guard_not_forced(, descr=<Guard82>) [p1, p0, p9, p78, p84, i96, p87, p2, p3, p4, p5, p16, p7, p31, p10, p89, p47, i48, p55]
++1279: guard_no_exception(, descr=<Guard112>) [p1, p0, p9, p78, p84, i96, p87, p2, p3, p4, p5, p16, p7, p31, p10, p89, p47, i48, p55]
++1294: i97 = force_token()
++1301: setfield_gc(p0, i97, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++1312: p99 = new_with_vtable(20801872)
++1382: setfield_gc(p99, p89, descr=<GcPtrFieldDescr pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems 8>)
++1393: i101 = call_may_force(ConstClass(ll_dict_lookup__dicttablePtr_pypy_interpreter_baseobjspace_W_RootPtr_Signed), p84, p99, i96, descr=<SignedCallDescr>)
+guard_not_forced(, descr=<Guard83>) [p1, p0, p9, p99, p78, i101, p84, p87, p2, p3, p4, p5, p16, p7, p31, p10, p47, p55, i48]
++1452: guard_no_exception(, descr=<Guard113>) [p1, p0, p9, p99, p78, i101, p84, p87, p2, p3, p4, p5, p16, p7, p31, p10, p47, p55, i48]
++1467: i103 = int_and(i101, -9223372036854775808)
++1483: i104 = int_is_true(i103)
+guard_false(i104, descr=<Guard114>) [p1, p0, p9, p99, p78, i101, p84, p87, p2, p3, p4, p5, p16, p7, p31, p10, p47, p55, i48]
++1493: p106 = call(ConstClass(ll_get_value__dicttablePtr_Signed), p84, i101, descr=<GcPtrCallDescr>)
++1513: guard_no_exception(, descr=<Guard115>) [p1, p0, p9, p99, p78, p106, p87, p2, p3, p4, p5, p16, p7, p31, p10, p47, p55, i48]
++1528: guard_nonnull_class(p106, 21007408, descr=<Guard116>) [p1, p0, p9, p99, p78, p106, p87, p2, p3, p4, p5, p16, p7, p31, p10, p47, p55, i48]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #35 STORE_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #38 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #41 LOAD_CONST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #44 COMPARE_OP')
++1546: i109 = ptr_eq(p106, ConstPtr(ptr108))
+guard_false(i109, descr=<Guard117>) [p1, p0, p9, p87, p2, p3, p4, p5, p16, p7, p31, p99, p106, p10, p47, p55, i48]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #47 POP_JUMP_IF_FALSE')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #50 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #53 RETURN_VALUE')
++1559: p110 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++1570: guard_isnull(p110, descr=<Guard118>) [p1, p0, p9, p106, p110, p87, p2, p3, p4, p5, p16, p7, p31, p99, None, p10, p47, p55, i48]
++1579: i111 = getfield_gc(p9, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++1583: i112 = int_is_true(i111)
+guard_false(i112, descr=<Guard119>) [p1, p0, p9, p106, p87, p2, p3, p4, p5, p16, p7, p31, p99, None, p10, p47, p55, i48]
++1593: p113 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #12 LOOKUP_METHOD')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #15 LOAD_FAST')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #18 CALL_METHOD')
++1593: p115 = getfield_gc(ConstPtr(ptr114), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++1601: setfield_gc(p87, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
++1616: guard_not_invalidated(, descr=<Guard120>) [p1, p0, p9, p115, p2, p3, p4, p5, p16, p7, p31, None, p106, p10, p47, None, i48]
++1616: p117 = getfield_gc_pure(p16, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
++1627: i118 = strlen(p117)
++1631: i120 = int_gt(9223372036854775807, i118)
+guard_true(i120, descr=<Guard121>) [p1, p0, p9, p106, p117, p2, p3, p4, p5, p16, p7, p31, None, None, p10, p47, None, i48]
++1650: p121 = getfield_gc(p106, descr=<GcPtrFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_code 16>)
++1654: i122 = getfield_gc(p106, descr=<SignedFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_flags 24>)
++1658: i124 = getarrayitem_gc_pure(p121, 0, descr=<SignedArrayDescr>)
++1662: i126 = int_eq(i124, 17)
+guard_true(i126, descr=<Guard122>) [p1, p0, p9, p106, p2, p3, p4, p5, p16, p7, p31, i118, p121, i122, p117, None, None, p10, p47, None, i48]
++1672: i128 = getarrayitem_gc_pure(p121, 2, descr=<SignedArrayDescr>)
++1676: i130 = int_and(i128, 1)
++1683: i131 = int_is_true(i130)
+guard_true(i131, descr=<Guard123>) [p1, p0, p9, p106, i128, p2, p3, p4, p5, p16, p7, p31, i118, p121, i122, p117, None, None, p10, p47, None, i48]
++1693: i133 = getarrayitem_gc_pure(p121, 5, descr=<SignedArrayDescr>)
++1697: i135 = int_gt(i133, 1)
+guard_false(i135, descr=<Guard124>) [p1, p0, p9, p106, p2, p3, p4, p5, p16, p7, p31, i118, p121, i122, p117, None, None, p10, p47, None, i48]
++1707: i137 = getarrayitem_gc_pure(p121, 1, descr=<SignedArrayDescr>)
++1711: i139 = int_add(i137, 1)
++1715: i140 = getarrayitem_gc_pure(p121, i139, descr=<SignedArrayDescr>)
++1720: i142 = int_eq(i140, 19)
+guard_true(i142, descr=<Guard125>) [p1, p0, p9, p106, i139, p2, p3, p4, p5, p16, p7, p31, i118, p121, i122, p117, None, None, p10, p47, None, i48]
++1730: i144 = int_add(i139, 1)
++1737: i145 = getarrayitem_gc_pure(p121, i144, descr=<SignedArrayDescr>)
++1742: i147 = int_add(i139, 2)
++1746: i149 = int_lt(0, i118)
+guard_true(i149, descr=<Guard126>) [p1, p0, p9, p106, i145, i147, p2, p3, p4, p5, p16, p7, p31, i118, p121, i122, p117, None, None, p10, p47, None, i48]
++1756: guard_value(i147, 11, descr=<Guard127>) [p1, p0, p9, p106, i145, i147, p121, p2, p3, p4, p5, p16, p7, p31, i118, None, i122, p117, None, None, p10, p47, None, i48]
++1766: guard_value(i145, 51, descr=<Guard128>) [p1, p0, p9, p106, i145, p121, p2, p3, p4, p5, p16, p7, p31, i118, None, i122, p117, None, None, p10, p47, None, i48]
++1776: guard_value(p121, ConstPtr(ptr152), descr=<Guard129>) [p1, p0, p9, p106, p121, p2, p3, p4, p5, p16, p7, p31, i118, None, i122, p117, None, None, p10, p47, None, i48]
 debug_merge_point(2, 'StrLiteralSearch at 11/51 [17. 8. 3. 1. 1. 1. 1. 51. 0. 19. 51. 1]')
-+1768: i146 = force_token()
-+1775: p147 = new_with_vtable(21002328)
-+1873: setfield_gc(p147, i46, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-setfield_gc(p9, p147, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+1913: setfield_gc(p0, i146, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+1931: p149 = new_with_vtable(21022112)
-+2001: setfield_gc(p149, ConstPtr(ptr145), descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_pattern 56>)
-+2015: setfield_gc(p149, i115, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_flags 16>)
-+2026: setfield_gc(p149, p110, descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
-+2037: setfield_gc(p149, i111, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_end 8>)
-+2048: i150 = call_assembler(0, p149, descr=<Loop5>)
-guard_not_forced(, descr=<Guard48>) [p1, p0, p9, p99, p149, i150, p147, p2, p3, p4, p29, p16, p5, p6, p45, p10]
-+2139: guard_no_exception(, descr=<Guard94>) [p1, p0, p9, p99, p149, i150, p147, p2, p3, p4, p29, p16, p5, p6, p45, p10]
-+2154: guard_true(i150, descr=<Guard95>) [p1, p0, p9, p99, p149, p147, p2, p3, p4, p29, p16, p5, p6, p45, p10]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #21 RETURN_VALUE')
-+2163: p151 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
-+2174: guard_isnull(p151, descr=<Guard96>) [p1, p0, p9, p151, p147, p2, p3, p4, p29, p16, p5, p6, p99, p149, p45, p10]
-+2183: i152 = getfield_gc(p9, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
-+2187: i153 = int_is_true(i152)
-guard_false(i153, descr=<Guard97>) [p1, p0, p9, p147, p2, p3, p4, p29, p16, p5, p6, p99, p149, p45, p10]
-+2197: p154 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #65 POP_TOP')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #66 JUMP_ABSOLUTE')
-+2197: i156 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+2205: i158 = int_sub(i156, 62)
-+2209: setfield_raw(40681184, i158, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++1795: i153 = force_token()
++1802: p154 = new_with_vtable(20801800)
++1900: setfield_gc(p154, i48, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
+setfield_gc(p9, p154, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++1940: setfield_gc(p0, i153, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++1958: p156 = new_with_vtable(20819912)
++2028: setfield_gc(p156, i118, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_end 8>)
++2039: setfield_gc(p156, i122, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_flags 16>)
++2050: setfield_gc(p156, p117, descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
++2061: setfield_gc(p156, ConstPtr(ptr152), descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_pattern 56>)
++2075: i157 = call_assembler(0, p156, descr=<Loop6>)
+guard_not_forced(, descr=<Guard84>) [p1, p0, p9, p106, p156, i157, p154, p2, p3, p4, p5, p16, p7, p31, p10, p47]
++2166: guard_no_exception(, descr=<Guard130>) [p1, p0, p9, p106, p156, i157, p154, p2, p3, p4, p5, p16, p7, p31, p10, p47]
++2181: guard_true(i157, descr=<Guard131>) [p1, p0, p9, p106, p156, p154, p2, p3, p4, p5, p16, p7, p31, p10, p47]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #21 RETURN_VALUE')
++2190: p158 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++2201: guard_isnull(p158, descr=<Guard132>) [p1, p0, p9, p158, p154, p2, p3, p4, p5, p16, p7, p31, p106, p156, p10, p47]
++2210: i159 = getfield_gc(p9, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++2214: i160 = int_is_true(i159)
+guard_false(i160, descr=<Guard133>) [p1, p0, p9, p154, p2, p3, p4, p5, p16, p7, p31, p106, p156, p10, p47]
++2224: p161 = getfield_gc(p9, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #65 POP_TOP')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #66 JUMP_ABSOLUTE')
++2224: i163 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++2232: i165 = int_sub(i163, 62)
++2236: setfield_raw(40588192, i165, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 setfield_gc(p9, p10, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+2260: setfield_gc(p147, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-+2275: i161 = int_lt(i158, 0)
-guard_false(i161, descr=<Guard98>) [p1, p0, p2, p3, p4, p5, p6, p16, None, None, None, None]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #44 FOR_ITER')
-+2285: jump(p0, p1, p2, p3, p4, p5, p6, p16, i152, p9, p10, descr=<Loop6>)
-+2304: --end of the loop--
-[1af179fd9d3c7] jit-log-opt-loop}
-[1af17a03f77a7] {jit-log-opt-loop
-# Loop 7 : entry bridge with 211 ops
++2287: setfield_gc(p154, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
++2302: i168 = int_lt(i165, 0)
+guard_false(i168, descr=<Guard134>) [p1, p0, p2, p3, p4, p5, p16, p7, None, None, None, None]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #44 FOR_ITER')
++2312: jump(p0, p1, p2, p3, p4, p5, p16, p7, i159, p9, p10, descr=<Loop7>)
++2334: --end of the loop--
+[4cacad8c060f] jit-log-opt-loop}
+[4cacad8cacbf] {jit-backend
+[4cacae25aaeb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd011 +0  554889E5534154415541564157488DA5000000004C8B3C2590C2540148C7042590C25401000000004C8B342598C2540148C7042598C25401000000004C8B2C25A0C2540148C70425A0C25401000000004C8B2425A8C2540148C70425A8C25401000000004C8B1425D04D5B014C8B0C25B8C2540148C70425B8C25401000000004C8B0425E04D5B01488B3C25E84D5B01488B3425D0C2540148C70425D0C2540100000000488B1C25D8C2540148C70425D8C2540100000000488B1425E0C2540148C70425E0C2540100000000488B0C25E8C2540148C70425E8C2540100000000488B0425F0C2540148C70425F0C254010000000048898570FFFFFF488B0425F8C2540148C70425F8C254010000000048898568FFFFFF488B042500C3540148C7042500C354010000000048898560FFFFFF488B042508C3540148C7042508C354010000000048898558FFFFFF49BB90A0CFB8A07F0000498B034883C00149BB90A0CFB8A07F00004989034983F8040F85000000008139B82F00000F8500000000488B79184885FF0F84000000004C8B4108488B47084939C00F8D00000000488B7F104A8B7CC7104983C0014C8941084983FA000F850000000049BBF8F477B6A07F00004D39DC0F85000000004D8B670849BBA0217CB6A07F00004D39DC0F8500000000498B5424104881FAC07446010F850000000049BB683A79B6A07F00004D8B234983FC01720841813C24C84000000F8500000000498B54240849BB904279B6A07F00004C39DA0F85000000004C8B52104981FAC07446010F850000000049BB883D79B6A07F0000498B134883FA017206813A082601000F85000000004883FF017206813FD00400000F85000000004C8B621849BB20F777B6A07F00004D39DC0F85000000004C8B62204D8B54240849C7C0030000004D29D04983F8020F8F000000004C8B42404C89D04983EA014939C20F8D000000004F8B54D4104889BD50FFFFFF48899548FFFFFF4C898540FFFFFF48898D38FFFFFF4C898D30FFFFFF4C899528FFFFFF4889B520FFFFFF49C7C3B0A0500041FFD3488B70384C8D9578FFFFFF4C8B48484D85C90F85000000004C8B48284983F9000F85000000004C8B8D40FFFFFF49BB904279B6A07F00004D39D90F8500000000498B49104881F9C07446010F850000000049BB583C79B6A07F00004D8B0B4983F9017207418139082601000F8500000000488B8D28FFFFFF4885C90F84000000004D8B411849BB68F679B6A07F00004D39D80F85000000004D8B4140498B5128498B792048833C2550546B02000F8500000000488DBD78FFFFFF49BB904279B6A07F00004D39D80F8500000000498B50104881FAC07446010F850000000049BBF877CEB8A07F00004D8B034D85C00F85000000004C8B042508DF45014981F8706A49010F8500000000498B50104881FAC07446010F85000000004C8B0425E8B35D014981F8400244010F850000000049BB683B79B6A07F00004D8B034983F8017207418138501800000F8500000000488B142568915201498B5010813AE08701000F8500000000498B50084C8DA578FFFFFF48898518FFFFFF48899510FFFFFF4889B508FFFFFF4889BD00FFFFFF4C8985F8FEFFFF4C898DF0FEFFFF4C8995E8FEFFFF488B0425704F3D01488D5018483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700A816000048891425704F3D014C8B9500FFFFFF4C8950084C8B9518FFFFFF41F642040174165041524C89D74889C649C7C310734D0041FFD3415A58498942384D896718488985E0FEFFFF488B0425704F3D01488D5028483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C7008800000048891425704F3D0148C740080300000048C74010007D440149BB303879B6A07F00004C8958184C8B9528FFFFFF4C8950204C89BDD8FEFFFF488985D0FEFFFF48899DC8FEFFFF4C89B5C0FEFFFF4C89ADB8FEFFFF48C78578FFFFFF870000004889C749C7C300B2660041FFD34883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004C8DAD78FFFFFF4C8BB5D8FEFFFF4D896E18488985B0FEFFFF488B0425704F3D01488D5010483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700F016000048891425704F3D014C8B95D0FEFFFF4C895008488985A8FEFFFF48C78578FFFFFF88000000488BBD10FFFFFF4889C6488B95B0FEFFFF49C7C3A0EE660041FFD34883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004989C649BB00000000000000804C21D84883F8000F8500000000488BBD10FFFFFF4C89F649C7C370DFB40041FFD348833C2550546B02000F85000000004883F80172068138D03903000F85000000004881F850EB44010F84000000004C8BB518FFFFFF4D8B56484D85D20F85000000004D8B56284983FA000F85000000004C8B1425E8546D014C8B8DE0FEFFFF49C74108FDFFFFFF4C8B9550FFFFFF4D8B4A084D8B411049BBFFFFFFFFFFFFFF7F4D39D80F8D00000000488B7810488B7018488B57104883FA110F8500000000488B57204889D14883E2014883FA000F8400000000488B4F384883F9010F8F00000000488B4F184883C101488B54CF104883FA130F85000000004889CA4883C101488B4CCF104883C2024983F8000F8E000000004883FA0B0F85000000004883F9330F850000000049BB2020C8B8A07F00004C39DF0F8500000000488DBD78FFFFFF488985A0FEFFFF4889B598FEFFFF4889BD90FEFFFF4C898588FEFFFF4C898D80FEFFFF488B0425704F3D01488D5018483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700A816000048891425704F3D014C8B95E8FEFFFF4C89500841F64604017412504C89F74889C649C7C310734D0041FFD358498946384C8B95D8FEFFFF4C8B8D90FEFFFF4D894A1848898578FEFFFF488B0425704F3D01488D5048483B1425784F3D01761A49BB10925BB6A07F000041FFD349BB8E925BB6A07F000041FFD348C700685D000048891425704F3D014C8B9588FEFFFF4C8950084C8B9598FEFFFF4C8950104C8B9580FEFFFF4C89504049BB2020C8B8A07F00004C89583848898570FEFFFF48C78578FFFFFF8900000048C7C7000000004889C649BBECBA5BB6A07F000041FFD34883F80174164889C748C7C60000000049C7C3709CBD0041FFD3EB08488B0425B04D5B014883BD78FFFFFF000F8C0000000048833C2550546B02000F85000000004885C00F8400000000488B8518FFFFFF4C8B70484D85F60F85000000004C8B70284983FE000F85000000004C8B1425A0536B024983EA3E4C891425A0536B024C8B8D08FFFFFFF6400401741A41524151504889C74C89CE49C7C310734D0041FFD3584159415A4C8948384C8B8578FEFFFF49C74008FDFFFFFF4983FA000F8C00000000488B85D8FEFFFF48898570FFFFFF488B85C0FEFFFF48898568FFFFFF488B85B8FEFFFF48898560FFFFFF488B8530FFFFFF48898558FFFFFF488B85C8FEFFFF48898548FFFFFF4C8BBD50FFFFFF488B8538FFFFFF48898540FFFFFF488B8518FFFFFF48898538FFFFFF4C898D30FFFFFF488B8520FFFFFF48898550FFFFFF49BB9ABE5BB6A07F000041FFE3488B0425A8536B024829E0483B042580DC3C01760D49BB05935BB6A07F000041FFD3554889E5534154415541564157488DA5E0FDFFFF4989FF4989F64989D54989CC4D89C24C8B5D104D89D84C8B5D184C89DF4C8B5D204C89DE4C8B5D284C89DB4C8B5D304C89DA4C8B5D384C89D94C8B5D404C899D70FFFFFF4C8B5D484C899D68FFFFFF4C8B5D504C899D60FFFFFF4C8B5D584C899D58FFFFFFE94FF6FFFF49BB00905BB6A07F000041FFD321383C343029241D180C08044044484C038A00000049BB00905BB6A07F000041FFD3383C0434302924180C084044484C038B00000049BB00905BB6A07F000041FFD3383C041C34302924180C084044484C038C00000049BB00905BB6A07F000041FFD3383C04211C34302924180C084044484C038D00000049BB00905BB6A07F000041FFD329383C343024180C08041C44484C038E00000049BB00905BB6A07F000041FFD3383C303424180C1C0444484C038F00000049BB00905BB6A07F000041FFD3383C303424180C1C0444484C039000000049BB00905BB6A07F000041FFD3383C08303424180C1C0444484C039100000049BB00905BB6A07F000041FFD3383C303424180C1C0444484C039200000049BB00905BB6A07F000041FFD3383C30083424180C1C0444484C039300000049BB00905BB6A07F000041FFD3383C3028083424180C1C0444484C039400000049BB00905BB6A07F000041FFD3383C08303424180C1C0444484C039500000049BB00905BB6A07F000041FFD3383C1C3424180C04084C039600000049BB00905BB6A07F000041FFD3383C30083424180C1C04039700000049BB00905BB6A07F000041FFD3383C083424180C1C04039800000049BB00905BB6A07F000041FFD3383C0129083424180C1C0420039900000049BB00905BB6A07F000041FFD3383C00243460680C505C5464182958039A00000049BB00905BB6A07F000041FFD3383C003460680C505C5464182958039B00000049BB00905BB6A07F000041FFD3383C00243460680C505C5464182907039C00000049BB00905BB6A07F000041FFD3383C0004243460680C505C5464182907039D00000049BB00905BB6A07F000041FFD3383C00243460680C505C5464182907039E00000049BB00905BB6A07F000041FFD3383C00043460680C505C542407182907039F00000049BB00905BB6A07F000041FFD3383C0020243460680C505C54070418290703A000000049BB45905BB6A07F000041FFD3383C00081C3460680C505C5420240418290703A100000049BB00905BB6A07F000041FFD3383C00203460680C505C541D07240418290703A200000049BB00905BB6A07F000041FFD3383C0008203460680C505C541D07240418290703A300000049BB00905BB6A07F000041FFD3383C00203460680C505C541D07240418290703A400000049BB00905BB6A07F000041FFD3383C00203460680C505C541D07240418290703A500000049BB00905BB6A07F000041FFD3383C0008203460680C505C541D07240418290703A600000049BB00905BB6A07F000041FFD3383C00203460680C505C541D07240418290703A700000049BB00905BB6A07F000041FFD3383C00203460680C505C541D07240418290703A800000049BB00905BB6A07F000041FFD3383C00083460680C505C54201D07240418290703A900000049BB00905BB6A07F000041FFD3383C0020083460680C505C54071D07240418290703AA00000049BB45905BB6A07F000041FFD398018C016C7C700188019C0160689401505C546474800185019001038700000049BB45905BB6A07F000041FFD398018C016C7C700188019C0160689401505C54647480018501900103AB00000049BB45905BB6A07F000041FFD398018C016CA4017C017088019C0160689401505C54800164748501038800000049BB45905BB6A07F000041FFD398018C016CA4017C017088019C0160689401505C5480016474850103AC00000049BB00905BB6A07F000041FFD398018C016CA4017C397088019C0160689401505C5480016474850103AD00000049BB45905BB6A07F000041FFD398018C016CA4017C0088019C0160689401505C5480016474850103AE00000049BB00905BB6A07F000041FFD398018C016CA4017C0088019C0160689401505C5480016474850103AF00000049BB00905BB6A07F000041FFD398018C016C88019C0160689401505C5400A40180016474850103B000000049BB00905BB6A07F000041FFD398018C0138002888019C0160689401505C5407A40180016474850103B100000049BB00905BB6A07F000041FFD398018C01380088019C0160689401505C5407A40180016474850103B200000049BB00905BB6A07F000041FFD398018C0138289C0160689401505C540007076474850103B300000049BB00905BB6A07F000041FFD398018C013800249C0160689401285C540707076474850103B400000049BB00905BB6A07F000041FFD398018C0138009C0160689401285C541924211C0707076474850103B500000049BB00905BB6A07F000041FFD398018C013800059C0160689401285C541924211C0707076474850103B600000049BB00905BB6A07F000041FFD398018C0138009C0160689401285C541924211C0707076474850103B700000049BB00905BB6A07F000041FFD398018C013800059C0160689401285C541924211C0707076474850103B800000049BB00905BB6A07F000041FFD398018C01380005099C0160689401285C541924211C0707076474850103B900000049BB00905BB6A07F000041FFD398018C01380005091C9C0160689401285C54192421070707076474850103BA00000049BB00905BB6A07F000041FFD398018C013800051C9C0160689401285C54192421070707076474850103BB00000049BB00905BB6A07F000041FFD398018C0138001C9C0160689401285C54192421070707076474850103BC00000049BB45905BB6A07F000041FFD398018C016CA801C00101BC019C0160689401505C546474038900000049BB45905BB6A07F000041FFD398018C016CA801C00101BC019C0160689401505C54647403BD00000049BB00905BB6A07F000041FFD398018C016CA801C001BC019C0160689401505C54647403BE00000049BB00905BB6A07F000041FFD398018C010038BC019C0160689401505C54A801C001647403BF00000049BB00905BB6A07F000041FFD398018C0100BC019C0160689401505C54A801C001647403C000000049BB00905BB6A07F000041FFD398018C019C0160689401505C0707070703C1000000
+[4cacae2c324b] jit-backend-dump}
+[4cacae2c5693] {jit-backend-addr
+Loop #8 (<code object inlined_str_stuff, file 'source.py', line 40> #44 FOR_ITER) has address 7fa0b65bd15d to 7fa0b65bda6e (bootstrap 7fa0b65bd011)
+[4cacae2c8c1b] jit-backend-addr}
+[4cacae2c9d55] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd021 +0  E0FDFFFF
+[4cacae2cbda1] jit-backend-dump}
+[4cacae2ccecf] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd181 +0  89090000
+[4cacae2ce4ef] jit-backend-dump}
+[4cacae2cef93] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd18d +0  9F090000
+[4cacae2d0439] jit-backend-dump}
+[4cacae2d0e83] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd19a +0  B2090000
+[4cacae2d239b] jit-backend-dump}
+[4cacae2d2e87] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd1ab +0  C2090000
+[4cacae2d4399] jit-backend-dump}
+[4cacae2d4e79] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd1c6 +0  C9090000
+[4cacae2d624d] jit-backend-dump}
+[4cacae2d6bfb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd1d9 +0  D6090000
+[4cacae2d7fd5] jit-backend-dump}
+[4cacae2d898f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd1f0 +0  DD090000
+[4cacae2d9d6f] jit-backend-dump}
+[4cacae2da8b5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd202 +0  E9090000
+[4cacae2dbe15] jit-backend-dump}
+[4cacae2dc8e3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd223 +0  E7090000
+[4cacae2dddb3] jit-backend-dump}
+[4cacae2ea8f3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd23b +0  ED090000
+[4cacae2ecff3] jit-backend-dump}
+[4cacae2edd07] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd24c +0  FB090000
+[4cacae2efaef] jit-backend-dump}
+[4cacae2f0ba5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd26b +0  FC090000
+[4cacae2f2615] jit-backend-dump}
+[4cacae2f330b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd27d +0  090A0000
+[4cacae2f4d57] jit-backend-dump}
+[4cacae2f5957] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd294 +0  0E0A0000
+[4cacae2f7499] jit-backend-dump}
+[4cacae2f810b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd2b1 +0  0D0A0000
+[4cacae2f9bcf] jit-backend-dump}
+[4cacae2fa9eb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd2c5 +0  140A0000
+[4cacae2fc449] jit-backend-dump}
+[4cacae2fd0c7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd31d +0  DA090000
+[4cacae2fecf3] jit-backend-dump}
+[4cacae2ffc4d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd32b +0  ED090000
+[4cacae301b73] jit-backend-dump}
+[4cacae30284b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd345 +0  F3090000
+[4cacae304585] jit-backend-dump}
+[4cacae305743] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd356 +0  030A0000
+[4cacae307981] jit-backend-dump}
+[4cacae308a25] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd376 +0  050A0000
+[4cacae30ac27] jit-backend-dump}
+[4cacae30be7b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd386 +0  160A0000
+[4cacae30e3f5] jit-backend-dump}
+[4cacae30f16f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd39d +0  210A0000
+[4cacae3105e5] jit-backend-dump}
+[4cacae311071] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd3b8 +0  290A0000
+[4cacae3124e7] jit-backend-dump}
+[4cacae312ed7] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd3d2 +0  330A0000
+[4cacae3142bd] jit-backend-dump}
+[4cacae314e87] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd3e3 +0  460A0000
+[4cacae31633f] jit-backend-dump}
+[4cacae316ef1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd3f9 +0  550A0000
+[4cacae318433] jit-backend-dump}
+[4cacae318f25] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd40e +0  640A0000
+[4cacae31a3ad] jit-backend-dump}
+[4cacae31ada3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd41f +0  770A0000
+[4cacae31c177] jit-backend-dump}
+[4cacae31cb4f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd434 +0  870A0000
+[4cacae31e151] jit-backend-dump}
+[4cacae31ec5b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd454 +0  8B0A0000
+[4cacae320119] jit-backend-dump}
+[4cacae321109] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd46c +0  BC0A0000
+[4cacae322585] jit-backend-dump}
+[4cacae3230ad] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd5d6 +0  78090000
+[4cacae324487] jit-backend-dump}
+[4cacae324e6b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd5e5 +0  96090000
+[4cacae32623f] jit-backend-dump}
+[4cacae326d6d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd683 +0  25090000
+[4cacae3282a9] jit-backend-dump}
+[4cacae328dbf] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd692 +0  43090000
+[4cacae32a199] jit-backend-dump}
+[4cacae32ab7d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd6ac +0  56090000
+[4cacae32bf57] jit-backend-dump}
+[4cacae32c977] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd6cf +0  60090000
+[4cacae32dd57] jit-backend-dump}
+[4cacae32e73b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd6e1 +0  7A090000
+[4cacae336637] jit-backend-dump}
+[4cacae3375d3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd6ee +0  99090000
+[4cacae338b81] jit-backend-dump}
+[4cacae33974b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd702 +0  B0090000
+[4cacae33abf1] jit-backend-dump}
+[4cacae33b58d] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd710 +0  CF090000
+[4cacae33c967] jit-backend-dump}
+[4cacae33d4bf] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd749 +0  EA090000
+[4cacae33e8a5] jit-backend-dump}
+[4cacae33f397] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd75f +0  FD090000
+[4cacae3408df] jit-backend-dump}
+[4cacae3413b3] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd774 +0  140A0000
+[4cacae342787] jit-backend-dump}
+[4cacae34313b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd782 +0  330A0000
+[4cacae34451b] jit-backend-dump}
+[4cacae344ea5] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd799 +0  480A0000
+[4cacae34627f] jit-backend-dump}
+[4cacae346ccf] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd7b3 +0  5B0A0000
+[4cacae348217] jit-backend-dump}
+[4cacae348ddb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd7bd +0  7F0A0000
+[4cacae34a2b1] jit-backend-dump}
+[4cacae34ac95] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd7c7 +0  A40A0000
+[4cacae34c07b] jit-backend-dump}
+[4cacae34ca23] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd7da +0  BF0A0000
+[4cacae34de09] jit-backend-dump}
+[4cacae34e79f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd94d +0  79090000
+[4cacae34fc27] jit-backend-dump}
+[4cacae3506d1] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd95c +0  93090000
+[4cacae351b83] jit-backend-dump}
+[4cacae352513] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd965 +0  B3090000
+[4cacae3538ed] jit-backend-dump}
+[4cacae3542cb] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd979 +0  C7090000
+[4cacae3556ab] jit-backend-dump}
+[4cacae35602f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd987 +0  E2090000
+[4cacae35740f] jit-backend-dump}
+[4cacae357f13] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd9df +0  B2090000
+[4cacae359509] jit-backend-dump}
+[4cacae35a5a1] jit-backend}
+[4cacae35c0dd] {jit-log-opt-loop
+# Loop 8 : entry bridge with 212 ops
 [p0, p1, p2, p3, i4, p5, i6, i7, p8, p9, p10, p11, p12, p13, p14, p15]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #44 FOR_ITER')
-+362: guard_value(i6, 1, descr=<Guard102>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11, p12, p13, p14, p15]
-+372: guard_class(p8, 21011168, descr=<Guard103>) [p1, p0, p8, p2, p3, i4, p5, p9, p10, p11, p12, p13, p14, p15]
-+384: p18 = getfield_gc(p8, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_FastListIterObject.inst_listitems 24>)
-+388: guard_nonnull(p18, descr=<Guard104>) [p1, p0, p8, p18, p2, p3, i4, p5, p9, p10, p11, p12, p13, p14, p15]
-+397: i19 = getfield_gc(p8, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #44 FOR_ITER')
++362: guard_value(i6, 4, descr=<Guard138>) [i6, p1, p0, p2, p3, i4, p5, i7, p8, p9, p10, p11, p12, p13, p14, p15]
++372: guard_class(p11, 20808216, descr=<Guard139>) [p1, p0, p11, p2, p3, i4, p5, p8, p9, p10, p12, p13, p14, p15]
++384: p18 = getfield_gc(p11, descr=<GcPtrFieldDescr pypy.objspace.std.iterobject.W_FastListIterObject.inst_listitems 24>)
++388: guard_nonnull(p18, descr=<Guard140>) [p1, p0, p11, p18, p2, p3, i4, p5, p8, p9, p10, p12, p13, p14, p15]
++397: i19 = getfield_gc(p11, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
 +401: i20 = getfield_gc(p18, descr=<SignedFieldDescr list.length 8>)
 +405: i21 = int_ge(i19, i20)
-guard_false(i21, descr=<Guard105>) [p1, p0, p8, i19, p18, p2, p3, i4, p5, p9, p10, p11, p12, p13, p14, p15]
+guard_false(i21, descr=<Guard141>) [p1, p0, p11, i19, p18, p2, p3, i4, p5, p8, p9, p10, p12, p13, p14, p15]
 +414: p22 = getfield_gc(p18, descr=<GcPtrFieldDescr list.items 16>)
 +418: p23 = getarrayitem_gc(p22, i19, descr=<GcPtrArrayDescr>)
 +423: i25 = int_add(i19, 1)
-+427: setfield_gc(p8, i25, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
-+431: guard_value(i4, 0, descr=<Guard106>) [i4, p1, p0, p2, p3, p5, p8, p23, p10, p11, p12, p13, p14, p15]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #47 STORE_FAST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #50 LOAD_GLOBAL')
-+441: guard_value(p3, ConstPtr(ptr27), descr=<Guard107>) [p1, p0, p3, p2, p5, p8, p10, p11, p12, p13, p14, p23]
++427: setfield_gc(p11, i25, descr=<SignedFieldDescr pypy.objspace.std.iterobject.W_AbstractSeqIterObject.inst_index 8>)
++431: guard_value(i4, 0, descr=<Guard142>) [i4, p1, p0, p2, p3, p5, p8, p9, p10, p11, p23, p13, p14, p15]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #47 STORE_FAST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #50 LOAD_GLOBAL')
++441: guard_value(p3, ConstPtr(ptr27), descr=<Guard143>) [p1, p0, p3, p2, p5, p8, p9, p23, p11, p13, p14, p15]
 +460: p28 = getfield_gc(p0, descr=<GcPtrFieldDescr pypy.interpreter.eval.Frame.inst_w_globals 8>)
-+464: guard_value(p28, ConstPtr(ptr29), descr=<Guard108>) [p1, p0, p28, p2, p5, p8, p10, p11, p12, p13, p14, p23]
-+483: p30 = getfield_gc(p28, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+488: guard_isnull(p30, descr=<Guard109>) [p1, p0, p30, p28, p2, p5, p8, p10, p11, p12, p13, p14, p23]
-+497: p32 = getfield_gc(ConstPtr(ptr31), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+510: guard_nonnull_class(p32, 21015776, descr=<Guard110>) [p1, p0, p32, p2, p5, p8, p10, p11, p12, p13, p14, p23]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #53 LOOKUP_METHOD')
-+530: p34 = getfield_gc(p32, descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
-+535: guard_value(p34, ConstPtr(ptr35), descr=<Guard111>) [p1, p0, p32, p34, p2, p5, p8, p10, p11, p12, p13, p14, p23]
-+554: p36 = getfield_gc(p34, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+558: guard_isnull(p36, descr=<Guard112>) [p1, p0, p32, p36, p34, p2, p5, p8, p10, p11, p12, p13, p14, p23]
-+567: p38 = getfield_gc(ConstPtr(ptr37), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+580: guard_nonnull_class(p38, ConstClass(Function), descr=<Guard113>) [p1, p0, p38, p32, p2, p5, p8, p10, p11, p12, p13, p14, p23]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #56 LOAD_CONST')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #59 LOAD_FAST')
-+599: guard_nonnull_class(p23, ConstClass(W_StringObject), descr=<Guard114>) [p1, p0, p23, p2, p5, p8, p38, p12, p13, p14]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #62 CALL_METHOD')
-+617: p41 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
-+621: guard_value(p41, ConstPtr(ptr42), descr=<Guard115>) [p1, p0, p41, p38, p2, p5, p8, p23, p13, p14]
-+640: p43 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
-+644: i44 = arraylen_gc(p43, descr=<GcPtrArrayDescr>)
-+648: i46 = int_sub(3, i44)
-+658: i48 = int_ge(2, i46)
-guard_true(i48, descr=<Guard116>) [p1, p0, p38, p2, p5, p8, p23, p13, p14]
-+668: p49 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
-+672: p50 = getfield_gc(p38, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
-+672: i52 = int_sub(i44, 1)
-+679: i53 = int_ge(i52, i44)
-guard_false(i53, descr=<Guard117>) [p1, p0, i44, i52, p38, p2, p5, p8, p23, p13, p14, p49]
-+688: p54 = getarrayitem_gc_pure(p43, i52, descr=<GcPtrArrayDescr>)
-+693: p56 = call(ConstClass(getexecutioncontext), descr=<GcPtrCallDescr>)
-+738: p57 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+742: i58 = force_token()
-+749: p59 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
-+753: guard_isnull(p59, descr=<Guard118>) [p1, p0, p56, p59, p2, p5, p8, p38, p23, p13, p14, p54, i58, p57, p49]
-+762: i60 = getfield_gc(p56, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
-+766: i61 = int_is_zero(i60)
-guard_true(i61, descr=<Guard119>) [p1, p0, p56, p2, p5, p8, p38, p23, p13, p14, p54, i58, p57, p49]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #0 LOAD_GLOBAL')
-+776: guard_value(p49, ConstPtr(ptr62), descr=<Guard120>) [p1, p0, p56, p49, p2, p5, p8, p38, p23, p13, p14, p54, i58, p57, None]
-+795: p64 = getfield_gc(p49, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+800: guard_isnull(p64, descr=<Guard121>) [p1, p0, p56, p64, p49, p2, p5, p8, p38, p23, p13, p14, p54, i58, p57, None]
-+809: p66 = getfield_gc(ConstPtr(ptr65), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+822: guard_nonnull_class(p66, ConstClass(Function), descr=<Guard122>) [p1, p0, p56, p66, p2, p5, p8, p38, p23, p13, p14, p54, i58, p57, None]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #3 LOAD_FAST')
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #6 LOAD_FAST')
-+842: guard_nonnull(p54, descr=<Guard123>) [p1, p0, p56, p54, p2, p5, p8, p38, p23, p13, p14, p66, None, i58, p57, None]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #9 CALL_FUNCTION')
-+858: p68 = getfield_gc(p66, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
-+863: guard_value(p68, ConstPtr(ptr69), descr=<Guard124>) [p1, p0, p56, p68, p66, p2, p5, p8, p38, p23, p13, p14, None, p54, i58, p57, None]
-+882: p70 = getfield_gc(p66, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
-+887: p71 = getfield_gc(p66, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
-+887: p72 = getfield_gc(p66, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+892: p73 = getfield_gc(p66, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
-+897: guard_no_exception(, descr=<Guard125>) [p1, p0, p56, p72, p73, p2, p5, p8, p38, p23, p13, p14, p70, p66, p54, i58, p57, None]
-+912: i74 = force_token()
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #0 LOAD_GLOBAL')
-+919: guard_value(p70, ConstPtr(ptr75), descr=<Guard126>) [p1, p0, p56, p70, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-+938: p76 = getfield_gc(p70, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+942: guard_isnull(p76, descr=<Guard127>) [p1, p0, p56, p76, p70, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-+951: p78 = getfield_gc(ConstPtr(ptr77), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+964: guard_isnull(p78, descr=<Guard128>) [p1, p0, p56, p78, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-+973: p80 = getfield_gc(ConstPtr(ptr79), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
-+981: guard_value(p80, ConstPtr(ptr81), descr=<Guard129>) [p1, p0, p56, p80, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-+994: p82 = getfield_gc(p80, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+998: guard_isnull(p82, descr=<Guard130>) [p1, p0, p56, p82, p80, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-+1007: p84 = getfield_gc(ConstPtr(ptr83), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+1015: guard_value(p84, ConstPtr(ptr85), descr=<Guard131>) [p1, p0, p56, p84, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #3 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #6 LOAD_CONST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #9 BINARY_SUBSCR')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #10 CALL_FUNCTION')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #13 BUILD_TUPLE')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #16 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #19 BINARY_ADD')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #20 STORE_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #23 LOAD_GLOBAL')
-+1028: p87 = getfield_gc(ConstPtr(ptr86), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
-+1041: guard_nonnull_class(p87, 21003520, descr=<Guard132>) [p1, p0, p56, p87, p2, p5, p8, p38, p23, p13, p14, i74, None, p66, p54, i58, p57, None]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #26 LOOKUP_METHOD')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #29 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #32 CALL_METHOD')
-+1059: p90 = getfield_gc(ConstPtr(ptr89), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+1067: guard_not_invalidated(, descr=<Guard133>) [p1, p0, p56, p90, p2, p5, p8, p38, p23, p13, p14, p87, i74, None, p66, p54, i58, p57, None]
-+1067: p91 = getfield_gc(p87, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_r_dict_content 8>)
-+1071: guard_nonnull(p91, descr=<Guard134>) [p1, p0, p56, p87, p91, p2, p5, p8, p38, p23, p13, p14, None, i74, None, p66, p54, i58, p57, None]
-+1080: i92 = force_token()
-+1087: p94 = new_with_vtable(21002328)
-+1199: setfield_gc(p94, i74, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-setfield_gc(p56, p94, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+1250: setfield_gc(p0, i92, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+1261: p96 = new_array(3, descr=<GcPtrArrayDescr>)
-+1339: setarrayitem_gc(p96, 0, ConstPtr(ptr98), descr=<GcPtrArrayDescr>)
-+1347: setarrayitem_gc(p96, 1, ConstPtr(ptr100), descr=<GcPtrArrayDescr>)
-+1361: setarrayitem_gc(p96, 2, p54, descr=<GcPtrArrayDescr>)
-+1372: i103 = call_may_force(ConstClass(hash_tuple), p96, descr=<SignedCallDescr>)
-guard_not_forced(, descr=<Guard99>) [p1, p0, p56, p87, p91, i103, p94, p2, p5, p8, p38, p23, p13, p14, p96, p54, i58, p66, p57]
-+1445: guard_no_exception(, descr=<Guard135>) [p1, p0, p56, p87, p91, i103, p94, p2, p5, p8, p38, p23, p13, p14, p96, p54, i58, p66, p57]
-+1460: i104 = force_token()
-+1467: setfield_gc(p0, i104, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+1479: p106 = new_with_vtable(21002400)
-+1549: setfield_gc(p106, p96, descr=<GcPtrFieldDescr pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems 8>)
-+1560: i108 = call_may_force(ConstClass(ll_dict_lookup__dicttablePtr_pypy_interpreter_baseobjspace_W_RootPtr_Signed), p91, p106, i103, descr=<SignedCallDescr>)
-guard_not_forced(, descr=<Guard100>) [p1, p0, p56, p106, p87, i108, p91, p94, p2, p5, p8, p38, p23, p13, p14, p54, i58, p66, p57]
-+1619: guard_no_exception(, descr=<Guard136>) [p1, p0, p56, p106, p87, i108, p91, p94, p2, p5, p8, p38, p23, p13, p14, p54, i58, p66, p57]
-+1634: i110 = int_and(i108, -9223372036854775808)
-+1650: i111 = int_is_true(i110)
-guard_false(i111, descr=<Guard137>) [p1, p0, p56, p106, p87, i108, p91, p94, p2, p5, p8, p38, p23, p13, p14, p54, i58, p66, p57]
-+1660: p113 = call(ConstClass(ll_get_value__dicttablePtr_Signed), p91, i108, descr=<GcPtrCallDescr>)
-+1680: guard_no_exception(, descr=<Guard138>) [p1, p0, p56, p106, p87, p113, p94, p2, p5, p8, p38, p23, p13, p14, p54, i58, p66, p57]
-+1695: guard_nonnull_class(p113, 21206408, descr=<Guard139>) [p1, p0, p56, p106, p87, p113, p94, p2, p5, p8, p38, p23, p13, p14, p54, i58, p66, p57]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #35 STORE_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #38 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #41 LOAD_CONST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #44 COMPARE_OP')
-+1713: i116 = ptr_eq(p113, ConstPtr(ptr115))
-guard_false(i116, descr=<Guard140>) [p1, p0, p56, p94, p2, p5, p8, p38, p23, p13, p14, p113, p106, p54, i58, p66, p57]
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #47 POP_JUMP_IF_FALSE')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #50 LOAD_FAST')
-debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 229> #53 RETURN_VALUE')
-+1726: p117 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
-+1738: guard_isnull(p117, descr=<Guard141>) [p1, p0, p56, p113, p117, p94, p2, p5, p8, p38, p23, p13, p14, None, p106, p54, i58, p66, p57]
-+1747: i118 = getfield_gc(p56, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
-+1752: i119 = int_is_true(i118)
-guard_false(i119, descr=<Guard142>) [p1, p0, p56, p113, p94, p2, p5, p8, p38, p23, p13, p14, None, p106, p54, i58, p66, p57]
-+1762: p120 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #12 LOOKUP_METHOD')
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #15 LOAD_FAST')
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #18 CALL_METHOD')
-+1762: p122 = getfield_gc(ConstPtr(ptr121), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
-+1770: setfield_gc(p94, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-+1785: guard_not_invalidated(, descr=<Guard143>) [p1, p0, p56, p122, p2, p5, p8, p38, p23, p13, p14, p113, None, p54, i58, None, p57]
-+1785: p124 = getfield_gc_pure(p23, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
-+1796: i125 = strlen(p124)
-+1800: i127 = int_gt(9223372036854775807, i125)
-guard_true(i127, descr=<Guard144>) [p1, p0, p56, p113, p124, p2, p5, p8, p38, p23, p13, p14, None, None, p54, i58, None, p57]
-+1819: p128 = getfield_gc(p113, descr=<GcPtrFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_code 16>)
-+1823: i129 = getfield_gc(p113, descr=<SignedFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_flags 24>)
-+1827: i131 = getarrayitem_gc_pure(p128, 0, descr=<SignedArrayDescr>)
-+1831: i133 = int_eq(i131, 17)
-guard_true(i133, descr=<Guard145>) [p1, p0, p56, p113, p2, p5, p8, p38, p23, p13, p14, i129, p124, p128, i125, None, None, p54, i58, None, p57]
-+1841: i135 = getarrayitem_gc_pure(p128, 2, descr=<SignedArrayDescr>)
-+1845: i137 = int_and(i135, 1)
-+1852: i138 = int_is_true(i137)
-guard_true(i138, descr=<Guard146>) [p1, p0, p56, p113, i135, p2, p5, p8, p38, p23, p13, p14, i129, p124, p128, i125, None, None, p54, i58, None, p57]
-+1862: i140 = getarrayitem_gc_pure(p128, 5, descr=<SignedArrayDescr>)
-+1866: i142 = int_gt(i140, 1)
-guard_false(i142, descr=<Guard147>) [p1, p0, p56, p113, p2, p5, p8, p38, p23, p13, p14, i129, p124, p128, i125, None, None, p54, i58, None, p57]
-+1876: i144 = getarrayitem_gc_pure(p128, 1, descr=<SignedArrayDescr>)
-+1880: i146 = int_add(i144, 1)
-+1884: i147 = getarrayitem_gc_pure(p128, i146, descr=<SignedArrayDescr>)
-+1889: i149 = int_eq(i147, 19)
-guard_true(i149, descr=<Guard148>) [p1, p0, p56, p113, i146, p2, p5, p8, p38, p23, p13, p14, i129, p124, p128, i125, None, None, p54, i58, None, p57]
-+1899: i151 = int_add(i146, 1)
-+1906: i152 = getarrayitem_gc_pure(p128, i151, descr=<SignedArrayDescr>)
-+1911: i154 = int_add(i146, 2)
-+1915: i156 = int_lt(0, i125)
-guard_true(i156, descr=<Guard149>) [p1, p0, p56, p113, i152, i154, p2, p5, p8, p38, p23, p13, p14, i129, p124, p128, i125, None, None, p54, i58, None, p57]
-+1925: guard_value(i154, 11, descr=<Guard150>) [p1, p0, p56, p113, i152, i154, p128, p2, p5, p8, p38, p23, p13, p14, i129, p124, None, i125, None, None, p54, i58, None, p57]
-+1935: guard_value(i152, 51, descr=<Guard151>) [p1, p0, p56, p113, i152, p128, p2, p5, p8, p38, p23, p13, p14, i129, p124, None, i125, None, None, p54, i58, None, p57]
-+1945: guard_value(p128, ConstPtr(ptr159), descr=<Guard152>) [p1, p0, p56, p113, p128, p2, p5, p8, p38, p23, p13, p14, i129, p124, None, i125, None, None, p54, i58, None, p57]
++464: guard_value(p28, ConstPtr(ptr29), descr=<Guard144>) [p1, p0, p28, p2, p5, p8, p9, p23, p11, p13, p14, p15]
++483: p30 = getfield_gc(p28, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++488: guard_value(p30, ConstPtr(ptr31), descr=<Guard145>) [p1, p0, p30, p28, p2, p5, p8, p9, p23, p11, p13, p14, p15]
++501: p33 = getfield_gc(ConstPtr(ptr32), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++514: guard_nonnull_class(p33, 20812584, descr=<Guard146>) [p1, p0, p33, p2, p5, p8, p9, p23, p11, p13, p14, p15]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #53 LOOKUP_METHOD')
++534: p35 = getfield_gc(p33, descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
++539: guard_value(p35, ConstPtr(ptr36), descr=<Guard147>) [p1, p0, p33, p35, p2, p5, p8, p9, p23, p11, p13, p14, p15]
++558: p37 = getfield_gc(p35, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++562: guard_value(p37, ConstPtr(ptr38), descr=<Guard148>) [p1, p0, p33, p37, p35, p2, p5, p8, p9, p23, p11, p13, p14, p15]
++575: p40 = getfield_gc(ConstPtr(ptr39), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++588: guard_nonnull_class(p40, ConstClass(Function), descr=<Guard149>) [p1, p0, p40, p33, p2, p5, p8, p9, p23, p11, p13, p14, p15]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #56 LOAD_CONST')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #59 LOAD_FAST')
++606: guard_nonnull_class(p23, ConstClass(W_StringObject), descr=<Guard150>) [p1, p0, p23, p2, p5, p8, p9, p11, p40, p15]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #62 CALL_METHOD')
++624: p43 = getfield_gc(p40, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
++628: guard_value(p43, ConstPtr(ptr44), descr=<Guard151>) [p1, p0, p43, p40, p2, p5, p8, p9, p23, p11]
++647: p45 = getfield_gc(p40, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
++651: i46 = arraylen_gc(p45, descr=<GcPtrArrayDescr>)
++656: i48 = int_sub(3, i46)
++666: i50 = int_ge(2, i48)
+guard_true(i50, descr=<Guard152>) [p1, p0, p40, p2, p5, p8, p9, p23, p11]
++676: p51 = getfield_gc(p40, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
++680: p52 = getfield_gc(p40, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
++680: i54 = int_sub(i46, 1)
++687: i55 = int_ge(i54, i46)
+guard_false(i55, descr=<Guard153>) [p1, p0, i46, i54, p40, p2, p5, p8, p9, p23, p11, p51]
++696: p56 = getarrayitem_gc_pure(p45, i54, descr=<GcPtrArrayDescr>)
++701: p58 = call(ConstClass(getexecutioncontext), descr=<GcPtrCallDescr>)
++760: p59 = getfield_gc(p58, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++764: i60 = force_token()
++771: p61 = getfield_gc(p58, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++775: guard_isnull(p61, descr=<Guard154>) [p1, p0, p58, p61, p2, p5, p8, p9, p23, p11, p40, p56, p59, i60, p51]
++784: i62 = getfield_gc(p58, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++788: i63 = int_is_zero(i62)
+guard_true(i63, descr=<Guard155>) [p1, p0, p58, p2, p5, p8, p9, p23, p11, p40, p56, p59, i60, p51]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #0 LOAD_GLOBAL')
++798: guard_value(p51, ConstPtr(ptr64), descr=<Guard156>) [p1, p0, p58, p51, p2, p5, p8, p9, p23, p11, p40, p56, p59, i60, None]
++824: p66 = getfield_gc(p51, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++828: guard_value(p66, ConstPtr(ptr67), descr=<Guard157>) [p1, p0, p58, p66, p51, p2, p5, p8, p9, p23, p11, p40, p56, p59, i60, None]
++841: p69 = getfield_gc(ConstPtr(ptr68), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++854: guard_nonnull_class(p69, ConstClass(Function), descr=<Guard158>) [p1, p0, p58, p69, p2, p5, p8, p9, p23, p11, p40, p56, p59, i60, None]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #3 LOAD_FAST')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #6 LOAD_FAST')
++873: guard_nonnull(p56, descr=<Guard159>) [p1, p0, p58, p56, p2, p5, p8, p9, p23, p11, p40, p69, None, p59, i60, None]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #9 CALL_FUNCTION')
++889: p71 = getfield_gc(p69, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_code 24>)
++893: guard_value(p71, ConstPtr(ptr72), descr=<Guard160>) [p1, p0, p58, p71, p69, p2, p5, p8, p9, p23, p11, p40, None, p56, p59, i60, None]
++912: p73 = getfield_gc(p69, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_w_func_globals 64>)
++916: p74 = getfield_gc(p69, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_closure 16>)
++916: p75 = getfield_gc(p69, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++920: p76 = getfield_gc(p69, descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_defs_w 32>)
++924: guard_no_exception(, descr=<Guard161>) [p1, p0, p58, p75, p76, p2, p5, p8, p9, p23, p11, p40, p73, p69, p56, p59, i60, None]
++939: i77 = force_token()
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #0 LOAD_GLOBAL')
++946: guard_value(p73, ConstPtr(ptr78), descr=<Guard162>) [p1, p0, p58, p73, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
++965: p79 = getfield_gc(p73, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++969: guard_value(p79, ConstPtr(ptr80), descr=<Guard163>) [p1, p0, p58, p79, p73, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
++982: p82 = getfield_gc(ConstPtr(ptr81), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++995: guard_isnull(p82, descr=<Guard164>) [p1, p0, p58, p82, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
++1004: p84 = getfield_gc(ConstPtr(ptr83), descr=<GcPtrFieldDescr pypy.interpreter.module.Module.inst_w_dict 8>)
++1012: guard_value(p84, ConstPtr(ptr85), descr=<Guard165>) [p1, p0, p58, p84, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
++1025: p86 = getfield_gc(p84, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++1029: guard_value(p86, ConstPtr(ptr87), descr=<Guard166>) [p1, p0, p58, p86, p84, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
++1042: p89 = getfield_gc(ConstPtr(ptr88), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++1050: guard_value(p89, ConstPtr(ptr90), descr=<Guard167>) [p1, p0, p58, p89, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #3 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #6 LOAD_CONST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #9 BINARY_SUBSCR')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #10 CALL_FUNCTION')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #13 BUILD_TUPLE')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #16 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #19 BINARY_ADD')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #20 STORE_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #23 LOAD_GLOBAL')
++1063: p92 = getfield_gc(ConstPtr(ptr91), descr=<GcPtrFieldDescr pypy.objspace.std.celldict.ModuleCell.inst_w_value 8>)
++1076: guard_nonnull_class(p92, 20802224, descr=<Guard168>) [p1, p0, p58, p92, p2, p5, p8, p9, p23, p11, p40, i77, None, p69, p56, p59, i60, None]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #26 LOOKUP_METHOD')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #29 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #32 CALL_METHOD')
++1095: p95 = getfield_gc(ConstPtr(ptr94), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++1103: guard_not_invalidated(, descr=<Guard169>) [p1, p0, p58, p95, p2, p5, p8, p9, p23, p11, p40, p92, i77, None, p69, p56, p59, i60, None]
++1103: p96 = getfield_gc(p92, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_strategy 16>)
++1107: guard_class(p96, ConstClass(ObjectDictStrategy), descr=<Guard170>) [p1, p0, p58, p92, p96, p2, p5, p8, p9, p23, p11, p40, None, i77, None, p69, p56, p59, i60, None]
++1119: p98 = getfield_gc(p92, descr=<GcPtrFieldDescr pypy.objspace.std.dictmultiobject.W_DictMultiObject.inst_dstorage 8>)
++1123: i99 = force_token()
++1130: p101 = new_with_vtable(20801800)
++1242: setfield_gc(p101, i77, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
+setfield_gc(p58, p101, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++1293: setfield_gc(p0, i99, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++1297: p103 = new_array(3, descr=<GcPtrArrayDescr>)
++1375: setarrayitem_gc(p103, 0, ConstPtr(ptr105), descr=<GcPtrArrayDescr>)
++1383: setarrayitem_gc(p103, 1, ConstPtr(ptr107), descr=<GcPtrArrayDescr>)
++1397: setarrayitem_gc(p103, 2, p56, descr=<GcPtrArrayDescr>)
++1408: i110 = call_may_force(ConstClass(hash_tuple), p103, descr=<SignedCallDescr>)
+guard_not_forced(, descr=<Guard135>) [p1, p0, p58, p92, p98, i110, p101, p2, p5, p8, p9, p23, p11, p40, p56, p59, p69, i60, p103]
++1481: guard_no_exception(, descr=<Guard171>) [p1, p0, p58, p92, p98, i110, p101, p2, p5, p8, p9, p23, p11, p40, p56, p59, p69, i60, p103]
++1496: i111 = force_token()
++1503: setfield_gc(p0, i111, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++1514: p113 = new_with_vtable(20801872)
++1584: setfield_gc(p113, p103, descr=<GcPtrFieldDescr pypy.objspace.std.tupleobject.W_TupleObject.inst_wrappeditems 8>)
++1595: i115 = call_may_force(ConstClass(ll_dict_lookup__dicttablePtr_pypy_interpreter_baseobjspace_W_RootPtr_Signed), p98, p113, i110, descr=<SignedCallDescr>)
+guard_not_forced(, descr=<Guard136>) [p1, p0, p58, p113, p92, i115, p98, p101, p2, p5, p8, p9, p23, p11, p40, p69, p56, p59, i60]
++1654: guard_no_exception(, descr=<Guard172>) [p1, p0, p58, p113, p92, i115, p98, p101, p2, p5, p8, p9, p23, p11, p40, p69, p56, p59, i60]
++1669: i117 = int_and(i115, -9223372036854775808)
++1685: i118 = int_is_true(i117)
+guard_false(i118, descr=<Guard173>) [p1, p0, p58, p113, p92, i115, p98, p101, p2, p5, p8, p9, p23, p11, p40, p69, p56, p59, i60]
++1695: p120 = call(ConstClass(ll_get_value__dicttablePtr_Signed), p98, i115, descr=<GcPtrCallDescr>)
++1715: guard_no_exception(, descr=<Guard174>) [p1, p0, p58, p113, p92, p120, p101, p2, p5, p8, p9, p23, p11, p40, p69, p56, p59, i60]
++1730: guard_nonnull_class(p120, 21007408, descr=<Guard175>) [p1, p0, p58, p113, p92, p120, p101, p2, p5, p8, p9, p23, p11, p40, p69, p56, p59, i60]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #35 STORE_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #38 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #41 LOAD_CONST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #44 COMPARE_OP')
++1748: i123 = ptr_eq(p120, ConstPtr(ptr122))
+guard_false(i123, descr=<Guard176>) [p1, p0, p58, p101, p2, p5, p8, p9, p23, p11, p40, p120, p113, p69, p56, p59, i60]
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #47 POP_JUMP_IF_FALSE')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #50 LOAD_FAST')
+debug_merge_point(2, '<code object _compile. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 229> #53 RETURN_VALUE')
++1761: p124 = getfield_gc(p58, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++1772: guard_isnull(p124, descr=<Guard177>) [p1, p0, p58, p120, p124, p101, p2, p5, p8, p9, p23, p11, p40, None, p113, p69, p56, p59, i60]
++1781: i125 = getfield_gc(p58, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++1785: i126 = int_is_true(i125)
+guard_false(i126, descr=<Guard178>) [p1, p0, p58, p120, p101, p2, p5, p8, p9, p23, p11, p40, None, p113, p69, p56, p59, i60]
++1795: p127 = getfield_gc(p58, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #12 LOOKUP_METHOD')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #15 LOAD_FAST')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #18 CALL_METHOD')
++1795: p129 = getfield_gc(ConstPtr(ptr128), descr=<GcPtrFieldDescr pypy.interpreter.function.Function.inst_name 40>)
++1803: setfield_gc(p101, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
++1818: guard_not_invalidated(, descr=<Guard179>) [p1, p0, p58, p129, p2, p5, p8, p9, p23, p11, p40, p120, None, None, p56, p59, i60]
++1818: p131 = getfield_gc_pure(p23, descr=<GcPtrFieldDescr pypy.objspace.std.stringobject.W_StringObject.inst__value 8>)
++1829: i132 = strlen(p131)
++1833: i134 = int_gt(9223372036854775807, i132)
+guard_true(i134, descr=<Guard180>) [p1, p0, p58, p120, p131, p2, p5, p8, p9, p23, p11, p40, None, None, None, p56, p59, i60]
++1852: p135 = getfield_gc(p120, descr=<GcPtrFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_code 16>)
++1856: i136 = getfield_gc(p120, descr=<SignedFieldDescr pypy.module._sre.interp_sre.W_SRE_Pattern.inst_flags 24>)
++1860: i138 = getarrayitem_gc_pure(p135, 0, descr=<SignedArrayDescr>)
++1864: i140 = int_eq(i138, 17)
+guard_true(i140, descr=<Guard181>) [p1, p0, p58, p120, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, p135, None, None, None, p56, p59, i60]
++1874: i142 = getarrayitem_gc_pure(p135, 2, descr=<SignedArrayDescr>)
++1878: i144 = int_and(i142, 1)
++1885: i145 = int_is_true(i144)
+guard_true(i145, descr=<Guard182>) [p1, p0, p58, p120, i142, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, p135, None, None, None, p56, p59, i60]
++1895: i147 = getarrayitem_gc_pure(p135, 5, descr=<SignedArrayDescr>)
++1899: i149 = int_gt(i147, 1)
+guard_false(i149, descr=<Guard183>) [p1, p0, p58, p120, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, p135, None, None, None, p56, p59, i60]
++1909: i151 = getarrayitem_gc_pure(p135, 1, descr=<SignedArrayDescr>)
++1913: i153 = int_add(i151, 1)
++1917: i154 = getarrayitem_gc_pure(p135, i153, descr=<SignedArrayDescr>)
++1922: i156 = int_eq(i154, 19)
+guard_true(i156, descr=<Guard184>) [p1, p0, p58, p120, i153, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, p135, None, None, None, p56, p59, i60]
++1932: i158 = int_add(i153, 1)
++1939: i159 = getarrayitem_gc_pure(p135, i158, descr=<SignedArrayDescr>)
++1944: i161 = int_add(i153, 2)
++1948: i163 = int_lt(0, i132)
+guard_true(i163, descr=<Guard185>) [p1, p0, p58, p120, i159, i161, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, p135, None, None, None, p56, p59, i60]
++1958: guard_value(i161, 11, descr=<Guard186>) [p1, p0, p58, p120, i159, i161, p135, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, None, None, None, None, p56, p59, i60]
++1968: guard_value(i159, 51, descr=<Guard187>) [p1, p0, p58, p120, i159, p135, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, None, None, None, None, p56, p59, i60]
++1978: guard_value(p135, ConstPtr(ptr166), descr=<Guard188>) [p1, p0, p58, p120, p135, p2, p5, p8, p9, p23, p11, p40, i136, p131, i132, None, None, None, None, p56, p59, i60]
 debug_merge_point(2, 'StrLiteralSearch at 11/51 [17. 8. 3. 1. 1. 1. 1. 51. 0. 19. 51. 1]')
-+1964: i160 = force_token()
-+1971: p161 = new_with_vtable(21002328)
-+2069: setfield_gc(p161, i58, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-setfield_gc(p56, p161, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+2111: setfield_gc(p0, i160, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
-+2129: p163 = new_with_vtable(21022112)
-+2199: setfield_gc(p163, ConstPtr(ptr159), descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_pattern 56>)
-+2213: setfield_gc(p163, i129, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_flags 16>)
-+2224: setfield_gc(p163, p124, descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
-+2235: setfield_gc(p163, i125, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_end 8>)
-+2246: i164 = call_assembler(0, p163, descr=<Loop5>)
-guard_not_forced(, descr=<Guard101>) [p1, p0, p56, p113, p163, i164, p161, p2, p5, p8, p38, p23, p13, p14, p57, p54]
-+2337: guard_no_exception(, descr=<Guard153>) [p1, p0, p56, p113, p163, i164, p161, p2, p5, p8, p38, p23, p13, p14, p57, p54]
-+2352: guard_true(i164, descr=<Guard154>) [p1, p0, p56, p113, p163, p161, p2, p5, p8, p38, p23, p13, p14, p57, p54]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #21 RETURN_VALUE')
-+2361: p165 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
-+2372: guard_isnull(p165, descr=<Guard155>) [p1, p0, p56, p165, p161, p2, p5, p8, p38, p23, p13, p14, p113, p163, p57, p54]
-+2381: i166 = getfield_gc(p56, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
-+2385: i167 = int_is_true(i166)
-guard_false(i167, descr=<Guard156>) [p1, p0, p56, p161, p2, p5, p8, p38, p23, p13, p14, p113, p163, p57, p54]
-+2395: p168 = getfield_gc(p56, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #65 POP_TOP')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #66 JUMP_ABSOLUTE')
-+2395: i170 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-+2403: i172 = int_sub(i170, 62)
-+2407: setfield_raw(40681184, i172, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-setfield_gc(p56, p57, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-+2458: setfield_gc(p161, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
-+2473: i175 = int_lt(i172, 0)
-guard_false(i175, descr=<Guard157>) [p1, p0, p2, p5, p8, p13, p14, p23, None, None, None, None]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #44 FOR_ITER')
-+2483: jump(p0, p1, p2, p5, p8, p13, p14, p23, i166, p56, p57, descr=<Loop6>)
-+2625: --end of the loop--
-[1af17a04f8f24] jit-log-opt-loop}
-[1af17a0a31f25] {jit-log-opt-bridge
-# bridge out of Guard 154 with 18 ops
++1997: i167 = force_token()
++2004: p168 = new_with_vtable(20801800)
++2102: setfield_gc(p168, i60, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
+setfield_gc(p58, p168, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++2142: setfield_gc(p0, i167, descr=<SignedFieldDescr pypy.interpreter.pyframe.PyFrame.vable_token 24>)
++2160: p170 = new_with_vtable(20819912)
++2230: setfield_gc(p170, i132, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_end 8>)
++2241: setfield_gc(p170, i136, descr=<SignedFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_flags 16>)
++2252: setfield_gc(p170, p131, descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.StrMatchContext.inst__string 64>)
++2263: setfield_gc(p170, ConstPtr(ptr166), descr=<GcPtrFieldDescr pypy.rlib.rsre.rsre_core.AbstractMatchContext.inst_pattern 56>)
++2277: i171 = call_assembler(0, p170, descr=<Loop6>)
+guard_not_forced(, descr=<Guard137>) [p1, p0, p58, p120, p170, i171, p168, p2, p5, p8, p9, p23, p11, p40, p56, p59]
++2368: guard_no_exception(, descr=<Guard189>) [p1, p0, p58, p120, p170, i171, p168, p2, p5, p8, p9, p23, p11, p40, p56, p59]
++2383: guard_true(i171, descr=<Guard190>) [p1, p0, p58, p120, p170, p168, p2, p5, p8, p9, p23, p11, p40, p56, p59]
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #21 RETURN_VALUE')
++2392: p172 = getfield_gc(p58, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
++2403: guard_isnull(p172, descr=<Guard191>) [p1, p0, p58, p172, p168, p2, p5, p8, p9, p23, p11, p40, p120, p170, p56, p59]
++2412: i173 = getfield_gc(p58, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
++2416: i174 = int_is_true(i173)
+guard_false(i174, descr=<Guard192>) [p1, p0, p58, p168, p2, p5, p8, p9, p23, p11, p40, p120, p170, p56, p59]
++2426: p175 = getfield_gc(p58, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #65 POP_TOP')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #66 JUMP_ABSOLUTE')
++2426: i177 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
++2434: i179 = int_sub(i177, 62)
++2438: setfield_raw(40588192, i179, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
+setfield_gc(p58, p59, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++2489: setfield_gc(p168, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
++2504: i182 = int_lt(i179, 0)
+guard_false(i182, descr=<Guard193>) [p1, p0, p2, p5, p8, p9, p23, p11, None, None, None, None]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #44 FOR_ITER')
++2514: jump(p0, p1, p2, p5, p8, p9, p23, p11, i173, p58, p59, descr=<Loop7>)
++2653: --end of the loop--
+[4cacae517669] jit-log-opt-loop}
+[4cacaee48ccb] {jit-backend
+[4cacaeea1c45] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65be3b7 +0  488DA50000000049BB98A0CFB8A07F00004D8B3B4983C70149BB98A0CFB8A07F00004D893B4C8BBD18FFFFFF4D8B77484D85F60F85000000004D8B77284983FE000F85000000004C8B3425A0536B024983EE054C893425A0536B024C8BAD08FFFFFF41F647040174104C89FF4C89EE49C7C310734D0041FFD34D896F384C8BAD78FEFFFF49C74508FDFFFFFF4983FE000F8C000000004C8BBDD8FEFFFF4C8BB5C0FEFFFF4C8BADB8FEFFFF49BBF8F477B6A07F00004D89DC49C7C2000000004C8B8D30FFFFFF49C7C00400000048C7C72C000000488BB520FFFFFF488B9DC8FEFFFF488B9550FFFFFF488B8D38FFFFFF48C78570FFFFFF0000000048C78568FFFFFF0000000048C78560FFFFFF0000000048C78558FFFFFF0000000049BB5DD15BB6A07F000041FFE349BB00905BB6A07F000041FFD398018C013C38BC019C0160689401505C54647403C200000049BB00905BB6A07F000041FFD398018C013CBC019C0160689401505C54647403C300000049BB00905BB6A07F000041FFD398018C019C0160689401505C070703C4000000
+[4cacaeeb8a21] jit-backend-dump}
+[4cacaeeb9cbd] {jit-backend-addr
+Bridge out of guard 190 has address 7fa0b65be3b7 to 7fa0b65be4e0
+[4cacaeebba0f] jit-backend-addr}
+[4cacaeebca47] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65be3ba +0  E0FDFFFF
+[4cacaeebe559] jit-backend-dump}
+[4cacaeebf303] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65be3ec +0  F0000000
+[4cacaeec0929] jit-backend-dump}
+[4cacaeec134f] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65be3fa +0  07010000
+[4cacaeec278f] jit-backend-dump}
+[4cacaeec3179] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65be449 +0  DC000000
+[4cacaeec45f5] jit-backend-dump}
+[4cacaeec564b] {jit-backend-dump
+BACKEND x86_64
+SYS_EXECUTABLE python
+CODE_DUMP @7fa0b65bd965 +0  4E0A0000
+[4cacaeec6b21] jit-backend-dump}
+[4cacaeec7715] jit-backend}
+[4cacaeec8bc1] {jit-log-opt-bridge
+# bridge out of Guard 190 with 18 ops
 [p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14]
-debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy/lib-python/2.7/re.py'. line 139> #21 RETURN_VALUE')
+debug_merge_point(1, '<code object search. file '/home/fijal/venv/pypy2/lib-python/2.7/re.py'. line 139> #21 RETURN_VALUE')
 +37: p15 = getfield_gc(p2, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_w_tracefunc 72>)
-+48: guard_isnull(p15, descr=<Guard158>) [p0, p1, p2, p15, p5, p6, p7, p8, p9, p10, p11, p12, p14, p13]
++48: guard_isnull(p15, descr=<Guard194>) [p0, p1, p2, p15, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14]
 +57: i16 = getfield_gc(p2, descr=<NonGcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_profilefunc 40>)
 +61: i17 = int_is_true(i16)
-guard_false(i17, descr=<Guard159>) [p0, p1, p2, p5, p6, p7, p8, p9, p10, p11, p12, p14, p13]
+guard_false(i17, descr=<Guard195>) [p0, p1, p2, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14]
 +71: p18 = getfield_gc(p2, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #65 POP_TOP')
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #66 JUMP_ABSOLUTE')
-+71: i20 = getfield_raw(40681184, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #65 POP_TOP')
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #66 JUMP_ABSOLUTE')
++71: i20 = getfield_raw(40588192, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
 +79: i22 = int_sub(i20, 5)
-+83: setfield_raw(40681184, i22, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
-setfield_gc(p2, p13, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
++83: setfield_raw(40588192, i22, descr=<SignedFieldDescr pypysig_long_struct.c_value 0>)
+setfield_gc(p2, p14, descr=<GcPtrFieldDescr pypy.interpreter.executioncontext.ExecutionContext.inst_topframeref 56>)
 +125: setfield_gc(p5, -3, descr=<SignedFieldDescr JitVirtualRef.virtual_token 8>)
 +140: i25 = int_lt(i22, 0)
-guard_false(i25, descr=<Guard160>) [p0, p1, p6, p7, p8, p11, p12, p10, None, None]
-debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 34> #44 FOR_ITER')
-+150: jump(p1, p0, p6, ConstPtr(ptr27), 0, p7, 1, 44, p8, ConstPtr(ptr31), ConstPtr(ptr32), ConstPtr(ptr33), ConstPtr(ptr34), p11, p12, p10, descr=<Loop7>)
-+278: --end of the loop--
-[1af17a0a4ca6a] jit-log-opt-bridge}
-[1af17a0db52b7] {jit-backend-counts
-0:4481
-1:4485
-2:0
-3:4281
-4:1965
-5:2
-6:9210
-7:8304
-8:1686
-9:532
-10:1433
-11:1052
-[1af17a0db9523] jit-backend-counts}
+guard_false(i25, descr=<Guard196>) [p0, p1, p6, p7, p8, p9, p10, p11, None, None]
+debug_merge_point(0, '<code object inlined_str_stuff. file 'source.py'. line 40> #44 FOR_ITER')
++150: jump(p1, p0, p6, ConstPtr(ptr27), 0, p7, 4, 44, p8, p9, p10, p11, ConstPtr(ptr31), ConstPtr(ptr32), ConstPtr(ptr33), ConstPtr(ptr34), descr=<Loop8>)
++297: --end of the loop--
+[4cacaeef6f29] jit-log-opt-bridge}
+[4cacaf781b8d] {jit-backend-counts
+0:13968
+1:9112
+2:4445
+3:4485
+4:0
+5:4245
+6:1965
+7:2
+8:9210
+9:8304
+10:1686
+11:528
+12:1435
+13:1052
+[4cacaf788a8d] jit-backend-counts}
diff --git a/source.py b/source.py
--- a/source.py
+++ b/source.py
@@ -18,14 +18,20 @@
 
 inlined_call()
 
+def uninlined_call():
+    s = 0
+    for i in range(3):
+        s += 1
+    return s
+
 def bridge():
     s = 0
     i = 0
     while i < 10000:
         if i % 2:
+            s += uninlined_call()
+        else:
             s += 1
-        else:
-            s += 2
         i += 1
     return s
 


More information about the pypy-commit mailing list