You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've started working on cleaning up the AOT infrastructure (#3031) . I decided not to work on getting support for other platforms first, because it would end up being a bunch of extra work for me to add the relocations only for them to get cleaned up. Additionally, it will take me some time (since I'm not really familiar with any of the codegens). Thus the plan is to clean up the infrastructure, and once there's a single canonical version of the AOT infrastructure, I can start to take a look at the other platforms.
That said, if anyone wishes to work on the other platforms, this is what's needed (at least what I can think of):
When using the symbol validation manager, for AOT compiles, the compiler thinks all methods are interpreted. Therefore, when the method is also resolved, a resolved interpreter call snippet is generated. However, if this code is guarded with forceUnresolvedDispatch then that guard needs to be removed (c4be204#diff-6f742cfd99927bbd8a989b86c42da43e)
Because with the symbol validation manager more things are resolved (including new), object allocation inlining needs to account for the fact that the loadaddr is no longer anchored by a resolvechk. (c4be204#diff-11e7eccbbf8ec3cf2e4f26d5b7357efe) . Also, you need to make sure you add the relocation for the object allocation inlining as done here b9efceb#diff-11e7eccbbf8ec3cf2e4f26d5b7357efeR7710
Update relocations for RamMethod, MethodPointer, ClassAddress, and ClassPointer to get the symbol from the SVM rather than through the cpIndex (eclipse-omr/omr@34f7416 and eclipse-omr/omr@1520ed0)
Enable 2 and 5
Enable CheckCast and InstanceOf inlining (b460431)
Initially, run with disabling object allocation inlining and disabling checkcast and instanceof inlining via cmd line options. Once 7 is done, you can enable object allocation inlining. One 10 is done, you can enable checkcast and instanceof inlining. When running, make sure you only add enableSymbolValidationManager to the -Xaot options.
The text was updated successfully, but these errors were encountered: