Mercurial > hg > graal-compiler
comparison src/share/vm/c1/c1_InstructionPrinter.cpp @ 4966:701a83c86f28
7120481: storeStore barrier in constructor with final field
Summary: Issue storestore barrier before constructor return if the constructor write final field.
Reviewed-by: dholmes, jrose, roland, coleenp
Contributed-by: Jiangli Zhou <jiangli.zhou@oracle.com>
author | jiangli |
---|---|
date | Tue, 21 Feb 2012 13:14:55 -0500 |
parents | d4c1fbc3de95 |
children | 1d7922586cf6 |
comparison
equal
deleted
inserted
replaced
4965:d79f8393df2b | 4966:701a83c86f28 |
---|---|
853 print_value(x->argument_at(i)); | 853 print_value(x->argument_at(i)); |
854 } | 854 } |
855 output()->put(')'); | 855 output()->put(')'); |
856 } | 856 } |
857 | 857 |
858 void InstructionPrinter::do_MemBar(MemBar* x) { | |
859 if (os::is_MP()) { | |
860 LIR_Code code = x->code(); | |
861 switch (code) { | |
862 case lir_membar_acquire : output()->print("membar_acquire"); break; | |
863 case lir_membar_release : output()->print("membar_release"); break; | |
864 case lir_membar : output()->print("membar"); break; | |
865 case lir_membar_loadload : output()->print("membar_loadload"); break; | |
866 case lir_membar_storestore: output()->print("membar_storestore"); break; | |
867 case lir_membar_loadstore : output()->print("membar_loadstore"); break; | |
868 case lir_membar_storeload : output()->print("membar_storeload"); break; | |
869 default : ShouldNotReachHere(); break; | |
870 } | |
871 } | |
872 } | |
873 | |
858 #endif // PRODUCT | 874 #endif // PRODUCT |