MH compilation is broken in valhalla(mvt branch) build
Roland Westrelin
rwestrel at redhat.com
Fri Jun 23 13:29:18 UTC 2017
> to mitigate the impact of this, we could only bail out if the compiled lambda form really contains a value type in it's signature:
>
> diff -r 67cdfd4b0995 src/share/vm/compiler/compileBroker.cpp
> --- a/src/share/vm/compiler/compileBroker.cpp Tue Jun 20 11:18:10 2017 +0200
> +++ b/src/share/vm/compiler/compileBroker.cpp Thu Jun 22 16:55:50 2017 +0200
> @@ -1054,7 +1054,12 @@
> // value type. If compiled as root of a compilation, C2 has no way
> // to know a value type is passed.
> if (ValueTypePassFieldsAsArgs && method->is_compiled_lambda_form()) {
> - return NULL;
> + ResourceMark rm;
> + for (SignatureStream ss(method->signature()); !ss.at_return_type(); ss.next()) {
> + if (ss.type() == T_VALUETYPE) {
> + return NULL;
> + }
> + }
> }
>
> // lock, make sure that the compilation
>
> Roland, what do you think?
That sounds like a good idea.
Roland.
More information about the valhalla-dev
mailing list