pike.git
/
src
/
code
/
sparc.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/code/sparc.c:1:
/*
-
* $Id: sparc.c,v 1.
1
2001/07/20
12
:
44
:
55
grubba Exp $
+
* $Id: sparc.c,v 1.
2
2001/07/20
13
:
16
:
49
grubba Exp $
* * Machine code generator for sparc. * * Henrik Grubbström 20010720 */
-
void ins_pointer(INT32 ptr)
-
{
-
add_to_program(ptr);
-
}
-
-
INT32 read_pointer(INT32 off)
-
{
-
return Pike_compiler->new_program->program[off];
-
}
-
-
void upd_pointer(INT32 off, INT32 ptr)
-
{
-
Pike_compiler->new_program->program[off] = ptr;
-
}
-
-
void ins_align(INT32 align)
-
{
-
/* Already aligned... */
-
}
-
-
void ins_byte(INT32 val)
-
{
-
add_to_program(val);
-
}
-
-
void ins_data(INT32 val)
-
{
-
add_to_program(val);
-
}
-
-
+
#define CALL_ABSOLUTE(X) do { \ INT32 delta_; \ struct program *p_ = Pike_compiler->new_program; \ INT32 off_ = p_->num_program; \ /* call X */ \ add_to_program(0); /* Placeholder... */ \ delta_ = ((PIKE_OPCODE_T *)(X)) - (p_->program + off_); \ p_->program[off_] = 0x40000000 | (delta_ & 0x3fffffff); \ add_to_relocations(off_); \ /* noop */ \
pike.git/src/code/sparc.c:88:
void ins_f_byte_with_2_args(unsigned int a, unsigned INT32 c, unsigned INT32 b) { SET_REG(REG_O0, c); SET_REG(REG_O1, b); ins_f_byte(a); return; }
-
+