Commit f6601f3a by Tom Wood

entered into RCS

From-SVN: r1945
parent 77472c5a
...@@ -236,7 +236,7 @@ DEF_RTL_EXPR(DEFINE_DELAY, "define_delay", "eE", 'x') ...@@ -236,7 +236,7 @@ DEF_RTL_EXPR(DEFINE_DELAY, "define_delay", "eE", 'x')
Each gives a set of operations and associated delays. The first three Each gives a set of operations and associated delays. The first three
operands must be the same for each operation for the same function unit. operands must be the same for each operation for the same function unit.
All delays are specified in units of COST_PER_CYCLE. All delays are specified in cycles.
1st operand: Name of function unit (mostly for documentation) 1st operand: Name of function unit (mostly for documentation)
2nd operand: Number of identical function units in CPU 2nd operand: Number of identical function units in CPU
...@@ -250,19 +250,21 @@ DEF_RTL_EXPR(DEFINE_DELAY, "define_delay", "eE", 'x') ...@@ -250,19 +250,21 @@ DEF_RTL_EXPR(DEFINE_DELAY, "define_delay", "eE", 'x')
executing this operation. The meaning depends on whether or executing this operation. The meaning depends on whether or
not the next operand is supplied. not the next operand is supplied.
7th operand: If this operand is not specified, the 6th operand gives the 7th operand: If this operand is not specified, the 6th operand gives the
cost of scheduling another operation on this unit while a number of cycles after the instruction matching the 4th
previous one is active. A value of zero should be used for a operand begins using the function unit until a subsequent
pipelined unit. If only one operation can be executed a time insn can begin. A value of zero should be used for a
and the unit is busy for the entire time, the 3rd operand unit with no issue constraints. If only one operation can
should be specified as 1 and the 6th and 7th operands will be executed a time and the unit is busy for the entire time,
be ignored. the 3rd operand should be specified as 1, the 6th operand
sould be specified as 0, and the 7th operand should not
be specified.
If this operand is specified, it is a list of attribute If this operand is specified, it is a list of attribute
expressions. If an insn for which any of these expressions expressions. If an insn for which any of these expressions
is true is currently executing on the function unit, the is true is currently executing on the function unit, the
delay will be given by the 6th operand. Otherwise, the issue delay will be given by the 6th operand. Otherwise,
insn can be immediately scheduled (subject to the limit on the insn can be immediately scheduled (subject to the limit
the number of simultaneous operations executing on the on the number of simultaneous operations executing on the
unit.) */ unit.) */
DEF_RTL_EXPR(DEFINE_FUNCTION_UNIT, "define_function_unit", "siieiiV", 'x') DEF_RTL_EXPR(DEFINE_FUNCTION_UNIT, "define_function_unit", "siieiiV", 'x')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment