Mercurial > hg > truffle
comparison src/share/vm/c1/c1_LIR.hpp @ 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 | 9164b8236699 |
children | 6759698e3140 |
comparison
equal
deleted
inserted
replaced
4965:d79f8393df2b | 4966:701a83c86f28 |
---|---|
864 , lir_breakpoint | 864 , lir_breakpoint |
865 , lir_rtcall | 865 , lir_rtcall |
866 , lir_membar | 866 , lir_membar |
867 , lir_membar_acquire | 867 , lir_membar_acquire |
868 , lir_membar_release | 868 , lir_membar_release |
869 , lir_membar_loadload | |
870 , lir_membar_storestore | |
871 , lir_membar_loadstore | |
872 , lir_membar_storeload | |
869 , lir_get_thread | 873 , lir_get_thread |
870 , end_op0 | 874 , end_op0 |
871 , begin_op1 | 875 , begin_op1 |
872 , lir_fxch | 876 , lir_fxch |
873 , lir_fld | 877 , lir_fld |
1916 void get_thread(LIR_Opr result) { append(new LIR_Op0(lir_get_thread, result)); } | 1920 void get_thread(LIR_Opr result) { append(new LIR_Op0(lir_get_thread, result)); } |
1917 void word_align() { append(new LIR_Op0(lir_word_align)); } | 1921 void word_align() { append(new LIR_Op0(lir_word_align)); } |
1918 void membar() { append(new LIR_Op0(lir_membar)); } | 1922 void membar() { append(new LIR_Op0(lir_membar)); } |
1919 void membar_acquire() { append(new LIR_Op0(lir_membar_acquire)); } | 1923 void membar_acquire() { append(new LIR_Op0(lir_membar_acquire)); } |
1920 void membar_release() { append(new LIR_Op0(lir_membar_release)); } | 1924 void membar_release() { append(new LIR_Op0(lir_membar_release)); } |
1925 void membar_loadload() { append(new LIR_Op0(lir_membar_loadload)); } | |
1926 void membar_storestore() { append(new LIR_Op0(lir_membar_storestore)); } | |
1927 void membar_loadstore() { append(new LIR_Op0(lir_membar_loadstore)); } | |
1928 void membar_storeload() { append(new LIR_Op0(lir_membar_storeload)); } | |
1921 | 1929 |
1922 void nop() { append(new LIR_Op0(lir_nop)); } | 1930 void nop() { append(new LIR_Op0(lir_nop)); } |
1923 void build_frame() { append(new LIR_Op0(lir_build_frame)); } | 1931 void build_frame() { append(new LIR_Op0(lir_build_frame)); } |
1924 | 1932 |
1925 void std_entry(LIR_Opr receiver) { append(new LIR_Op0(lir_std_entry, receiver)); } | 1933 void std_entry(LIR_Opr receiver) { append(new LIR_Op0(lir_std_entry, receiver)); } |