Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Race: local functions are sometimes created by the background compiler #29293

Open
rmacnak-google opened this issue Apr 6, 2017 · 1 comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends.

Comments

@rmacnak-google
Copy link
Contributor

Cf. #29230

../../runtime/vm/object.cc: 6721: error: expected: Thread::Current()->IsMutatorThread()
Dumping native stack trace for thread 6539
  [0x00000000009c0b93] dart::Profiler::DumpStackTrace()
  [0x00000000009c0b93] dart::Profiler::DumpStackTrace()
  [0x0000000000697011] dart::DynamicAssertionHelper::Fail(char const*, ...)
  [0x00000000008bb3f0] dart::Function::NewClosureFunction(dart::String const&, dart::Function const&, dart::TokenPosition)
  [0x000000000096c0f8] dart::Parser::ParseFunctionStatement(bool)
  [0x000000000094557a] dart::Parser::ParsePrimary()
  [0x000000000097b18c] dart::Parser::ParsePostfixExpr()
  [0x00000000009789b2] dart::Parser::ParseUnaryExpr()
  [0x000000000094f59d] dart::Parser::ParseBinaryExpr(int)
  [0x0000000000951596] dart::Parser::ParseConditionalExpr()
  [0x0000000000947148] dart::Parser::ParseExpr(bool, bool)
  [0x000000000094eb81] dart::Parser::ParseActualParameters(dart::ArgumentListNode*, bool)
  [0x000000000097be10] dart::Parser::ParseInstanceCall(dart::AstNode*, dart::String const&, dart::TokenPosition, bool)
  [0x000000000097a05e] dart::Parser::ParseSelectors(dart::AstNode*, bool)
  [0x000000000097b1d6] dart::Parser::ParsePostfixExpr()
  [0x00000000009789b2] dart::Parser::ParseUnaryExpr()
  [0x000000000094f59d] dart::Parser::ParseBinaryExpr(int)
  [0x0000000000951596] dart::Parser::ParseConditionalExpr()
  [0x0000000000947148] dart::Parser::ParseExpr(bool, bool)
  [0x0000000000957089] dart::Parser::ParseAwaitableExpr(bool, bool, dart::SequenceNode**)
  [0x000000000096b682] dart::Parser::ParseVariableDeclaration(dart::AbstractType const&, bool, bool, dart::SequenceNode**)
  [0x000000000096bb9f] dart::Parser::ParseVariableDeclarationList()
  [0x000000000096d8d0] dart::Parser::ParseStatement()
  [0x000000000095555a] dart::Parser::ParseStatementSequence()
  [0x0000000000940082] dart::Parser::ParseFunc(dart::Function const&, bool)
  [0x000000000093d96c] dart::Parser::ParseFunction(dart::ParsedFunction*)
  [0x00000000006fb730] dart::DartCompilationPipeline::ParseFunction(dart::ParsedFunction*)
  [0x0000000000701391] Unknown symbol
  [0x00000000007024c9] dart::Compiler::CompileOptimizedFunction(dart::Thread*, dart::Function const&, long)
  [0x000000000070443b] dart::BackgroundCompiler::Run()
-- End of DumpStackTrace


Command[vm]: DART_CONFIGURATION=DebugX64 out/DebugX64/dart --optimization-counter-threshold=5 --error_on_bad_type --error_on_bad_override --ignore-unrecognized-flags --packages=/usr/local/google/home/rmacnak/ssd/dart1/sdk/.packages /usr/local/google/home/rmacnak/ssd/dart1/sdk/runtime/observatory/tests/service/pause_on_unhandled_async_exceptions2_test.dart
Took 0:00:20.768740

Short reproduction command (experimental):
    python tools/test.py -t120 service/pause_on_unhandled_async_exceptions2_test

``
@rmacnak-google rmacnak-google added the area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. label Apr 6, 2017
@rmacnak-google
Copy link
Contributor Author

This ought to be impossible because a function should only be compiled by the background compiler if it had already been compiled once by the mutator.

rmacnak-google added a commit that referenced this issue Apr 7, 2017
…InICData.

Closes #29230
Issue #29292
Issue #29293

R=erikcorry@google.com, vegorov@google.com

Review-Url: https://codereview.chromium.org/2796283006 .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends.
Projects
None yet
Development

No branches or pull requests

1 participant