[aarch64-port-dev ] Problem with C1 when running C2 build with -server -XX:+TieredCompilation

Andrew Dinn adinn at redhat.com
Wed Jul 10 03:05:08 PDT 2013


When I run up the C2 build with tiered compilation I hit an Unimplemented

(gdb) run -server -XX:+TieredCompilation -XX:CompileThreshold=150
-XX:+CIPrintCompileQueue -XX:+CIPrintRequests -XX:-UseCompressedOops HelloC2
. . .
#  Internal Error
(/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp:227),
pid=29442, tid=140732807051008
#  Error: Unimplemented()

Here's the relevant backtrace

(gdb) bt
#0  report_vm_error (
    file=0x7ffff7637f90
"/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp",
line=227,
    error_msg=0x7ffff76ca2bf "Unimplemented()", detail_msg=0x0)
    at
/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/share/vm/utilities/debug.cpp:220
#1  0x00007ffff705420d in report_unimplemented (
    file=0x7ffff7637f90
"/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp",
line=227)
    at
/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/share/vm/utilities/debug.cpp:256
#2  0x00007ffff6ee23f5 in LIRGenerator::load_immediate
(this=0x7ffee8f8de80,
    x=8184, type=T_INT)
    at
/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp:227
#3  0x00007ffff6edc206 in LIRGenerator::increment_event_counter_impl (
    this=0x7ffee8f8de80, info=0x7ffe9c0203f8, method=0x7ffe9c011b38,
    frequency=1023, bci=-1, backedge=false, notify=true)
    at
/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp:3086
#4  0x00007ffff6edbe6d in LIRGenerator::increment_event_counter (
    this=0x7ffee8f8de80, info=0x7ffe9c0203f8, bci=-1, backedge=false)
    at
/ssd/home/adinn/redhat/openjdk/arm/ARM64/hg/jdk8-aarch64/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp:3051

LIRGenerator::load_immediate is defined as follows

LIR_Opr LIRGenerator::load_immediate(int x, BasicType type) {
Unimplemented(); return LIR_OprFact::illegalOpr; }

I'm not exactly sure how event counting gets switched on -- it happens
when the Compile instance has field _count_invocations set to true.

regards,


Andrew Dinn
-----------



More information about the aarch64-port-dev mailing list