[PyPy-issue] [issue545] Rare bug in optimizeopt

Fijal pypy-dev-issue at codespeak.net
Mon Jun 7 07:28:53 CEST 2010


Fijal <fijall at gmail.com> added the comment:

File Edit Options Buffers Tools Help                                                                                         
guard_value(p3322, ConstPtr(ptr3327), descr=<ResumeGuardDescr object at 
0xf775f604>)
p3328 = 
new_with_vtable(ConstClass(pypy.objspace.std.stringobject.W_StringObject))
setfield_gc(p3328, ConstPtr(ptr3329), descr=<GcPtrFieldDescr 8>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f67c>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f6cc>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f71c>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f76c>)
guard_class(p3328, 144637152, descr=<ResumeGuardDescr object at 0xf775f7bc>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f80c>)
guard_class(p3328, 144637152, descr=<ResumeGuardDescr object at 0xf775f85c>)
guard_class(p3328, 144637152, descr=<ResumeGuardDescr object at 0xf775f8ac>)
p3338 = getfield_gc_pure(p3328, descr=<GcPtrFieldDescr 8>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f914>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f964>)
guard_class(p2, 144725152, descr=<ResumeGuardDescr object at 0xf775f9b4>)
p3344 = call_pure(ConstClass(W_TypeObject._pure_lookup_where_with_method_cache), 
ConstPtr(ptr3342), p3338, ConstPtr(ptr3343)\
, descr=<GcPtrCallDescr>)
p3345 = getfield_gc_pure(p3344, descr=<GcPtrFieldDescr 8>)
guard_isnull(p3345, descr=<ResumeGuardDescr object at 0xf775fa3c>)
guard_value(p2, ConstPtr(ptr3346), descr=<ResumeGuardDescr object at 
0xf775fa8c>)
p3347 = getfield_gc(ConstPtr(ptr3346), descr=<GcPtrFieldDescr 16>)
guard_value(p3347, ConstPtr(ptr3348), descr=<ResumeGuardDescr object at 
0xf775faf4>)
p3349 = call_pure(ConstClass(W_TypeObject._pure_lookup_where_with_method_cache), 
ConstPtr(ptr3346), p3338, ConstPtr(ptr3348)\
, descr=<GcPtrCallDescr>)
p3350 = getfield_gc_pure(p3349, descr=<GcPtrFieldDescr 8>)
guard_isnull(p3350, descr=<ResumeGuardDescr object at 0xf775fb7c>)

This is an exploding trace before optimization. The last guard_isnull explodes.

----------
status: unread -> chatting

_______________________________________________________
PyPy development tracker <pypy-dev-issue at codespeak.net>
<https://codespeak.net/issue/pypy-dev/issue545>
_______________________________________________________



More information about the Pypy-issue mailing list