JDK-8257231 : assert(!is_mcall || (call_returns[block->_pre_order] <= (uint) current_offset))
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 16
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2020-11-28
  • Updated: 2020-12-15
  • Resolved: 2020-12-01
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 16
16 b27Fixed
Related Reports
Relates :  
Relates :  
Description
open/test/jdk/java/lang/invoke/PermuteArgsTest.java

Fails with:
assert(!is_mcall || (call_returns[block->_pre_order] <= (uint) current_offset)) failed: ret_addr_offset() not within emitted code

----------messages:(4/402)----------
command: testng -XX:+IgnoreUnrecognizedVMOptions -XX:-VerifyDependencies -ea -esa -DPermuteArgsTest.MAX_ARITY=8 test.java.lang.invoke.PermuteArgsTest
reason: User specified action: run testng/othervm -XX:+IgnoreUnrecognizedVMOptions -XX:-VerifyDependencies -ea -esa -DPermuteArgsTest.MAX_ARITY=8 test.java.lang.invoke.PermuteArgsTest
. . .
----------System.out:(35/2849)----------
[TestNG] Running:
  java/lang/invoke/PermuteArgsTest.java

[199.916s][warning][codecache] CodeCache is full. Compiler has been disabled.
[199.916s][warning][codecache] Try increasing the code cache size using -XX:ReservedCodeCacheSize=
CodeCache: size=49152Kb used=44983Kb max_used=44995Kb free=4168Kb
 bounds [0x0000fffc28150000, 0x0000fffc2b150000, 0x0000fffc2b150000]
 total_blobs=17331 nmethods=15983 adapters=1307
 compilation: disabled (not enough contiguous free space left)
              stopped_count=1, restarted_count=0
 full_count=0
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/output.cpp:1699
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S14862/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/11b6f410-e928-41a5-924c-4cd0b55f9bf0/runs/7b9ba9db-6a17-45dd-ab11-8a9eca5310bd/workspace/open/src/hotspot/share/opto/output.cpp:1699), pid=24850, tid=24865
#  assert(!is_mcall || (call_returns[block->_pre_order] <= (uint) current_offset)) failed: ret_addr_offset() not within emitted code
#
# JRE version: Java(TM) SE Runtime Environment (16.0) (fastdebug build 16-internal+0-2020-11-24-1027043.patric.hedlin.main)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 16-internal+0-2020-11-24-1027043.patric.hedlin.main, compiled mode, compressed oops, g1 gc, linux-aarch64)
# Problematic frame:
# V  [libjvm.so+0x136ee5c]  PhaseOutput::fill_buffer(CodeBuffer*, unsigned int*)+0x120c
#
. . .
----------System.err:(2/201)----------
Java HotSpot(TM) 64-Bit Server VM warning: CodeCache is full. Compiler has been disabled.
Comments
Changeset: e3d0f270 Author: Patric Hedlin <phedlin@openjdk.org> Date: 2020-12-01 14:16:41 +0000 URL: https://git.openjdk.java.net/jdk/commit/e3d0f270
01-12-2020

Assert introduced as part of JDK-8254231 is not valid when failing after node emit.
30-11-2020

ILW = Assert during C2 compilation, tier8 on aarch64, no known workaround but disable affected compilation = HLM = P3
30-11-2020