Hi, On Mon, 21 Jan 2008, Andreas Färber wrote:
> Am 21.01.2008 um 12:18 schrieb Johannes Schindelin: > > > The miniops right now are implemented as plain C commands. If the > > "good" gcc guys would not have insisted on not having an option to > > force the "ret" or "jmp" statement at the end of the function, we > > could use them for _all_ processors. > > > > As it is, Fabrice's code generator will most likely be something > > similar to Paul's qops, which means that you have to invent a > > "primitive C" in which to write the miniops, and you will have to > > write a backend for _each_ and _every_ host CPU you support. > > Has anyone looked into the idea of manually generating machine > instructions through preprocessor macros at runtime, then jumping there? > That's what the Mono JIT does, leaving C compilers completely out of the > picture. I had looked at GNU lightning briefly (but it only supports x86, SPARC and PowerPC), and at LLVM (but it was too complex, and only supports JITting for X86, X86-64, PowerPC and PowerPC-64; although they have "An easily retargettable code generator, which currently supports X86, X86-64, PowerPC, PowerPC-64, ARM, Thumb, SPARC, Alpha, and IA-64.). Given the unwillingness of Fabrice to rely on some external project, though, I gave up even before I had something even rudimentary. Ciao, Dscho