comparison src/os_cpu/solaris_x86/vm/solaris_x86_32.ad @ 420:a1980da045cc

6462850: generate biased locking code in C2 ideal graph Summary: Inline biased locking code in C2 ideal graph during macro nodes expansion Reviewed-by: never
author kvn
date Fri, 07 Nov 2008 09:29:38 -0800
parents 9ee9cf798b59
children c18cbe5936b8
comparison
equal deleted inserted replaced
419:0bf25c4807f9 420:a1980da045cc
108 //----------OS and Locking Instructions---------------------------------------- 108 //----------OS and Locking Instructions----------------------------------------
109 109
110 // This name is KNOWN by the ADLC and cannot be changed. 110 // This name is KNOWN by the ADLC and cannot be changed.
111 // The ADLC forces a 'TypeRawPtr::BOTTOM' output type 111 // The ADLC forces a 'TypeRawPtr::BOTTOM' output type
112 // for this guy. 112 // for this guy.
113 instruct tlsLoadP(eAXRegP dst, eFlagsReg cr) %{ 113 instruct tlsLoadP(eRegP dst, eFlagsReg cr) %{
114 match(Set dst (ThreadLocal)); 114 match(Set dst (ThreadLocal));
115 effect(DEF dst, KILL cr); 115 effect(DEF dst, KILL cr);
116 116
117 format %{ "MOV EAX, Thread::current()" %} 117 format %{ "MOV $dst, Thread::current()" %}
118 ins_encode( solaris_tlsencode(dst) ); 118 ins_encode( solaris_tlsencode(dst) );
119 ins_pipe( ialu_reg_fat ); 119 ins_pipe( ialu_reg_fat );
120 %} 120 %}
121 121
122 instruct TLS(eAXRegP dst) %{ 122 instruct TLS(eRegP dst) %{
123 match(Set dst (ThreadLocal)); 123 match(Set dst (ThreadLocal));
124 124
125 expand %{ 125 expand %{
126 tlsLoadP(dst); 126 tlsLoadP(dst);
127 %} 127 %}