From 8ae50d45a4cd737a75bb748f45e86ceaf53b2c66 Mon Sep 17 00:00:00 2001 From: Roland Westrelin Date: Fri, 30 Sep 2011 13:47:26 +0200 Subject: [PATCH] 7096010: c2: running with +PrintOptoAssembly crashes the VM when $constanttablebase is used ADLC generates code to prepare the register string to be printed in a char array but then calls print without the char array as an argument. Reviewed-by: never --- hotspot/src/share/vm/adlc/formssel.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hotspot/src/share/vm/adlc/formssel.cpp b/hotspot/src/share/vm/adlc/formssel.cpp index 85118e87fe7..d3817ed4ac8 100644 --- a/hotspot/src/share/vm/adlc/formssel.cpp +++ b/hotspot/src/share/vm/adlc/formssel.cpp @@ -1225,7 +1225,7 @@ void InstructForm::rep_var_format(FILE *fp, const char *rep_var) { // Handle special constant table variables. if (strcmp(rep_var, "constanttablebase") == 0) { fprintf(fp, "char reg[128]; ra->dump_register(in(mach_constant_base_node_input()), reg);\n"); - fprintf(fp, "st->print(\"%%s\");\n"); + fprintf(fp, " st->print(\"%%s\", reg);\n"); return; } if (strcmp(rep_var, "constantoffset") == 0) {