[code-reflection] RFR: Computes the VarOp's result type from its operand type, if not overridden

Paul Sandoz psandoz at openjdk.org
Mon Jun 17 22:00:50 UTC 2024


It's currently hard to apply a simple retyping transformation to a code model since the variable operation, `VarOp`, fixes its result type when copying. `VarOp` now supports a fixed result type only when the init operand's type, `T` say, is not equal to the value type of the VarOp's result type, `U` say for `Var<U>`. 

This works but we might need to revisit and remove any notion of a fixed result type when copying. (We can behave differently when constructing from an externalized operation.)

Also renamed some methods and added some helper methods.

-------------

Commit messages:
 - VarOp computes its var type from the operand type if not overridden.

Changes: https://git.openjdk.org/babylon/pull/148/files
  Webrev: https://webrevs.openjdk.org/?repo=babylon&pr=148&range=00
  Stats: 142 lines in 8 files changed: 100 ins; 13 del; 29 mod
  Patch: https://git.openjdk.org/babylon/pull/148.diff
  Fetch: git fetch https://git.openjdk.org/babylon.git pull/148/head:pull/148

PR: https://git.openjdk.org/babylon/pull/148


More information about the babylon-dev mailing list