RFR 8226800 [lworld][c1] SharedRuntime::fixup_callers_callsite is wrong when caller is C1
ioi.lam at oracle.com
Wed Jun 26 05:47:36 UTC 2019
SharedRuntime::fixup_callers_callsite() needs to know whether the caller
is compiled by C1 or C2, and use the appropriate entry point, due to the
difference in how C1 and C2 handle calling convention for value parameters.
I think there are probably similar bugs lurking around. E.g.,
Method::from_compiled_entry() probably returns the wrong value when
we have a C1-compiled caller. I'll investigate more.
I also updated TestCallingConventionC1.java to test more combinations
of the interaction between C1 and C2.
More information about the valhalla-dev