887
888 void InstructionPrinter::do_ProfileCall(ProfileCall* x) {
889 output()->print("profile ");
890 print_value(x->recv());
891 output()->print(" %s.%s", x->method()->holder()->name()->as_utf8(), x->method()->name()->as_utf8());
892 if (x->known_holder() != NULL) {
893 output()->print(", ");
894 print_klass(x->known_holder());
895 output()->print(" ");
896 }
897 for (int i = 0; i < x->nb_profiled_args(); i++) {
898 if (i > 0) output()->print(", ");
899 print_value(x->profiled_arg_at(i));
900 if (x->arg_needs_null_check(i)) {
901 output()->print(" [NC]");
902 }
903 }
904 output()->put(')');
905 }
906
907 void InstructionPrinter::do_ProfileInvoke(ProfileInvoke* x) {
908 output()->print("profile_invoke ");
909 output()->print(" %s.%s", x->inlinee()->holder()->name()->as_utf8(), x->inlinee()->name()->as_utf8());
910 output()->put(')');
911
912 }
913
914 void InstructionPrinter::do_RuntimeCall(RuntimeCall* x) {
915 output()->print("call_rt %s(", x->entry_name());
916 for (int i = 0; i < x->number_of_arguments(); i++) {
917 if (i > 0) output()->print(", ");
918 print_value(x->argument_at(i));
919 }
920 output()->put(')');
921 }
922
923 void InstructionPrinter::do_MemBar(MemBar* x) {
924 if (os::is_MP()) {
925 LIR_Code code = x->code();
926 switch (code) {
|
887
888 void InstructionPrinter::do_ProfileCall(ProfileCall* x) {
889 output()->print("profile ");
890 print_value(x->recv());
891 output()->print(" %s.%s", x->method()->holder()->name()->as_utf8(), x->method()->name()->as_utf8());
892 if (x->known_holder() != NULL) {
893 output()->print(", ");
894 print_klass(x->known_holder());
895 output()->print(" ");
896 }
897 for (int i = 0; i < x->nb_profiled_args(); i++) {
898 if (i > 0) output()->print(", ");
899 print_value(x->profiled_arg_at(i));
900 if (x->arg_needs_null_check(i)) {
901 output()->print(" [NC]");
902 }
903 }
904 output()->put(')');
905 }
906
907 void InstructionPrinter::do_ProfileReturnType(ProfileReturnType* x) {
908 output()->print("profile ret type ");
909 print_value(x->ret());
910 output()->print(" %s.%s", x->method()->holder()->name()->as_utf8(), x->method()->name()->as_utf8());
911 output()->put(')');
912 }
913 void InstructionPrinter::do_ProfileInvoke(ProfileInvoke* x) {
914 output()->print("profile_invoke ");
915 output()->print(" %s.%s", x->inlinee()->holder()->name()->as_utf8(), x->inlinee()->name()->as_utf8());
916 output()->put(')');
917
918 }
919
920 void InstructionPrinter::do_RuntimeCall(RuntimeCall* x) {
921 output()->print("call_rt %s(", x->entry_name());
922 for (int i = 0; i < x->number_of_arguments(); i++) {
923 if (i > 0) output()->print(", ");
924 print_value(x->argument_at(i));
925 }
926 output()->put(')');
927 }
928
929 void InstructionPrinter::do_MemBar(MemBar* x) {
930 if (os::is_MP()) {
931 LIR_Code code = x->code();
932 switch (code) {
|