See also subject "Too many opcodes".

* other VMs might already have a negative opcode count w this change ;)
* there are 3 incompatible changes: see ABI_CHANGES
* all other removed opcodes get replaced with equivalent ops
* opcodes got renumbered and shuffled - please recompile your PBCs [1]
* ops/ops.num is now the ultimate source of valid opcodes, except for
  opcodes in ops/experimental.ops, which are included in core_ops*.c
  nethertheless


[1] I'll remove some more ops RSN so you might wait to use this version in production.

Opcodes to be removed:

1) Almost half of the non-PMC compare and branch opcodes according to:

  lt a, b, L1  => ge b, a, L1

2) Very likley (unless one loudly hollers): all opcodes with FLOATVAL constants except set_x_nc and assign_x_nc . These are 107 opcodes with no counterpart in JIT or hardware. The constants have to be loaded from the constant table anyway, so we might that just do it in a separate opcode.

leo



Reply via email to