Mercurial > hg > graal-jvmci-8
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 } |