b9org / b9

An educational JS virtual machine based on Eclipse OMR
http://www.base9.xyz
Apache License 2.0
45 stars 24 forks source link

Crash in heap painting #143

Closed rwy7 closed 6 years ago

rwy7 commented 6 years ago
terminate called after throwing an instance of 'std::runtime_error'
  what():  Unrecognized cell type
Program received signal SIGABRT, Aborted.
0x00007ffffdb45428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
54      ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) where
#0  0x00007ffffdb45428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1  0x00007ffffdb4702a in __GI_abort () at abort.c:89
#2  0x00007ffffe18f84d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3  0x00007ffffe18d6b6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4  0x00007ffffe18d701 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00007ffffe18d919 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00007ffffeef8edd in OMR::Om::ObjectModelDelegate::getObjectSizeInBytesWithHeader (cell=0x7ffffd1c03c0,
    this=0x6252a0) at ../om/glue/ObjectModelDelegate.hpp:116
#7  GC_ObjectModelBase::getSizeInBytesWithHeader (objectPtr=0x7ffffd1c03c0, this=0x625290)
    at ../third_party/omr/gc/base/ObjectModelBase.hpp:212
#8  GC_ObjectModelBase::getConsumedSizeInBytesWithHeader (objectPtr=0x7ffffd1c03c0, this=0x625290)
    at ../third_party/omr/gc/base/ObjectModelBase.hpp:230
#9  GC_ObjectHeapIteratorAddressOrderedList::nextObject (this=0x7ffffffdc7d0)
    at ../third_party/omr/gc/base/ObjectHeapIteratorAddressOrderedList.hpp:161
#10 0x00007ffffeec72ad in MM_GlobalCollectorDelegate::poisonUnmarkedObjectsInRegion (this=0x62ca20, objectIterator=...)
    at ../om/glue/GlobalCollectorDelegate.cpp:35
#11 0x00007ffffeec7862 in MM_GlobalCollectorDelegate::poisonUnmarkedObjects (this=0x62ca20, env=0x62b9c8)
    at ../om/glue/GlobalCollectorDelegate.cpp:64
#12 0x00007ffffeec789f in MM_GlobalCollectorDelegate::postMarkProcessing (this=0x62ca20, env=0x62b9c8)
    at ../om/glue/GlobalCollectorDelegate.cpp:72
#13 0x00007ffffeeb0aca in MM_ParallelGlobalGC::masterThreadGarbageCollect (this=0x62c9e0, env=0x62b9c8,
    allocDescription=0x0, initMarkMap=true, rebuildMarkBits=false)
    at ../third_party/omr/gc/base/standard/ParallelGlobalGC.cpp:383
#14 0x00007ffffeeb1d69 in MM_ParallelGlobalGC::internalGarbageCollect (this=0x62c9e0, env=0x62b9c8, subSpace=0x652100,
    allocDescription=0x0) at ../third_party/omr/gc/base/standard/ParallelGlobalGC.cpp:1069
#15 0x00007ffffeec9a99 in MM_Collector::garbageCollect (this=0x62c9e0, env=0x62b9c8, callingSubSpace=0x652100,
    allocateDescription=0x0, gcCode=0, objectAllocationInterface=0x0, baseSubSpace=0x0, context=0x0)
    at ../third_party/omr/gc/base/Collector.cpp:494
---Type <return> to continue, or q <return> to quit---
#16 0x00007ffffeea930a in MM_MemorySubSpace::systemGarbageCollect (this=0x652100, env=0x62b9c8, gcCode=0)
    at ../third_party/omr/gc/base/MemorySubSpace.cpp:951
#17 0x00007ffffeea921b in MM_MemorySubSpace::systemGarbageCollect (this=0x651d50, env=0x62b9c8, gcCode=0)
    at ../third_party/omr/gc/base/MemorySubSpace.cpp:921
#18 0x00007ffffeea59de in MM_MemorySpace::systemGarbageCollect (this=0x652470, env=0x62b9c8, gcCode=0)
    at ../third_party/omr/gc/base/MemorySpace.cpp:400
#19 0x00007ffffeea2b19 in MM_Heap::systemGarbageCollect (this=0x62b420, env=0x62b9c8, gcCode=0)
    at ../third_party/omr/gc/base/Heap.cpp:108
#20 0x00007ffffeeb9e64 in OMR_GC_SystemCollect (omrVMThread=0x657a40, gcCode=0)
    at ../third_party/omr/gc/startup/omrgcalloc.cpp:66
#21 0x00007ffffe93eccc in OMR::Om::BaseAllocator::allocate<OMR::Om::ObjectMap, OMR::Om::ObjectMapInitializer> (cx=...,
    init=..., size=56) at ../om/include/OMR/Om/Allocator.inl.hpp:23
#22 0x00007ffffe93c080 in OMR::Om::ObjectMap::allocate (cx=..., parent=..., attributes=...)
    at ../om/include/OMR/Om/ObjectMap.inl.hpp:42
#23 0x00007ffffe93c1b9 in OMR::Om::ObjectMap::allocate (cx=...) at ../om/include/OMR/Om/ObjectMap.inl.hpp:59
#24 0x00007ffffe93b970 in OMR::Om::Object::allocate (cx=...) at ../om/include/OMR/Om/Object.inl.hpp:141
#25 0x00007ffffe939287 in b9::ExecutionContext::doNewObject (this=0x655a80) at ../b9/src/ExecutionContext.cpp:345
rwy7 commented 6 years ago

duplicate of #151