comparison graal/GraalCompiler/src/com/sun/c1x/C1XCompilation.java @ 2515:4fdef1464592

Removed extended bytecodes and related HIR instructions.
author Thomas Wuerthinger <thomas@wuerthinger.net>
date Wed, 27 Apr 2011 15:36:29 +0200
parents 16b9a8b5ad39
children a384fac3fd34
comparison
equal deleted inserted replaced
2514:34b5eea9b001 2515:4fdef1464592
32 import com.sun.c1x.graph.*; 32 import com.sun.c1x.graph.*;
33 import com.sun.c1x.ir.*; 33 import com.sun.c1x.ir.*;
34 import com.sun.c1x.lir.*; 34 import com.sun.c1x.lir.*;
35 import com.sun.c1x.observer.*; 35 import com.sun.c1x.observer.*;
36 import com.sun.c1x.value.*; 36 import com.sun.c1x.value.*;
37 import com.sun.cri.bytecode.*;
38 import com.sun.cri.ci.*; 37 import com.sun.cri.ci.*;
39 import com.sun.cri.ri.*; 38 import com.sun.cri.ri.*;
40 39
41 /** 40 /**
42 * This class encapsulates global information about the compilation of a particular method, 41 * This class encapsulates global information about the compilation of a particular method,
115 public void setHasExceptionHandlers() { 114 public void setHasExceptionHandlers() {
116 hasExceptionHandlers = true; 115 hasExceptionHandlers = true;
117 } 116 }
118 117
119 /** 118 /**
120 * Records that this compilation encountered an instruction (e.g. {@link Bytecodes#UNSAFE_CAST})
121 * that breaks the type safety invariant of the input bytecode.
122 */
123 public void setNotTypesafe() {
124 typesafe = false;
125 }
126
127 /**
128 * Checks whether this compilation is for an on-stack replacement. 119 * Checks whether this compilation is for an on-stack replacement.
129 * 120 *
130 * @return {@code true} if this compilation is for an on-stack replacement 121 * @return {@code true} if this compilation is for an on-stack replacement
131 */ 122 */
132 public boolean isOsrCompilation() { 123 public boolean isOsrCompilation() {
234 225
235 public boolean hasExceptionHandlers() { 226 public boolean hasExceptionHandlers() {
236 return hasExceptionHandlers; 227 return hasExceptionHandlers;
237 } 228 }
238 229
239 /**
240 * Determines if this compilation has encountered any instructions (e.g. {@link Bytecodes#UNSAFE_CAST})
241 * that break the type safety invariant of the input bytecode.
242 */
243 public boolean isTypesafe() {
244 return typesafe;
245 }
246
247 public CiResult compile() { 230 public CiResult compile() {
248 CiTargetMethod targetMethod; 231 CiTargetMethod targetMethod;
249 try { 232 try {
250 emitHIR(); 233 emitHIR();
251 emitLIR(); 234 emitLIR();