Uploaded image for project: 'Harmony'
  1. Harmony
  2. HARMONY-4795

[drlvm][jit][opt] classic_abcd asserts in kernel tests

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 5.0M4
    • DRLVM
    • None
    • x86 debug

    Description

      To reproduce:
      >build.bat -DBUILD_CFG=debug kernel.test -Dtest.mode=jit -Dtest.vmargs="-Xem:server_static" -Dtest.case=java.lang.SecurityManagerRTest

      An assert fires:
      // now op1 should be constant
      // I assume we've done folding first
      if( !(!getConstantOpnd(op0)) ) assert(0);
      Backtrace is:
      jitrino.dll!Jitrino::InsertPi::getAliases(Jitrino::Opnd * opnd=0x043aa674, Jitrino::AbcdAliases * aliases=0x0013d69c, __int64 addend=0) Line 787 + 0x28 C++
      jitrino.dll!Jitrino::InsertPi::insertPiForOpndAndAliases(Jitrino::Node * block=0x0432d788, Jitrino::Opnd * org=0x043aa674, const Jitrino::PiCondition & cond=

      {...}, Jitrino::Opnd * tauOpnd=0x00000000) Line 842 + 0x14 C++
      jitrino.dll!Jitrino::InsertPi::insertPiForComparison(Jitrino::Node * block=0x0432d788, Jitrino::ComparisonModifier mod=Cmp_GT, const Jitrino::PiCondition & bounds={...}

      , Jitrino::Opnd * op=0x043aa674, bool swap_operands=false, bool negate_comparison=true) Line 562 C++
      jitrino.dll!Jitrino::InsertPi::insertPiForBranch(Jitrino::Node * block=0x0432d788, Jitrino::BranchInst * branchi=0x0431c1d4, Jitrino::Edge::Kind kind=Kind_False) Line 408 C++
      jitrino.dll!Jitrino::InsertPi::insertPiToNode(Jitrino::Node * block=0x0432d788) Line 182 C++
      jitrino.dll!Jitrino::InsertPiWalker::applyToDominatorNode(Jitrino::DominatorNode * domNode=0x043f89b0) Line 77 C++
      jitrino.dll!Jitrino::DomTreeWalk<1,Jitrino::InsertPiWalker>(Jitrino::DominatorTree & dTree=

      {...}, Jitrino::InsertPiWalker & walker={...}

      , Jitrino::MemoryManager & mm=

      {...}) Line 74 C++
      jitrino.dll!Jitrino::InsertPi::insertPi() Line 100 + 0x16 C++
      jitrino.dll!Jitrino::ClassicAbcd::runPass() Line 585 C++
      jitrino.dll!Jitrino::CLASSIC_ABCDPass::_run(Jitrino::IRManager & irm={...}

      ) Line 48 C++
      jitrino.dll!Jitrino::OptPass::run() Line 61 + 0x11 C++
      jitrino.dll!Jitrino::runPipeline(Jitrino::CompilationContext * c=0x0013e3f0) Line 228 + 0xd C++
      jitrino.dll!Jitrino::compileMethod(Jitrino::CompilationContext * cc=0x0013e3f0) Line 245 + 0x9 C++
      jitrino.dll!Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext * cc=0x0013e3f0) Line 262 + 0x9 C++
      jitrino.dll!JIT_compile_method_with_params(void * jit=0x014f7668, void * compilation=0x0013e730, Method * method_handle=0x05921cb0, OpenMethodExecutionParams compilation_params=

      {...}

      ) Line 284 + 0xc C++

      Attachments

        Activity

          People

            varlax Alexey Varlamov
            varlax Alexey Varlamov
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: