RFR (11u, XXL): Upstream/backport Shenandoah to JDK11u
Roman Kennke
rkennke at redhat.com
Thu Jul 9 15:04:17 UTC 2020
> Now, about that proof: I will spend the day looking if we can do it
> by
> comparing object files of builds. E.g. do builds (-shenandoahgc)
> before/after a change is applied, run checksums over each object
> file,
> and compare those checksums. Let's see if there's any pitfalls there.
>
I digged a little into this. I built JDK11u with and without the patch,
and without debug-symbols (important), and compared the resulting
objects. I number of object files differ in their generated code, and
they all look like:
mov $0x3e, %eax
vs
mov $0x44, %eax
In other words, constant numbers are different. I very strongly suspect
that this is line numbers that are caught by __LINE__, for example in
guarantee(). There are a number of other places where __LINE__ is used.
Line numbers are not expected to be equal before/after the patch. I
could probably hack around that -- but would that still be in the
spirit of what we want to achieve? I have my doubts.
Roman
More information about the jdk-updates-dev
mailing list