09:13
So now I have a FragmentBuilder which can be used to put instructions in by
the native code generator when needed. So the JITConfig will create the
needed translators and output machine writers. Basically internally it will
create the ExpandedByteCode where code will be plunked into. The JIT
itself will never see the actual MachineCodeOutput as that will be hidden.
This would enable me to change things around a bit. The only thing I really
would need to pass is the FragmentBuilder to the creation method so that
that it is known where MachineCodeOutput will write the generated bytes
and virtual future replacement references to.
09:25
The expanded byte code writers are to be AutoCloseable so that writing is
complete they can be closed. This would be used for optimizations and such as
that way they will all know when it is truly ready to write the resulting
optimized machine code after reading all of the instructions.
15:28
Having architecture lookup without using a service loader does not scale at all.