Build fails when disabling jvmti

Ashutosh Mehra asmehra at redhat.com
Mon Jul 8 15:17:58 UTC 2024


Hi Sanne, thanks for reporting this. It looks like a bug. It can be fixed
by enclosing the relevant code under the "INCLUDE_JVMTI" macro.

- Ashutosh Mehra


On Mon, Jul 8, 2024 at 9:58 AM Sanne Grinovero <sanne at redhat.com> wrote:

> Hello all,
>
> I'm experimenting building Leyden locally with non-default configurations,
> with the intent of comparing its potential as an alternative to GraalVM
> native-images, and one of my goals would be to produce a minimal JVM build
> which exclusively includes the components that our applications are going
> to need at runtime.
>
> This implies being very selective with the JVM features I choose at
> configuration time; I've already opened some minor issues identified during
> such experiments.
>
> Today I noticed today that if I exclude the "jvmti" feature, the premain
> branch of Leyden doesn't compile:
>
>
> === Output from failing command(s) repeated here ===
> * For target hotspot_variant-custom_libjvm_objs_SCCache.o:
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp: In member
> function ‘void SCAddressTable::init_opto()’:
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3815:39:
> error: ‘notify_jvmti_vthread_start’ is not a member of ‘OptoRuntime’
>  3815 |   SET_ADDRESS(_C2_blobs,
> OptoRuntime::notify_jvmti_vthread_start());
>       |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3511:47:
> note: in definition of macro ‘SET_ADDRESS’
>  3511 |     type##_addr[type##_length++] = (address) (addr);      \
>       |                                               ^~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3816:39:
> error: ‘notify_jvmti_vthread_end’ is not a member of ‘OptoRuntime’
>  3816 |   SET_ADDRESS(_C2_blobs, OptoRuntime::notify_jvmti_vthread_end());
>       |                                       ^~~~~~~~~~~~~~~~~~~~~~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3511:47:
> note: in definition of macro ‘SET_ADDRESS’
>  3511 |     type##_addr[type##_length++] = (address) (addr);      \
>       |                                               ^~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3817:39:
> error: ‘notify_jvmti_vthread_mount’ is not a member of ‘OptoRuntime’
>  3817 |   SET_ADDRESS(_C2_blobs,
> OptoRuntime::notify_jvmti_vthread_mount());
>       |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3511:47:
> note: in definition of macro ‘SET_ADDRESS’
>  3511 |     type##_addr[type##_length++] = (address) (addr);      \
>       |                                               ^~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3818:39:
> error: ‘notify_jvmti_vthread_unmount’ is not a member of ‘OptoRuntime’
>  3818 |   SET_ADDRESS(_C2_blobs,
> OptoRuntime::notify_jvmti_vthread_unmount());
>       |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /home/sanne/sources/leyden/src/hotspot/share/code/SCCache.cpp:3511:47:
> note: in definition of macro ‘SET_ADDRESS’
>  3511 |     type##_addr[type##_length++] = (address) (addr);      \
>       |                                               ^~~~
>    ... (rest of output omitted)
>
> I'm wondering if I should open an issue for this case? I appreciate it's
> early days and that such aspects might not be a priority currently!
>
> Thanks,
> Sanne
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/leyden-dev/attachments/20240708/f555dd63/attachment.htm>


More information about the leyden-dev mailing list