ASSIGNED 165829
jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.* fails when run with JSC_validateBytecode=true.
https://bugs.webkit.org/show_bug.cgi?id=165829
Summary jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.* f...
Mark Lam
Reported 2016-12-13 16:05:19 PST
Running ... $ JSC_validateBytecode=1 ./Tools/Scripts/run-javascriptcore-tests --debug --no-build ... on a debug build of 209727 produces: jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: Tests for ES6 class syntax default constructor jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: PASS new A instanceof A jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: PASS A():::TypeError: Cannot call a class constructor without |new| jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: PASS A.prototype.constructor instanceof Function jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: PASS A.prototype.constructor.name:::"A" jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: PASS new B instanceof A; new B instanceof A jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: ASSERTION FAILED: i + 1 < basicBlocks.size() jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: /Volumes/Data/ws2/OpenSource/Source/JavaScriptCore/bytecode/BytecodeBasicBlock.cpp(179) : static void JSC::BytecodeBasicBlock::computeImpl(Block *, Instruction *, unsigned int, Vector<std::unique_ptr<BytecodeBasicBlock> > &) [Block = JSC::CodeBlock, Instruction = JSC::Instruction] jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 1 0x10e695ded WTFCrash jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 2 0x10d67eae9 void JSC::BytecodeBasicBlock::computeImpl<JSC::CodeBlock, JSC::Instruction>(JSC::CodeBlock*, JSC::Instruction*, unsigned int, WTF::Vector<std::__1::unique_ptr<JSC::BytecodeBasicBlock, std::__1::default_delete<JSC::BytecodeBasicBlock> >, 0ul, WTF::CrashOnOverflow, 16ul>&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 3 0x10d67db0b JSC::BytecodeBasicBlock::compute(JSC::CodeBlock*, JSC::Instruction*, unsigned int, WTF::Vector<std::__1::unique_ptr<JSC::BytecodeBasicBlock, std::__1::default_delete<JSC::BytecodeBasicBlock> >, 0ul, WTF::CrashOnOverflow, 16ul>&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 4 0x10d6e4a13 JSC::BytecodeGraph<JSC::CodeBlock>::BytecodeGraph(JSC::CodeBlock*, WTF::RefCountedArray<JSC::Instruction>&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 5 0x10d6e1e45 JSC::BytecodeGraph<JSC::CodeBlock>::BytecodeGraph(JSC::CodeBlock*, WTF::RefCountedArray<JSC::Instruction>&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 6 0x10d6e1dec JSC::BytecodeLivenessAnalysis::BytecodeLivenessAnalysis(JSC::CodeBlock*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 7 0x10d6e1ead JSC::BytecodeLivenessAnalysis::BytecodeLivenessAnalysis(JSC::CodeBlock*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 8 0x10d733d64 JSC::CodeBlock::validate() jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 9 0x10e4c67c9 JSC::ScriptExecutable::prepareForExecutionImpl(JSC::VM&, JSC::JSFunction*, JSC::JSScope*, JSC::CodeSpecializationKind, JSC::CodeBlock*&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 10 0x10df340e0 JSC::JSObject* JSC::ScriptExecutable::prepareForExecution<JSC::FunctionExecutable>(JSC::VM&, JSC::JSFunction*, JSC::JSScope*, JSC::CodeSpecializationKind, JSC::CodeBlock*&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 11 0x10e1d3a64 JSC::LLInt::setUpCall(JSC::ExecState*, JSC::Instruction*, JSC::CodeSpecializationKind, JSC::JSValue, JSC::LLIntCallLinkInfo*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 12 0x10e1d2b83 JSC::LLInt::genericCall(JSC::ExecState*, JSC::Instruction*, JSC::CodeSpecializationKind) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 13 0x10e1d2a73 llint_slow_path_call jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 14 0x10e1e1083 llint_entry jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 15 0x10e1d995e vmEntryToJavaScript jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 16 0x10dfb8a92 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 17 0x10df3006f JSC::Interpreter::execute(JSC::EvalExecutable*, JSC::ExecState*, JSC::JSValue, JSC::JSScope*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 18 0x10df2f007 JSC::eval(JSC::ExecState*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 19 0x10e1d3673 llint_slow_path_call_eval jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 20 0x10e1e1926 llint_entry jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 21 0x10e1e1095 llint_entry jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 22 0x10e1d995e vmEntryToJavaScript jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 23 0x10dfb8a92 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 24 0x10df33464 JSC::Interpreter::execute(JSC::ProgramExecutable*, JSC::ExecState*, JSC::JSObject*) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 25 0x10d7c095d JSC::evaluate(JSC::ExecState*, JSC::SourceCode const&, JSC::JSValue, WTF::NakedPtr<JSC::Exception>&) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 26 0x10d226061 runWithScripts(GlobalObject*, WTF::Vector<Script, 0ul, WTF::CrashOnOverflow, 16ul> const&, WTF::String const&, bool, bool, bool) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 27 0x10d21dc3a runJSC(JSC::VM*, CommandLine) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 28 0x10d21c79d jscmain(int, char**) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 29 0x10d21c6ee main jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: 30 0x7fffb4298255 start jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: test_script_25656: line 2: 62134 Segmentation fault: 11 ( "$@" ../../../../.vm/JavaScriptCore.framework/Resources/jsc --useFTLJIT\=false --useFunctionDotArguments\=true --maxPerThreadStackUsage\=1572864 --testTheFTL\=true --useFTLJIT\=true resources/standalone-pre.js class-syntax-default-constructor.js resources/standalone-post.js ) jsc-layout-tests.yaml/js/script-tests/class-syntax-default-constructor.js.layout: ERROR: Unexpected exit code: 139 Basically, we're seeing an assertion failure: ASSERTION FAILED: i + 1 < basicBlocks.size()
Attachments
Note You need to log in before you can comment on or make changes to this bug.