pike.git
/
src
/
code
/
sparc.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/code/sparc.c:1:
/* || This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
-
|| $Id: sparc.c,v 1.
34
2003
/
12
/
02
13:
49:
59 grubba Exp $
+
|| $Id: sparc.c,v 1.
35
2004
/
03
/
13
15
:
59
:
46
grubba Exp $
*/ /* * Machine code generator for sparc. * * Henrik Grubbström 20010720 */ #include "global.h" #include "svalue.h"
pike.git/src/code/sparc.c:467:
Inside #if 0
SPARC_RD(SPARC_REG_I0, SPARC_RD_REG_PC); /* add %i0, 20, %i0 */ SPARC_ADD(SPARC_REG_I0, SPARC_REG_I0, 5*4, 1); #else /* !0 */ /* call .+8 */ SPARC_CALL(8); /* The new %o7 is available in the delay slot. */ /* add %o7, 24, %i0 */ SPARC_ADD(SPARC_REG_I0, SPARC_REG_O7, 6*4, 1); #endif /* 0 */
-
/* stw %i0, [ %pike_fp, %offset(pike_frame,
pc
) ] */
+
/* stw %i0, [ %pike_fp, %offset(pike_frame,
return_addr
) ] */
SPARC_STW(SPARC_REG_I0, SPARC_REG_PIKE_FP,
-
OFFSETOF(pike_frame,
pc
), 1);
+
OFFSETOF(pike_frame,
return_addr
), 1);
#if 0 /* The following code is Sparc V9 only code. */ /* return %i7 + 8 */ SPARC_RETURN(SPARC_REG_I7, 8, 1); /* or %g0, -2, %o0 */ SPARC_OR(SPARC_REG_O0, SPARC_REG_G0, -2, 1); #else /* ! 0 */ /* Sparc V7 & V8 code. */ /* or %g0, -2, %i0 */ SPARC_OR(SPARC_REG_I0, SPARC_REG_G0, -2, 1);