[aarch64-port-dev ] [12] RFR(S): 8207247 AARCH64: Enable Minimal and Client VM builds
Aleksei Voitylov
aleksei.voitylov at bell-sw.com
Wed Aug 29 14:19:29 UTC 2018
Andrew,
here is an updated webrev:
http://cr.openjdk.java.net/~avoitylov/webrev.8207247.02
I'm not sure it looks cleaner since in_scratch_emit_size is a C2-only
concept, though. This was the reason I changed it.
-Aleksei
On 29/08/2018 15:13, Andrew Haley wrote:
> On 08/29/2018 12:54 PM, Aleksei Voitylov wrote:
>
>> please review this patch which adds Minimal and Client VM support to
>> AARCH64 port.
>>
>> Enhancement: https://bugs.openjdk.java.net/browse/JDK-8207247
>> Webrev: http://cr.openjdk.java.net/~avoitylov/webrev.8207247.01
> It looks fine, except for this:
>
> @@ -741,13 +746,17 @@
>
> // We need a trampoline if branches are far.
> if (far_branches()) {
> + bool emit_trampoline = true;
> +#ifdef COMPILER2
> // We don't want to emit a trampoline if C2 is generating dummy
> // code during its branch shortening phase.
> CompileTask* task = ciEnv::current()->task();
> - bool in_scratch_emit_size =
> - (task != NULL && is_c2_compile(task->comp_level()) &&
> - Compile::current()->in_scratch_emit_size());
> - if (!in_scratch_emit_size) {
> + if (task != NULL && is_c2_compile(task->comp_level())
> + && Compile::current()->in_scratch_emit_size()) {
> + emit_trampoline = false;
> + }
> +#endif
> + if(emit_trampoline) {
> address stub = emit_trampoline_stub(offset(), entry.target());
> if (stub == NULL) {
> return NULL; // CodeCache is full
>
> Which changes too much code. All you need to do is hoist the declaration
> of in_scratch_emit_size out of the ifdef COMPILER2 region; the rest of
> the code is still valid.
>
> Thanks.
>
More information about the aarch64-port-dev
mailing list