EasyManua.ls Logo

Intel i960 - Page 268

Intel i960
347 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Language Implementation
7-79
7
Argument Categories
An argument category can be any of the following:
General-register is a register-resident value (e.g., a register
variable variable). Depending on the level of
optimization, this category can include a more
complex expression. During compilation, the
expression must evaluate to a register-resident
variable that is one of the operands in the
expression. For example, the expressions
x+0
and x*y/y both evaluate to x.
Memory is a memory-resident value.
General-register- indicates an expression that the compiler cannot
temporary evaluate to a single variable or constant. This
category includes most expressions containing an
operator. A common exception is an expression
in which the top-level operator implies
indirection (that is,
*, [ ], or ->). Such an
expression falls into the memory category.
Depending on the optimization level, the
general-register-temporary category can include
an expression in which the top-level operator is
an assignment to a register-resident variable.
Floating-point values can also fall into this
category.
Floating-point- indicates a floating-point expression that can be
register-temporary classified more efficiently into a floating-point
register than into a general register. This
category is available only on processors with
on-chip floating-point support.
Integer constant is a constant integer value. Depending on the
level of optimization, this category can include
an expression containing variable operands, if
the compiler can evaluate the expression to a

Table of Contents

Related product manuals