Always set t12 to address of called function - lightning.git - Portable just-in-time compiler library

index : lightning.git
Portable just-in-time compiler library
summary refs log tree commit diff
path: root/lib/jit_alpha-cpu.c
diff options
context:
space:
mode:
authorPaulo Andrade <pcpa@gnu.org>2018年02月22日 13:17:28 -0300
committerPaulo Andrade <pcpa@gnu.org>2018年02月22日 13:17:28 -0300
commitb64b82ca5182cfec170b79ae7e8a23d6c088632d (patch)
tree374d925f7db6bee4aff36ea883e3122d6216d6cc /lib/jit_alpha-cpu.c
parent2cf092efe4d8333b4e5d1eecbda246ca7683f3b4 (diff)
downloadlightning-b64b82ca5182cfec170b79ae7e8a23d6c088632d.tar.gz
Always set t12 to address of called function
* lib/jit_alpha-cpu.c: Always set t12 to the address of the current function, to properly work on all systems. Previously the shortcut did only work on Tru64. For Linux and glibc the change is required.
Diffstat (limited to 'lib/jit_alpha-cpu.c')
-rw-r--r--lib/jit_alpha-cpu.c 6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/jit_alpha-cpu.c b/lib/jit_alpha-cpu.c
index 89755aa..afc22bb 100644
--- a/lib/jit_alpha-cpu.c
+++ b/lib/jit_alpha-cpu.c
@@ -2550,6 +2550,8 @@ _callr(jit_state_t *_jit, jit_int32_t r0)
static void
_calli(jit_state_t *_jit, jit_word_t i0)
{
+ /* FIXME use a small buffer to load constants - using gp */
+#if 0
jit_word_t w;
jit_word_t d;
w = _jit->pc.w;
@@ -2558,6 +2560,10 @@ _calli(jit_state_t *_jit, jit_word_t i0)
BSR(_RA_REGNO, d);
else
(void)calli_p(i0);
+#else
+ movi(_PV_REGNO, i0);
+ callr(_PV_REGNO);
+#endif
}
static jit_word_t
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月21日 10:58:56 +0000

AltStyle によって変換されたページ (->オリジナル) /