comparison graal/GraalCompiler/src/com/sun/c1x/opt/LivenessMarker.java @ 2539:fa3bda50cbfd

More clean up on Value.Flags.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Wed, 27 Apr 2011 20:22:05 +0200
parents eca17668badf
children
comparison
equal deleted inserted replaced
2538:e1ba5a93e997 2539:fa3bda50cbfd
146 if (stateBefore != null) { 146 if (stateBefore != null) {
147 // stateBefore != null implies that this instruction may have side effects 147 // stateBefore != null implies that this instruction may have side effects
148 stateBefore.valuesDo(deoptMarker); 148 stateBefore.valuesDo(deoptMarker);
149 i.inputValuesDo(valueMarker); 149 i.inputValuesDo(valueMarker);
150 setFlag(i, LiveSideEffect); 150 setFlag(i, LiveSideEffect);
151 } else if (i.checkFlag(LiveStore)) {
152 // instruction is a store that cannot be eliminated
153 i.inputValuesDo(valueMarker);
154 setFlag(i, LiveSideEffect);
155 } else if (i.checkFlag(LiveSideEffect)) { 151 } else if (i.checkFlag(LiveSideEffect)) {
156 // instruction has a side effect 152 // instruction has a side effect
157 i.inputValuesDo(valueMarker); 153 i.inputValuesDo(valueMarker);
158 }
159 if (i instanceof BlockEnd) {
160 // input values to block ends are control dependencies
161 i.inputValuesDo(valueMarker);
162 setFlag(i, LiveControl);
163 } 154 }
164 FrameState stateAfter = i.stateAfter(); 155 FrameState stateAfter = i.stateAfter();
165 if (stateAfter != null) { 156 if (stateAfter != null) {
166 stateAfter.valuesDo(deoptMarker); 157 stateAfter.valuesDo(deoptMarker);
167 } 158 }