Open yegor256 opened 3 hours ago
@volodya-lombrozo please, check
@volodya-lombrozo actually, the name of the attribute (getstatic-25D7
) doesn't matter at all, it may stay as is. What matters is the name of the atom/object being used (jeo.opcode.invokestatic
).
@yegor256 I don't clearly understand these phi
expressions and haven't found any documentation on it. Can you please explain what does this mean:
α0 ↦ ξ.a25D7
- is it an object with base=α0
and name=a25D7
or something else?
What is the difference between Φ
and ξ
?
As for the issue itself, simply saying, do you want instead of:
<o base="jeo.opcode" name="invokespecial-188">
...
</o>
have something like:
<o base="jeo.opcode.invokespecial" name="a188">
...
</o>
?
@volodya-lombrozo yes, exactly
@yegor256 Instead of 1 atom, we will get 202 of them. It might complicate things significantly and increase coupling. Is it necessary? Moreover it will require significant changes in opec-maven-plugin
if we decide to continue with it.
@volodya-lombrozo 202 atoms is fine. Without this we technically can't write a rule for eo-phi-normalizer. We can't do this (assuming the *
is a wildcard):
*-25E3 ↦ Φ.jeo.opcode( ... )
We can only do this:
* ↦ Φ.jeo.opcode.invokestatic( ... )
@yegor256 Well, ok, I will do it then.
Currently, jeo:disassemble generates this phi (via XMIR):
It's rather inconvenient for further processing. Instead, this would be better:
Possible?