Model verifier
This patch starts work on model Verifier and implements following verifications:
- operands declaration dominance
-
BranchOpreference arguments matching target block parameters (simple matching byTypeKindwith erasedintsub-types) -
ArithmeticOperation,TestOperationandConvOpverified presence of relevant method handler inInvokableLeafOps
TestSmallCorpus is improved to verify code model.
Fixes of bugs newly discovered by the TestSmallCorpus:
- missing methods in
InvokableLeafOps -
Interpreteruse of provided lookup forresolveToMethodType -
Interpretererase sub-inttypes forInvokeOpexecution + addedTestLiftCustomBytecode::testEraseInts - Removed complex sub-
inttypes calculation fromBytecodeLiftandLocalsToVarMapper -
BytecodeLiftfixed to avoid production of some obsolete block parameters
Progress
- [x] Change must not contain extraneous whitespace
Reviewing
Using git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/babylon.git pull/247/head:pull/247
$ git checkout pull/247
Update a local copy of the PR:
$ git checkout pull/247
$ git pull https://git.openjdk.org/babylon.git pull/247/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 247
View PR using the GUI difftool:
$ git pr show -t 247
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/babylon/pull/247.diff
Webrev
:wave: Welcome back asotona! A progress list of the required criteria for merging this PR into code-reflection will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.
@asotona This change is no longer ready for integration - check the PR body for details.
closing this PR, more in #258