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

[lworld] InstanceKlass::oop_print_on() fails for value klasses with flattened fields

XMLWordPrintable

      InstanceKlass::oop_print_on() does not support value klasses with flattened fields. For example, this can be triggered by running tests with -XX:+TraceDeoptimization -XX:+Verbose:

      Current CompileTask:
      C2: 16897 88 b compiler.valhalla.valuetypes.TestLWorld::<clinit> (297 bytes)

      Stack: [0x00007f6a7c217000,0x00007f6a7c318000], sp=0x00007f6a7c3148d0, free space=1014k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x1032af0] java_lang_String::is_instance(oop)+0xc0
      V [libjvm.so+0x167c62e] oopDesc::print_value_on(outputStream*) const+0x4e
      V [libjvm.so+0xda32d0] fieldDescriptor::print_on_for(outputStream*, oop)+0x910
      V [libjvm.so+0xfd2936] FieldPrinter::do_field(fieldDescriptor*)+0x66
      V [libjvm.so+0xfdd2e4] InstanceKlass::do_nonstatic_fields(FieldClosure*)+0x1b4
      V [libjvm.so+0xfe77e2] InstanceKlass::oop_print_on(oop, outputStream*)+0xe2
      V [libjvm.so+0x167c031] oopDesc::print_on(outputStream*) const+0x61
      V [libjvm.so+0xa12867] ciObject::print_oop(outputStream*)+0x327
      V [libjvm.so+0x1a3930a] TypeInstPtr::dump2(Dict&, unsigned int, outputStream*) const+0x17a
      V [libjvm.so+0x1a38bc8] Type::dump_on(outputStream*) const+0xe8
      V [libjvm.so+0x163e5e2] Node::dump(char const*, bool, outputStream*) const+0x222
      V [libjvm.so+0x1645059] dump_nodes(Node const*, int, bool)+0x2f9
      V [libjvm.so+0xb6354b] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0x17db
      V [libjvm.so+0x93fe92] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x302
      V [libjvm.so+0xb70720] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x3c0
      V [libjvm.so+0xb71428] CompileBroker::compiler_thread_loop()+0x288
      V [libjvm.so+0x1a10597] JavaThread::thread_main_inner()+0x287
      V [libjvm.so+0x1a107f1] JavaThread::run()+0x191
      V [libjvm.so+0x16be67a] thread_native_entry(Thread*)+0xfa

            Unassigned Unassigned
            thartmann Tobias Hartmann
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: