Missed file in previous commit.
Add array/hash global variables and dereference to AST.
Add accessor to get the pad index for a lexical variable/declaration.
Add more types used in Emit.pm

ANY can only be used in the requested type for an expression, SV
and GV can be used both as requested type and returned type and map
to the native Perl values.

There are no AV and HV for now (it's better to wait for an actual use
case, it might be that Array/Hash types need some refactroing anyway).
Small refactoring.
Refactor the code to assign a JITted value to an SV.
Slightly better context handling for optrees and JITted return value.

Should handle scalar, list and void context (under the assumption
that in list context the values are returned on the stack by the
JITted operation).

Caller-determined context is not implemented (and dies for now) but
it will need to be implemented on an op-by-op basis.
TODOne
Explicitly compare signed ints in giant OP filter

This is in preparation of defining OP_AELEMFAST_LEX (which is not known in
pre 5.15 perls) to something invalid like -1.
AST: aelem and aelemfast

What makes this interesting is that aelemfast can refer to lexicals and globals.
On top of that, it means that now AST::Lexical and AST::Global terms can now
point to OPs of different types. For accessing the respective lexical or global,
the different OP is expected to behave the same as the OP_PADXV or OP_GV.
Implement global variable access.

The tests do not check the global value access has been JITted
(would need an opgrep pattern to check gvsv ops with an add parent).
Remove dead code and outdated documentation
Kill more old code
Attempt to annotate type tag enums
UnTODO test, we now support non-jittable subtrees.
Export pj_binop_sassign.
Fix ANY/SV stringification.
Handle trees with multiple last ops (depending on a condition).

The code for emitting subtrees assumed that control flow always
exited through the root node of the subtree.  Conditional ops
don't follow this rule, and have multiple exit points from the
subtree.
JIT scalar assignment.

Note that the code only handles the cases where the left-hand side
of the assignment returns a Perl scalar; this should be the case for
most "normal" code.  The implementation for the cases where the LHS
is not a scalar is being worked on in a separate branch.
Better type enum description