Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8205574

Loop predication "assert(f <= 1 && f >= 0) failed Incorrect frequency"

    Details

    • Subcomponent:
    • Introduced In Build:
      b19
    • Introduced In Version:
      11
    • Resolved In Build:
      b20
    • OS:
      windows

      Backports

        Description

        jvm!VMError::report_and_die+0x81 [d:\dev\jdk\jdk\open\src\hotspot\share\utilities\vmerror.cpp @ 1267]
        jvm!report_vm_error+0x89 [d:\dev\jdk\jdk\open\src\hotspot\share\utilities\debug.cpp @ 232]
        jvm!PathFrequency::to+0x92b [d:\dev\jdk\jdk\open\src\hotspot\share\opto\looppredicate.cpp @ 950]
        jvm!PhaseIdealLoop::loop_predication_impl+0x6b9 [d:\dev\jdk\jdk\open\src\hotspot\share\opto\looppredicate.cpp @ 1379]
        jvm!IdealLoopTree::loop_predication+0x7c [d:\dev\jdk\jdk\open\src\hotspot\share\opto\looppredicate.cpp @ 1425]
        jvm!IdealLoopTree::loop_predication+0xb3 [d:\dev\jdk\jdk\open\src\hotspot\share\opto\looppredicate.cpp @ 1429]
        jvm!PhaseIdealLoop::build_and_optimize+0xf46 [d:\dev\jdk\jdk\open\src\hotspot\share\opto\loopnode.cpp @ 2918]
        jvm!PhaseIdealLoop::PhaseIdealLoop+0xaf [d:\dev\jdk\jdk\open\src\hotspot\share\opto\loopnode.hpp @ 943]
        jvm!Compile::Optimize+0x98e [d:\dev\jdk\jdk\open\src\hotspot\share\opto\compile.cpp @ 2292]
        jvm!Compile::Compile+0x12e2 [d:\dev\jdk\jdk\open\src\hotspot\share\opto\compile.cpp @ 869]
        jvm!C2Compiler::compile_method+0x140 [d:\dev\jdk\jdk\open\src\hotspot\share\opto\c2compiler.cpp @ 112]
        jvm!CompileBroker::invoke_compiler_on_method+0x6a1 [d:\dev\jdk\jdk\open\src\hotspot\share\compiler\compilebroker.cpp @ 2107]
        jvm!CompileBroker::compiler_thread_loop+0x325 [d:\dev\jdk\jdk\open\src\hotspot\share\compiler\compilebroker.cpp @ 1805]
        jvm!compiler_thread_entry+0x6c [d:\dev\jdk\jdk\open\src\hotspot\share\runtime\thread.cpp @ 3259]
        jvm!JavaThread::thread_main_inner+0x14f [d:\dev\jdk\jdk\open\src\hotspot\share\runtime\thread.cpp @ 1736]
        jvm!JavaThread::run+0x1a1 [d:\dev\jdk\jdk\open\src\hotspot\share\runtime\thread.cpp @ 1718]
        jvm!thread_native_entry+0x157 [d:\dev\jdk\jdk\open\src\hotspot\os\windows\os_windows.cpp @ 457]
        msvcr120!_callthreadstartex+0x17 [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 376]
        msvcr120!_threadstartex+0x102 [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 354]
        KERNEL32!BaseThreadInitThunk+0x14
        ntdll!RtlUserThreadStart+0x21

        Asserts locally during Kitchensink run.

        // some context

        jvm!PathFrequency::to()
         ...
         float prev_f = _freqs_stack.pop();
         float new_f = f;
         f = new_f + prev_f;
         assert(f <= 1 && f >= 0, "Incorrect frequency");
        ...

        new_f = 0.2216838151
        prev_f = 0.778316319
        i = 3
        n = 0x00000258`2e8e03c8
        f = 1.000000119
        prev = 0x00000258`15143560
        this = 0x000000a0`02ff69a0
        n = 0x00000258`1d03cb38
        c = 0x00000258`15143560
        loop = 0x00000258`21f57690

        Method: com/sun/org/apache/xml/internal/serializer/ToStream.outputCharacters()

        .mdmp file saved locally.

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  roland Roland Westrelin
                  Reporter:
                  mgronlun Markus Grönlund
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  8 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: