mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-20 18:50:21 +02:00
Add basic Itanium port infrastructure.
* include/lightning/jit_ia64.h, lib/jit_ia64-cpu.c, lib/jit_ia64-fpu.c, lib/jit_ia64.c: New files implementing the basic infrastructure of an Itanium port. The code compiles and can generate jit for basic hello world like functions. * check/lightning.c, configure.ac, include/lightning.h, include/lightning/Makefile.am, include/lightning/jit_private.h, lib/Makefile.am, lib/lightning.c: Update for the Itanium port. * lib/jit_mips-cpu.c, lib/jit_mips.c: Correct typo and make the jit_carry register local to the jit_state_t. This matches code reviewed in the Itanium port, that should use the same base logic to handle carry/borrow.
This commit is contained in:
parent
7bdd22bd99
commit
c2e4eb621d
14 changed files with 8296 additions and 26 deletions
|
@ -2578,7 +2578,7 @@ _bxsubr(jit_state_t *_jit, jit_word_t i0, jit_int32_t r0, jit_int32_t r1)
|
|||
SUBU(rn(t1), r0, r1); /* t1 = r0 - r1 */
|
||||
SLT(rn(t2), rn(t1), r0); /* t2 = t1 < r0 */
|
||||
SLT(rn(t1), r0, rn(t1)); /* t1 = r0 < t1 */
|
||||
MOVZ(rn(t1), rn(t2), rn(t0)); /* if (r0 == 0) t1 = t2 */
|
||||
MOVZ(rn(t1), rn(t2), rn(t0)); /* if (t0 == 0) t1 = t2 */
|
||||
w = _jit->pc.w;
|
||||
BEQ(rn(t1), _ZERO_REGNO, ((i0 - w) >> 2) - 1);
|
||||
/* delay slot */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue