Mercurial > hg > graal-jvmci-8
diff src/share/vm/oops/method.cpp @ 20651:600c44255e5f
8056071: compiler/whitebox/IsMethodCompilableTest.java fails with 'method() is not compilable after 3 iterations'
Summary: Always use MDO if valid and always compile trivial methods with C1 if available.
Reviewed-by: kvn, iveresov
author | thartmann |
---|---|
date | Tue, 11 Nov 2014 11:05:41 +0100 |
parents | b12a2a9b05ca |
children | 7848fc12602b fdde6a70ea85 |
line wrap: on
line diff
--- a/src/share/vm/oops/method.cpp Tue Nov 18 00:56:42 2014 +0000 +++ b/src/share/vm/oops/method.cpp Tue Nov 11 11:05:41 2014 +0100 @@ -558,6 +558,15 @@ return true; } +bool Method::is_constant_getter() const { + int last_index = code_size() - 1; + // Check if the first 1-3 bytecodes are a constant push + // and the last bytecode is a return. + return (2 <= code_size() && code_size() <= 4 && + Bytecodes::is_const(java_code_at(0)) && + Bytecodes::length_for(java_code_at(0)) == last_index && + Bytecodes::is_return(java_code_at(last_index))); +} bool Method::is_initializer() const { return name() == vmSymbols::object_initializer_name() || is_static_initializer();