ack/util/ego/cs/cs_partit.h
1987-03-09 19:15:41 +00:00

60 lines
1.6 KiB
C

/*
* (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
* See the copyright notice in the ACK home directory, in the file "Copyright".
*/
/* These routines partition the huge set of EM-instructions in
* "manageable chunks.
*/
extern int instrgroup(); /* (line_p lnp)
* Return the group into which the instruction
* in lnp belongs to.
*/
extern bool stack_group(); /* (int instr)
* Return whether instr is an instruction that
* only changes the state of the stack, i.e.
* is a "true" operator.
*/
extern offset op11size(); /* (line_p lnp)
* Return the size of the operand of the unary
* operator in lnp.
*/
extern offset op12size(); /* (line_p lnp)
* Return the size of the first operand of the
* binary operator in lnp.
*/
extern offset op22size(); /* (line_p lnp)
* Return the size of the second operand of the
* binary operator in lnp.
*/
extern offset op13size(); /* (line_p lnp)
* Return the size of the first operand of the
* ternary operator in lnp.
*/
extern offset op23size(); /* (line_p lnp)
* Return the size of the second operand of the
* ternary operator in lnp.
*/
extern offset op33size(); /* (line_p lnp)
* Return the size of the third operand of the
* ternary operator in lnp.
*/
extern offset avsize(); /* (line_p lnp)
* Return the size of the result of the
* operator in lnp.
*/
extern int regtype(); /* (byte instr)
* Return in what kind of machine-register
* the result of instr should be stored:
* pointer, float, or any.
*/