You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Evgueni Brevnov (JIRA)" <ji...@apache.org> on 2007/12/05 13:30:44 UTC
[jira] Updated: (HARMONY-4784) [drlvm][jit][opt] Loop peeling
segfaults on smoke perf/ThrowMany
[ https://issues.apache.org/jira/browse/HARMONY-4784?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Evgueni Brevnov updated HARMONY-4784:
-------------------------------------
Attachment: H4784.patch
It turned out the actual cause is throwopt optimization. It produces invalid grapth which confuses loop peeling. The fix attached. Build test passed on Lin 32/64 & Win 32.
Thanks
Evgueni
> [drlvm][jit][opt] Loop peeling segfaults on smoke perf/ThrowMany
> ----------------------------------------------------------------
>
> Key: HARMONY-4784
> URL: https://issues.apache.org/jira/browse/HARMONY-4784
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Environment: x86 release, debug
> Reporter: Alexey Varlamov
> Attachments: H4784.patch
>
>
> To reproduce (-Dtest.mode=jit is for selecting single mode run):
> >sh build.sh smoke.test -Dtest.mode=jit -Dtest.vmargs="-Xem:server_static" -Dtest.case=perf/ThrowMany.java
> SIGSEGV in VM code.
> Stack trace:
> 0: Jitrino::CFGInst::getNode() const (/export/users2/avarlamo/working_vm/vm/jitrino/src/shared/ControlFlowGraph.h:274)
> 1: Jitrino::ControlFlowGraph::splitNodeAtInstruction(Jitrino::CFGInst*, bool, bool, Jitrino::CFGInst*) (/export/users2/avarlamo/working_vm/vm/jitrino/src/shared/ControlFlowGraph.cpp:448)
> 2: Jitrino::LoopBuilder::peelLoops(Jitrino::StlVector<Jitrino::Edge*, Jitrino::StlMMAllocator<Jitrino::Edge*> >&) (/export/users2/avarlamo/working_vm/vm/jitrino/src/optimizer/Loop.cpp:520)
> 3: Jitrino::LoopBuilder::peelLoops() (/export/users2/avarlamo/working_vm/vm/jitrino/src/optimizer/Loop.cpp:861)
> 4: Jitrino::LoopPeelingPass::_run(Jitrino::IRManager&) (/export/users2/avarlamo/working_vm/vm/jitrino/src/optimizer/Loop.cpp:47)
> 5: Jitrino::OptPass::run() (/export/users2/avarlamo/working_vm/vm/jitrino/src/optimizer/optpass.cpp:61)
> 6: Jitrino::runPipeline(Jitrino::CompilationContext*) (/export/users2/avarlamo/working_vm/vm/jitrino/src/main/Jitrino.cpp:228)
> 7: Jitrino::compileMethod(Jitrino::CompilationContext*) (/export/users2/avarlamo/working_vm/vm/jitrino/src/main/Jitrino.cpp:245)
> 8: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (/export/users2/avarlamo/working_vm/vm/jitrino/src/main/Jitrino.cpp:262)
> 9: JIT_compile_method_with_params (/export/users2/avarlamo/working_vm/vm/jitrino/src/vm/drl/DrlJITInterface.cpp:284)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.