RFR (xs) 8075967: Zero interpreter asserts for SafeFetch<32, N> calls in ObjectMonitor
Severin Gehwolf
sgehwolf at redhat.com
Fri Mar 27 09:30:21 UTC 2015
On Thu, 2015-03-26 at 14:39 -0400, Coleen Phillimore wrote:
[...]
> The hotspot runtime jtreg tests do poorly because CompressedOops aren't
> supported. I don't know why they aren't supported. When I took out the
> code to disable CompressedOops, more tests passed.
OK. What's your reproducer for this?
> Zero doesn't support CDS because metaspaceShared_zero.cpp needs some
> generated code that isn't done with Zero.
> >
> > With that being said, Zero should be in better shape now than it was a
> > while ago. Back then, it wouldn't even compile in latest upstream
> > trees...
>
> Yes, I heard that it works fairly well in jdk8 so getting it to work for
> jdk9 was just accounting for new changes.
> >
> > Depending on available cycles I'll try to help as much as I can. The
> > best metric we have currently for Zero is its ability to build itself.
> > I've never managed to go through all failing jtreg tests and determine
> > exactly what's wrong (test or JVM failure).
> >
> >> It seems to be missing a lot.
> > Right. A good starting point is making people aware that it exists so
> > that no new compilation errors get introduced. You've been doing a great
> > job at this. Thanks! My goal is to make Zero better over time, since
> > it's been lacking basic maintainership for a while in upstream OpenJDK.
> >
> > Aside: Zero is using the C++ interpreter which AFAIK, isn't used much
> > anywhere else. Most (all?) JIT ports use the template interpreter these
> > days.
>
> Most ports use the template interpreter because it's significantly
> faster, but the Zero interpreter by not having any generated native code
> makes getting a new port running faster. It also may be nice to
> prototype new bytecodes in C++ rather than as macro assembler. And it's
> sort of cool.
>
> Yes, Zero uses interpreter/bytecodeInterpreter.cpp which is written in
> C++. What we call the C++ interpreter is something else that also uses
> bytecodeInterpreter.cpp.
>
> https://bugs.openjdk.java.net/browse/JDK-8074457
Thanks for this pointer. That explains why I wasn't able to get a basic
build --with-jvm-interpreter=cpp working.
> Keeping Zero compiling and running is not part of our normal testing, so
> most of the contributions are coming from outside Oracle for this.
Indeed :)
Cheers,
Severin
> Coleen
> >
> > Thanks,
> > Severin
> >
> >> Thanks,
> >> Coleen
> >>
> >>> Changes look fine to me.
> >>>
> >>> Cheers,
> >>> Severin
> >>>
> >>>> Thanks,
> >>>> Coleen
> >>>
> >
> >
>
More information about the hotspot-dev
mailing list