Mercurial > hg > graal-jvmci-8
comparison src/share/vm/opto/compile.cpp @ 12956:3213ba4d3dff
8024069: replace_in_map() should operate on parent maps
Summary: type information gets lost because replace_in_map() doesn't update parent maps
Reviewed-by: kvn, twisti
author | roland |
---|---|
date | Sat, 19 Oct 2013 12:16:43 +0200 |
parents | 4a2acfb16e97 |
children | 435c7b4577cd |
comparison
equal
deleted
inserted
replaced
12955:252d541466ea | 12956:3213ba4d3dff |
---|---|
653 _late_inlines_pos(0), | 653 _late_inlines_pos(0), |
654 _number_of_mh_late_inlines(0), | 654 _number_of_mh_late_inlines(0), |
655 _inlining_progress(false), | 655 _inlining_progress(false), |
656 _inlining_incrementally(false), | 656 _inlining_incrementally(false), |
657 _print_inlining_list(NULL), | 657 _print_inlining_list(NULL), |
658 _print_inlining_idx(0) { | 658 _print_inlining_idx(0), |
659 _preserve_jvm_state(0) { | |
659 C = this; | 660 C = this; |
660 | 661 |
661 CompileWrapper cw(this); | 662 CompileWrapper cw(this); |
662 #ifndef PRODUCT | 663 #ifndef PRODUCT |
663 if (TimeCompiler2) { | 664 if (TimeCompiler2) { |
761 if (cg == NULL) { | 762 if (cg == NULL) { |
762 record_method_not_compilable_all_tiers("cannot parse method"); | 763 record_method_not_compilable_all_tiers("cannot parse method"); |
763 return; | 764 return; |
764 } | 765 } |
765 JVMState* jvms = build_start_state(start(), tf()); | 766 JVMState* jvms = build_start_state(start(), tf()); |
766 if ((jvms = cg->generate(jvms)) == NULL) { | 767 if ((jvms = cg->generate(jvms, NULL)) == NULL) { |
767 record_method_not_compilable("method parse failed"); | 768 record_method_not_compilable("method parse failed"); |
768 return; | 769 return; |
769 } | 770 } |
770 GraphKit kit(jvms); | 771 GraphKit kit(jvms); |
771 | 772 |
938 _congraph(NULL), | 939 _congraph(NULL), |
939 _number_of_mh_late_inlines(0), | 940 _number_of_mh_late_inlines(0), |
940 _inlining_progress(false), | 941 _inlining_progress(false), |
941 _inlining_incrementally(false), | 942 _inlining_incrementally(false), |
942 _print_inlining_list(NULL), | 943 _print_inlining_list(NULL), |
943 _print_inlining_idx(0) { | 944 _print_inlining_idx(0), |
945 _preserve_jvm_state(0) { | |
944 C = this; | 946 C = this; |
945 | 947 |
946 #ifndef PRODUCT | 948 #ifndef PRODUCT |
947 TraceTime t1(NULL, &_t_totalCompilation, TimeCompiler, false); | 949 TraceTime t1(NULL, &_t_totalCompilation, TimeCompiler, false); |
948 TraceTime t2(NULL, &_t_stubCompilation, TimeCompiler, false); | 950 TraceTime t2(NULL, &_t_stubCompilation, TimeCompiler, false); |