Mercurial > hg > graal-jvmci-8
comparison graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/typesystem/TypeSystemCodeGenerator.java @ 13275:bd5c996b5d25
Truffle-DSL: fixed wrong transferToInterpreter with transferToInterpreterAndInvalidate.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Thu, 05 Dec 2013 13:39:08 +0100 |
parents | 8e8347ecabbc |
children | bd28da642eea |
comparison
equal
deleted
inserted
replaced
13274:e4862151eefd | 13275:bd5c996b5d25 |
---|---|
219 builder.end(); | 219 builder.end(); |
220 builder.end(); | 220 builder.end(); |
221 } | 221 } |
222 | 222 |
223 builder.startElseBlock(); | 223 builder.startElseBlock(); |
224 builder.startStatement().startStaticCall(getContext().getTruffleTypes().getCompilerDirectives(), "transferToInterpreter").end().end(); | 224 builder.startStatement().startStaticCall(getContext().getTruffleTypes().getCompilerDirectives(), "transferToInterpreterAndInvalidate").end().end(); |
225 builder.startThrow().startNew(getContext().getType(IllegalArgumentException.class)).doubleQuote("Illegal type ").end().end(); | 225 builder.startThrow().startNew(getContext().getType(IllegalArgumentException.class)).doubleQuote("Illegal type ").end().end(); |
226 builder.end(); | 226 builder.end(); |
227 return method; | 227 return method; |
228 } | 228 } |
229 | 229 |
246 builder.startReturn().typeLiteral(sourceType.getPrimitiveType()).end(); | 246 builder.startReturn().typeLiteral(sourceType.getPrimitiveType()).end(); |
247 builder.end(); | 247 builder.end(); |
248 } | 248 } |
249 | 249 |
250 builder.startElseBlock(); | 250 builder.startElseBlock(); |
251 builder.startStatement().startStaticCall(getContext().getTruffleTypes().getCompilerDirectives(), "transferToInterpreter").end().end(); | 251 builder.startStatement().startStaticCall(getContext().getTruffleTypes().getCompilerDirectives(), "transferToInterpreterAndInvalidate").end().end(); |
252 builder.startThrow().startNew(getContext().getType(IllegalArgumentException.class)).doubleQuote("Illegal type ").end().end(); | 252 builder.startThrow().startNew(getContext().getType(IllegalArgumentException.class)).doubleQuote("Illegal type ").end().end(); |
253 builder.end(); | 253 builder.end(); |
254 | 254 |
255 return method; | 255 return method; |
256 } | 256 } |