[Webkit-unassigned] [Bug 136391] New: ASSERTION FAILED: cell->isObject() in JSC::asObject(JSCell*)
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Aug 29 15:27:51 PDT 2014
https://bugs.webkit.org/show_bug.cgi?id=136391
Summary: ASSERTION FAILED: cell->isObject() in
JSC::asObject(JSCell*)
Product: WebKit
Version: 528+ (Nightly build)
Platform: Unspecified
OS/Version: Unspecified
Status: NEW
Severity: Normal
Priority: P2
Component: JavaScriptCore
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: akiss at inf.u-szeged.hu
CC: msaboff at apple.com
When running tests on EFL/ARM64 (compiled with gcc), jsc segfaults on 451 tests with "ASSERTION FAILED: cell->isObject()". The simplest test case to cause the assertion is:
var o = {}
o = {__proto__: o}
The backtrace is as follows:
Program received signal SIGSEGV, Segmentation fault.
0x0000000001096b00 in WTFCrash () at /home/akiss/devel/WebKit/Source/WTF/wtf/Assertions.cpp:329
329 *(int *)(uintptr_t)0xbbadbeef = 0;
(gdb) bt
#0 0x0000000001096b00 in WTFCrash ()
at /home/akiss/devel/WebKit/Source/WTF/wtf/Assertions.cpp:329
#1 0x0000000000ae4fcc in JSC::asObject (cell=0x7fffffe660)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/runtime/JSObject.h:1189
#2 0x0000000000ae4ff4 in JSC::asObject (value=...)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/runtime/JSObject.h:1195
#3 0x0000000000be0900 in JSC::Register::function (this=0x7fffffe080)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/runtime/JSObject.h:1472
#4 0x0000000000be01b4 in JSC::ExecState::callee (this=0x7fffffe060)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/interpreter/CallFrame.h:46
#5 0x0000000000be9d44 in JSC::StackVisitor::readNonInlinedFrame (this=0x7fffffdf50,
callFrame=0x7fffffe060, codeOrigin=0x0)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/interpreter/StackVisitor.cpp:123
#6 0x0000000000be9bf0 in JSC::StackVisitor::readFrame (this=0x7fffffdf50, callFrame=0x7fffffe060)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/interpreter/StackVisitor.cpp:93
#7 0x0000000000be9b68 in JSC::StackVisitor::gotoNextFrame (this=0x7fffffdf50)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/interpreter/StackVisitor.cpp:68
#8 0x0000000000d77064 in JSC::StackVisitor::visit<JSC::GlobalFuncProtoSetterFunctor> (
startFrame=0x7fffffe030, functor=...)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/interpreter/StackVisitor.h:132
#9 0x0000000000d7641c in JSC::ExecState::iterate<JSC::GlobalFuncProtoSetterFunctor> (
this=0x7fffffe030, functor=...)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/interpreter/CallFrame.h:260
#10 0x0000000000d72f9c in JSC::globalFuncProtoSetter (exec=0x7fffffe030)
at /home/akiss/devel/WebKit/Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp:793
#11 0x0000000000e8690c in vmEntryToNative ()
It seems that the root of the problem is that vmEntryToNative does not set up the CallerFrame component of exec for JSC::globalFuncProtoSetter properly. This is very similar to the problem of https://bugs.webkit.org/show_bug.cgi?id=136313 . Currently, we rely on the called function (JSC::globalFuncProtoSetter, in this case) to push fp to the right place, but arm64/gcc generates different (but still eabi-conformant) prologue.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list