Beispiel #1
0
inline static void check_call_site(cell return_address)
{
#ifdef FACTOR_DEBUG
	unsigned char opcode = call_site_opcode(return_address);
	assert(opcode == call_opcode || opcode == jmp_opcode);
#endif
}
Beispiel #2
0
inline static bool tail_call_site_p(cell return_address)
{
	switch(call_site_opcode(return_address))
	{
	case jmp_opcode: return true;
	case call_opcode: return false;
	default: abort(); return false;
	}
}
Beispiel #3
0
inline static bool tail_call_site_p(cell return_address)
{
	return call_site_opcode(return_address) == jmp_opcode;
}
Beispiel #4
0
inline static void check_call_site(cell return_address)
{
	unsigned char opcode = call_site_opcode(return_address);
	FACTOR_ASSERT(opcode == call_opcode || opcode == jmp_opcode);
	(void)opcode; // suppress warning when compiling without assertions
}
Beispiel #5
0
inline static void check_call_site(cell return_address)
{
	unsigned char opcode = call_site_opcode(return_address);
	assert(opcode == call_opcode || opcode == jmp_opcode);
}