You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Mikhail Fursov (JIRA)" <ji...@apache.org> on 2007/08/10 17:21:43 UTC

[jira] Assigned: (HARMONY-2115) [drlvm][jit][opt] "syncopt" optimization pass crashes (on HelloWorld) because expects old CFG structure

     [ https://issues.apache.org/jira/browse/HARMONY-2115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mikhail Fursov reassigned HARMONY-2115:
---------------------------------------

    Assignee: Mikhail Fursov

> [drlvm][jit][opt] "syncopt" optimization pass crashes (on HelloWorld) because expects old CFG structure
> -------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-2115
>                 URL: https://issues.apache.org/jira/browse/HARMONY-2115
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: any
>            Reporter: Egor Pasko
>            Assignee: Mikhail Fursov
>            Priority: Trivial
>         Attachments: 0001-syncopt-fixed.txt, syncopt-fixed-for-new-cfg.txt
>
>
> to reproduce the crash
> * copy opt.emconf to syncopt.emconf
> * add "syncopt," before "statprof" in the new syncopt.emconf file (no quotes, obviously)
> * run with -Xem:syncopt switch
> > $HARMONY -Xem:syncopt Hello
> SIGSEGV in VM code.
> Stack trace:
>         1: Jitrino::CFGInst::next() const (??:-1)
>         2: Jitrino::FixupSyncEdgesWalker::isCatchAllAndMonExit(Jitrino::Node*, Jitrino::Opnd*&, Jitrino::Opnd*&, Jitrino::Node*&, Jitrino::Edge*&, Jitrino::Node*&) (??:-1)
>         3: Jitrino::FixupSyncEdgesWalker::applyToNode3(Jitrino::Node*) (??:-1)
>         4: Jitrino::FixupSyncEdgesWalker::applyToCFGNode(Jitrino::Node*) (??:-1)
>         5: ?? (002b0ab1 :2)
>         6: void Jitrino::NodeWalk<Jitrino::FixupSyncEdgesWalker>(Jitrino::ControlFlowGraph&, Jitrino::FixupSyncEdgesWalker&) (??:-1)
>         7: Jitrino::SyncOpt::runPass() (??:-1)
>         8: Jitrino::SyncOptPass::_run(Jitrino::IRManager&) (??:-1)
>         9: Jitrino::OptPass::run() (??:-1)
>         10: Jitrino::runPipeline(Jitrino::CompilationContext*) (??:-1)
>         11: Jitrino::compileMethod(Jitrino::CompilationContext*) (??:-1)
>         12: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (??:-1)
> here "syncopt":
> * expects all dispatch nodes to have catch blocks (if you recompile in debug mode, you'll see it)
> * expects instructions in basic blocks to be linked in a circle (which is now outdated, instructions end with NULL)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.