 |
OpenVMS VAX RTL Mathematics (MTH$) Manual
MTH$VxFOLRLy_MA_V5
The First Order Linear Recurrence --- Multiplication and Addition ---
Last Value routine provides a vectorized algorithm for the linear
recurrence relation that includes both multiplication and addition
operations. Only the last value computed is stored.
Format
MTH$VJFOLRLP_MA_V5 n,a,inca,b,incb,t
MTH$VFFOLRLP_MA_V5 n,a,inca,b,incb,t
MTH$VDFOLRLP_MA_V5 n,a,inca,b,incb,t
MTH$VGFOLRLP_MA_V5 n,a,inca,b,incb,t
MTH$VJFOLRLN_MA_V5 n,a,inca,b,incb,t
MTH$VFFOLRLN_MA_V5 n,a,inca,b,incb,t
MTH$VDFOLRLN_MA_V5 n,a,inca,b,incb,t
MTH$VGFOLRLN_MA_V5 n,a,inca,b,incb,t
To obtain one of the preceding formats, substitute the following for
x and y in MTH$VxFOLRLy_MA_V5:
x
|
=
|
J for longword integer, F for F-floating, D for D-floating, G for
G-floating
|
y
|
=
|
P for a positive recursion element, N for a negative recursion element
|
RETURNS
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating or
G_floating |
access: |
write only |
mechanism: |
by value |
The function value is the result of the last iteration of the linear
recurrence relation. The function value is returned in R0 or R0 and R1.
Arguments
n
OpenVMS usage: |
longword_signed |
type: |
longword integer (signed) |
access: |
read only |
mechanism: |
by reference |
Length of the linear recurrence. The n argument is the
address of a signed longword integer containing the length.
a
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating, or
G_floating |
access: |
read only |
mechanism: |
by reference, array reference |
Array of length at least:
1+(n-1)*inca
where:
n
|
=
|
length of the linear recurrence specified in
n
|
inca
|
=
|
increment argument for the array
a specified in
inca
|
The a argument is the address of a longword integer or
floating-point that is this array.
inca
OpenVMS usage: |
longword_signed |
type: |
longword integer (signed) |
access: |
read only |
mechanism: |
by reference |
Increment argument for the array a. The
inca argument is the address of a signed longword
integer containing the increment argument. For contiguous elements,
specify 1 for inca.
b
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating, or
G_floating |
access: |
read only |
mechanism: |
by reference, array reference |
Array of length at least:
1+(n-1)*incb
where:
n
|
=
|
length of the linear recurrence specified in
n
|
incb
|
=
|
increment argument for the array
b specified in
incb
|
The b argument is the address of a longword integer or
floating-point number that is this array.
incb
OpenVMS usage: |
longword_signed |
type: |
longword integer (signed) |
access: |
read only |
mechanism: |
by reference |
Increment argument for the array b. The
incb argument is the address of a signed longword
integer containing the increment argument. For contiguous elements,
specify 1 for incb.
t
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating, or
G_floating |
access: |
modify |
mechanism: |
by reference |
Variable containing the starting value for the recurrence; overwritten
with the value computed by the last iteration of the linear recurrence
relation. The t argument is the address of a longword
integer or floating-point number that is this value.
Description
MTH$VxFOLRLy_MA_V5 is a group of routines that provide a vectorized
algorithm for computing the following linear recurrence relation. (The
T on the right side of the equation is the result of the previous
iteration of the loop.)
T = +/-T * A(I) + B(I)
Note
Save the contents of vector registers V0 through V5 before you call
this routine.
|
Call this routine to utilize vector hardware when computing the
recurrence. As an example, the call from Compaq Fortran is as follows:
CALL MTH$VxFOLRy_MA_V5(N,A(K1),INCA,B(K2),INCB,T)
|
The preceding Fortran call replaces the following loop:
K1 = ...
K2 = ...
DO I = 1, N
T = {+/-}T * A(K1+(I-1)*INCA) + B(K1+(I-1)*INCB)
ENDDO
|
The arrays used in a FOLR expression must be of the same data type in
order to be vectorized and user callable. The MTH$ FOLR routines assume
that all of the arrays are of the same data type.
This group of routines, MTH$VxFOLRLy_MA_V5 (and also MTH$VxFOLRLy_z_V2)
returns only the result of the last iteration of the linear recurrence
relation. This is different from the behavior of MTH$VxFOLRy_MA_V15
(and also MTH$VxFOLRy_z_V8), which save the result of each iteration of
the linear recurrence relation in an array.
If you specify 0 for the input increment arguments
(inca and incb), the input will be
treated as a scalar and broadcast to a vector input with all vector
elements equal to the scalar value.
Examples
#1 |
C
C The following Fortran loop computes
C a linear recurrence.
C
C G_FLOAT
INTEGER N,INCA,INCB,I
REAL*8 A(30), B(6), T
N = 6
INCA = 5
INCB = 1
T = 78.9847562
DO I = 1, N
T = -T * A(I*INCA) + B(I*INCB)
ENDDO
C
C The following call from Fortran to a FOLR
C routine replaces the preceding loop.
C
C G_FLOAT
INTEGER N,INCA,INCB
DIMENSION A(30), B(6), T
N = 6
INCA = 5
INCB = 1
T = 78.9847562
T = MTH$VGFOLRLN_MA_V5(N, A(INCA), INCA, B(INCB), INCB, T)
|
#2 |
C
C The following Fortran loop computes
C a linear recurrence.
C
C G_FLOAT
INTEGER N,INCA,INCB,I
REAL*8 A(30), B(6), T
N = 6
INCA = 5
INCB = 1
T = 78.9847562
DO I = 1, N
T = T * A(I*INCA) + B(I*INCB)
ENDDO
C
C The following call from Fortran to a FOLR
C routine replaces the preceding loop.
C
C G_FLOAT
INTEGER N,INCA,INCB
DIMENSION A(30), B(6), T
N = 6
INCA = 5
INCB = 1
T = 78.9847562
T = MTH$VGFOLRLP_MA_V5(N, A(INCA), INCA, B(INCB), INCB, T)
|
MTH$VxFOLRLy_z_V2
The First Order Linear Recurrence --- Multiplication or Addition ---
Last Value routine provides a vectorized algorithm for the linear
recurrence relation that includes either a multiplication or an
addition operation. Only the last value computed is stored.
Format
MTH$VJFOLRLP_M_V2 n,a,inca,t
MTH$VFFOLRLP_M_V2 n,a,inca,t
MTH$VDFOLRLP_M_V2 n,a,inca,t
MTH$VGFOLRLP_M_V2 n,a,inca,t
MTH$VJFOLRLN_M_V2 n,a,inca,t
MTH$VFFOLRLN_M_V2 n,a,inca,t
MTH$VDFOLRLN_M_V2 n,a,inca,t
MTH$VGFOLRLN_M_V2 n,a,inca,t
MTH$VJFOLRLP_A_V2 n,a,inca,t
MTH$VFFOLRLP_A_V2 n,a,inca,t
MTH$VDFOLRLP_A_V2 n,a,inca,t
MTH$VGFOLRLP_A_V2 n,a,inca,t
MTH$VJFOLRLN_A_V2 n,a,inca,t
MTH$VFFOLRLN_A_V2 n,a,inca,t
MTH$VDFOLRLN_A_V2 n,a,inca,t
MTH$VGFOLRLN_A_V2 n,a,inca,t
To obtain one of the preceding formats, substitute the following for
x, y, and z in MTH$VxFOLRLy_z_V2:
x
|
=
|
J for longword integer, F for F-floating, D for D-floating, G for
G-floating
|
y
|
=
|
P for a positive recursion element, N for a negative recursion element
|
z
|
=
|
M for multiplication, A for addition
|
RETURNS
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating or
G_floating |
access: |
write only |
mechanism: |
by value |
The function value is the result of the last iteration of the linear
recurrence relation. The function value is returned in R0 or R0 and R1.
Arguments
n
OpenVMS usage: |
longword_signed |
type: |
longword integer (signed) |
access: |
read only |
mechanism: |
by reference |
Length of the linear recurrence. The n argument is the
address of a signed longword integer containing the length.
a
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating, or
G_floating |
access: |
read only |
mechanism: |
by reference, array reference |
Array of length at least:
n*inca
where:
n
|
=
|
length of the linear recurrence specified in
n
|
inca
|
=
|
increment argument for the array
a specified in
inca
|
The a argument is the address of a longword integer or
floating-point that is this array.
inca
OpenVMS usage: |
longword_signed |
type: |
longword integer (signed) |
access: |
read only |
mechanism: |
by reference |
Increment argument for the array a. The
inca argument is the address of a signed longword
integer containing the increment argument. For contiguous elements,
specify 1 for inca.
t
OpenVMS usage: |
longword_signed or floating_point |
type: |
longword integer (signed), F_floating, D_floating, or
G_floating |
access: |
modify |
mechanism: |
by reference |
Variable containing the starting value for the recurrence; overwritten
with the value computed by the last iteration of the linear recurrence
relation. The t argument is the address of a longword
integer or floating-point number that is this value.
Description
MTH$VxFOLRLy_z_V2 is a group of routines that provide a vectorized
algorithm for computing one of the following linear recurrence
relations. (The T on the right side of the following equations is the
result of the previous iteration of the loop.)
T = +/-T * A(I)
or
T = +/-T + A(I)
For the first relation, specify M for z in the routine name to
denote multiplication; for the second relation, specify A for
z in the routine name to denote addition.
Note
Save the contents of vector registers V0, V1, and V2 before you call
this routine.
|
Call this routine to utilize vector hardware when computing the
recurrence. As an example, the call from Compaq Fortran is as follows:
CALL MTH$VxFOLRLy_z_V2(N,A(K1),INCA,T)
|
The preceding Fortran call replaces the following loop:
K1 = ....
DO I = 1, N
T = {+/-}T {+/*} A(K1+(I-1)*INCA)
ENDDO
|
The arrays used in a FOLR expression must be of the same data type in
order to be vectorized and user callable. The MTH$ FOLR routines assume
that all of the arrays are of the same data type.
This group of routines, MTH$VxFOLRLy_z_V2 (and also MTH$VxFOLRLy_MA_V5)
return only the result of the last iteration of the linear recurrence
relation. This is different from the behavior of MTH$VxFOLRy_MA_V15
(and also MTH$VxFOLRy_z_V8), which save the result of each iteration of
the linear recurrence relation in an array.
If you specify 0 for the input increment argument
(inca), the input will be treated as a scalar and
broadcast to a vector input with all vector elements equal to the
scalar value.
Examples
#1 |
C
C The following Fortran loop computes
C a linear recurrence.
C
C D_FLOAT
INTEGER I,N
REAL*8 A(200), T
T = 78.9847562
N = 20
DO I = 4, N
T = -T * A(I*10)
ENDDO
C
C The following call from Fortran to a FOLR
C routine replaces the preceding loop.
C
C D_FLOAT
INTEGER N
REAL*8 A(200), T
T = 78.9847562
N = 20
T = MTH$VDFOLRLN_M_V2(N-3, A(40), 10, T)
|
#2 |
C
C The following Fortran loop computes
C a linear recurrence.
C
C D_FLOAT
INTEGER I,N
REAL*8 A(200), T
T = 78.9847562
N = 20
DO I = 4, N
T = T + A(I*10)
ENDDO
C
C The following call from Fortran to a FOLR
C routine replaces the preceding loop.
C
C D_FLOAT
INTEGER N
REAL*8 A(200), T
T = 78.9847562
N = 20
T = MTH$VDFOLRLP_A_V2(N-3, A(40), 10, T)
|
Appendix A Additional MTH$ Routines
The following supported MTH$ routines are not included with the
routines in the Scalar MTH$ Reference Section because they are rarely used. The majority
of these routines serve to satisfy external references when intrinsic
functions in Fortran and other languages are passed as parameters.
Otherwise, the functions are performed by inline code.
Table A-1 lists all of the entry point and argument information for
the MTH$ routines not documented in the Scalar MTH$ Reference Section of this manual.
Table A-1 Additional MTH$ Routines
Routine Name |
|
Entry Point Information |
MTH$ABS
|
|
F-floating Absolute Value Routine
|
|
Format:
|
MTH$ABS f-floating
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DABS
|
|
D-floating Absolute Value Routine
|
|
Format:
|
MTH$DABS d-floating
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GABS
|
|
G-floating Absolute Value Routine
|
|
Format:
|
MTH$GABS g-floating
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HABS
|
|
H-floating Absolute Value Routine
|
|
Format:
|
MTH$HABS h-abs-val, h-floating
|
|
Returns:
|
None
|
|
h-abs-val:
|
floating_point, H_floating, write only, by reference
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IIABS
|
|
Word Absolute Value Routine
|
|
Format:
|
MTH$IIABS word
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JIABS
|
|
Longword Absolute Value Routine
|
|
Format:
|
MTH$JIABS longword
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$IIAND
|
|
Bitwise AND of Two Word Parameters Routine
|
|
Format:
|
MTH$IIAND word1, word2
|
|
Returns:
|
word_unsigned, word (unsigned), write only, by value
|
|
word1:
|
word_unsigned, word (unsigned), read only, by reference
|
|
word2:
|
word_unsigned, word (unsigned), read only, by reference
|
|
|
|
MTH$JIAND
|
|
Bitwise AND of Two Longword Parameters Routine
|
|
Format:
|
MTH$JIAND longword1, longword2
|
|
Returns:
|
longword_unsigned, longword (unsigned), write only, by value
|
|
longword1:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
longword2:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
|
|
MTH$DBLE
|
|
Convert F-floating to D-floating (Exact) Routine
|
|
Format:
|
MTH$DBLE f-floating
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$GDBLE
|
|
Convert F-floating to G-floating (Exact) Routine
|
|
Format:
|
MTH$GDBLE f-floating
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DIM
|
|
Positive Difference of Two F-floating Parameters Routine
|
|
Format:
|
MTH$DIM f-floating1, f-floating2
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating1:
|
floating_point, F_floating, read only, by reference
|
|
f-floating2:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DDIM
|
|
Positive Difference of Two D-floating Parameters Routine
|
|
Format:
|
MTH$DDIM d-floating1, d-floating2
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating1:
|
floating_point, D_floating, read only, by reference
|
|
d-floating2:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GDIM
|
|
Positive Difference of Two G-floating Parameters Routine
|
|
Format:
|
MTH$GDIM g-floating1, g-floating2
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating1:
|
floating_point, G_floating, read only, by reference
|
|
g-floating2:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HDIM
|
|
Positive Difference of Two H-floating Parameters Routine
|
|
Format:
|
MTH$HDIM h-floating, h-floating1, h-floating2
|
|
Returns:
|
None
|
|
h-floating:
|
floating_point, H_floating, write only, by reference
|
|
h-floating1:
|
floating_point, H_floating, read only, by reference
|
|
h-floating2:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IIDIM
|
|
Positive Difference of Two Word Parameters Routine
|
|
Format:
|
MTH$IIDIM word1, word2
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
word1:
|
word_signed, word (signed), read only, by reference
|
|
word2:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JIDIM
|
|
Positive Difference of Two Longword Parameters Routine
|
|
Format:
|
MTH$JIDIM longword1, longword2
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
longword1:
|
longword_signed, longword (signed), read only, by reference
|
|
longword2:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$IIEOR
|
|
Bitwise Exclusive OR of Two Word Parameters Routine
|
|
Format:
|
MTH$IIEOR word1, word2
|
|
Returns:
|
word_unsigned, word (unsigned), write only, by value
|
|
word1:
|
word_unsigned, word (unsigned), read only, by reference
|
|
word2:
|
word_unsigned, word (unsigned), read only, by reference
|
|
|
|
MTH$JIEOR
|
|
Bitwise Exclusive OR of Two Longword Parameters Routine
|
|
Format:
|
MTH$JIEOR longword1, longword2
|
|
Returns:
|
longword_unsigned, longword (unsigned), write only, by value
|
|
longword1:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
longword2:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
|
|
MTH$IIFIX
|
|
Convert F-floating to Word (Truncated) Routine
|
|
Format:
|
MTH$IIFIX f-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$JIFIX
|
|
Convert F-floating to Longword (Truncated) Routine
|
|
Format:
|
MTH$JIFIX f-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$FLOATI
|
|
Convert Word to F-floating (Exact) Routine
|
|
Format:
|
MTH$FLOATI word
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$DFLOTI
|
|
Convert Word to D-floating (Exact) Routine
|
|
Format:
|
MTH$DFLOTI word
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$GFLOTI
|
|
Convert Word to G-floating (Exact) Routine
|
|
Format:
|
MTH$GFLOTI word
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$FLOATJ
|
|
Convert Longword to F-floating (Rounded) Routine
|
|
Format:
|
MTH$FLOATJ longword
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$DFLOTJ
|
|
Convert Longword to D-floating (Exact) Routine
|
|
Format:
|
MTH$DFLOTJ longword
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$GFLOTJ
|
|
Convert Longword to G-floating (Exact) Routine
|
|
Format:
|
MTH$GFLOTJ longword
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$FLOOR
|
|
Convert F-floating to Greatest F-floating Integer Routine
|
|
Format:
|
MTH$FLOOR f-floating
|
|
JSB:
|
MTH$FLOOR_R1 f-floating
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DFLOOR
|
|
Convert D-floating to Greatest D-floating Integer Routine
|
|
Format:
|
MTH$DFLOOR d-floating
|
|
JSB:
|
MTH$DFLOOR_R3 d-floating
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GFLOOR
|
|
Convert G-floating to Greatest G-floating Integer Routine
|
|
Format:
|
MTH$GFLOOR g-floating
|
|
JSB:
|
MTH$GFLOOR_R3 g-floating
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HFLOOR
|
|
Convert H-floating to Greatest H-floating Integer Routine
|
|
Format:
|
MTH$HFLOOR max-h-float, h-floating
|
|
JSB:
|
MTH$HFLOOR_R7 h-floating
|
|
Returns:
|
None
|
|
max-h-float:
|
floating_point, H_floating, write only, by reference
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$AINT
|
|
Convert F-floating to Truncated F-floating Routine
|
|
Format:
|
MTH$AINT f-floating
|
|
JSB:
|
MTH$AINT_R2 f-floating
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DINT
|
|
Convert D-floating to Truncated D-floating Routine
|
|
Format:
|
MTH$DINT d-floating
|
|
JSB:
|
MTH$DINT_R4 d-floating
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$IIDINT
|
|
Convert D-floating to Word (Truncated) Routine
|
|
Format:
|
MTH$IIDINT d-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$JIDINT
|
|
Convert D-floating to Longword (Truncated) Routine
|
|
Format:
|
MTH$JIDINT d-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GINT
|
|
Convert G-floating to Truncated G-floating Routine
|
|
Format:
|
MTH$GINT g-floating
|
|
JSB:
|
MTH$GINT_R4 g-floating
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$IIGINT
|
|
Convert G-floating to Word (Truncated) Routine
|
|
Format:
|
MTH$IIGINT g-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$JIGINT
|
|
Convert G-floating to Longword (Truncated) Routine
|
|
Format:
|
MTH$JIGINT g-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HINT
|
|
Convert H-floating to Truncated H-floating Routine
|
|
Format:
|
MTH$HINT trunc-h-flt, h-floating
|
|
JSB:
|
MTH$HINT_R8 h-floating
|
|
Returns:
|
None
|
|
trunc-h-flt:
|
floating_point, H_floating, write only, by reference
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IIHINT
|
|
Convert H-floating to Word (Truncated) Routine
|
|
Format:
|
MTH$IIHINT h-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$JIHINT
|
|
Convert H-floating to Longword (Truncated) Routine
|
|
Format:
|
MTH$JIHINT h-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IINT
|
|
Convert F-floating to Word (Truncated) Routine
|
|
Format:
|
MTH$IINT f-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$JINT
|
|
Convert F-floating to Longword (Truncated) Routine
|
|
Format:
|
MTH$JINT f-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$IIOR
|
|
Bitwise Inclusive OR of Two Word Parameters Routine
|
|
Format:
|
MTH$IIOR word1, word2
|
|
Returns:
|
word_unsigned, word (unsigned), write only, by value
|
|
word1:
|
word_unsigned, word (unsigned), read only, by reference
|
|
word2:
|
word_unsigned, word (unsigned), read only, by reference
|
|
|
|
MTH$JIOR
|
|
Bitwise Inclusive OR of Two Longword Parameters Routine
|
|
Format:
|
MTH$JIOR longword1, longword2
|
|
Returns:
|
longword_unsigned, longword (unsigned), write only, by value
|
|
longword1:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
longword2:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
|
|
MTH$AIMAX0
|
|
F-floating Maximum of N Word Parameters Routine
|
|
Format:
|
MTH$AIMAX0 word, ...
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$AJMAX0
|
|
F-floating Maximum of N Longword Parameters Routine
|
|
Format:
|
MTH$AJMAX0 longword, ...
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$IMAX0
|
|
Word Maximum of N Word Parameters Routine
|
|
Format:
|
MTH$IMAX0 word, ...
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JMAX0
|
|
Longword Maximum of N Longword Parameters Routine
|
|
Format:
|
MTH$JMAX0 longword, ...
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$AMAX1
|
|
F-floating Maximum of N F-floating Parameters Routine
|
|
Format:
|
MTH$AMAX1 f-floating, ...
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DMAX1
|
|
D-floating Maximum of N D-floating Parameters Routine
|
|
Format:
|
MTH$DMAX1 d-floating, ...
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GMAX1
|
|
G-floating Maximum of N G-floating Parameters Routine
|
|
Format:
|
MTH$GMAX1 g-floating, ...
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HMAX1
|
|
H-floating Maximum of N H-floating Parameters Routine
|
|
Format:
|
MTH$HMAX1 h-float-max, h-floating, ...
|
|
Returns:
|
None
|
|
h-float-max:
|
floating_point, H_floating, write only, by reference
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IMAX1
|
|
Word Maximum of N F-floating Parameters Routine
|
|
Format:
|
MTH$IMAX1 f-floating, ...
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$JMAX1
|
|
Longword Maximum of N F-floating Parameters Routine
|
|
Format:
|
MTH$JMAX1 f-floating, ...
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$AIMIN0
|
|
F-floating Minimum of N Word Parameters Routine
|
|
Format:
|
MTH$AIMIN0 word, ...
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$AJMIN0
|
|
F-floating Minimum of N Longword Parameters Routine
|
|
Format:
|
MTH$AJMIN0 longword, ...
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$IMIN0
|
|
Word Minimum of N Word Parameters Routine
|
|
Format:
|
MTH$IMIN0 word, ...
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
word:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JMIN0
|
|
Longword Minimum of N Longword Parameters Routine
|
|
Format:
|
MTH$JMIN0 longword, ...
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
longword:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$AMIN1
|
|
F-floating Minimum of N F-floating Parameters Routine
|
|
Format:
|
MTH$AMIN1 f-floating, ...
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DMIN1
|
|
D-floating Minimum of N D-floating Parameters Routine
|
|
Format:
|
MTH$DMIN1 d-floating, ...
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GMIN1
|
|
G-floating Minimum of N G-floating Parameters Routine
|
|
Format:
|
MTH$GMIN1 g-floating, ...
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HMIN1
|
|
H-floating Minimum of N H-floating Parameters Routine
|
|
Format:
|
MTH$HMIN1 h-float-max, h-floating, ...
|
|
Returns:
|
None
|
|
h-float-max:
|
floating_point, H_floating, write only, by reference
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IMIN1
|
|
Word Minimum of N F-floating Parameters Routine
|
|
Format:
|
MTH$IMIN1 f-floating, ...
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$JMIN1
|
|
Longword Minimum of N F-floating Parameters Routine
|
|
Format:
|
MTH$JMIN1 f-floating, ...
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$AMOD
|
|
Remainder from Division of Two F-floating Parameters Routine
|
|
Format:
|
MTH$AMOD dividend, divisor
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
dividend:
|
floating_point, F_floating, read only, by reference
|
|
divisor:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DMOD
|
|
Remainder from Division of Two D-floating Parameters Routine
|
|
Format:
|
MTH$DMOD dividend, divisor
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
dividend:
|
floating_point, D_floating, read only, by reference
|
|
divisor:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GMOD
|
|
Remainder from Division of Two G-floating Parameters Routine
|
|
Format:
|
MTH$GMOD dividend, divisor
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
dividend:
|
floating_point, G_floating, read only, by reference
|
|
divisor:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HMOD
|
|
Remainder from Division of Two H-floating Parameters Routine
|
|
Format:
|
MTH$HMOD h-mod, dividend, divisor
|
|
Returns:
|
None
|
|
h-mod:
|
floating_point, H_floating, write only, by reference
|
|
dividend:
|
floating_point, H_floating, read only, by reference
|
|
divisor:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IMOD
|
|
Remainder from Division of Two Word Parameters Routine
|
|
Format:
|
MTH$IMOD dividend, divisor
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
dividend:
|
word_signed, word (signed), read only, by reference
|
|
divisor:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JMOD
|
|
Remainder of Two Longword Parameters Routine
|
|
Format:
|
MTH$JMOD dividend, divisor
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
dividend:
|
longword_signed, longword (signed), read only, by reference
|
|
divisor:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$ANINT
|
|
Convert F-floating to Nearest F-floating Integer Routine
|
|
Format:
|
MTH$ANINT f-floating
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DNINT
|
|
Convert D-floating to Nearest D-floating Integer Routine
|
|
Format:
|
MTH$DNINT d-floating
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$IIDNNT
|
|
Convert D-floating to Nearest Word Integer Routine
|
|
Format:
|
MTH$IIDNNT d-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$JIDNNT
|
|
Convert D-floating to Nearest Longword Integer Routine
|
|
Format:
|
MTH$JIDNNT d-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GNINT
|
|
Convert G-floating to Nearest G-floating Integer Routine
|
|
Format:
|
MTH$GNINT g-floating
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$IIGNNT
|
|
Convert G-floating to Nearest Word Integer Routine
|
|
Format:
|
MTH$IIGNNT g-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$JIGNNT
|
|
Convert G-floating to Nearest Longword Integer Routine
|
|
Format:
|
MTH$JIGNNT g-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HNINT
|
|
Convert H-floating to Nearest H-floating Integer Routine
|
|
Format:
|
MTH$HNINT nearst-h-flt, h-floating
|
|
Returns:
|
None
|
|
nearst-h-flt:
|
floating_point, H_floating, write only, by reference
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IIHNNT
|
|
Convert H-floating to Nearest Word Integer Routine
|
|
Format:
|
MTH$IIHNNT h-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$JIHNNT
|
|
Convert H-floating to Nearest Longword Integer Routine
|
|
Format:
|
MTH$JIHNNT h-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
h-floating:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$ININT
|
|
Convert F-floating to Nearest Word Integer Routine
|
|
Format:
|
MTH$ININT f-floating
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$JNINT
|
|
Convert F-floating to Nearest Longword Integer Routine
|
|
Format:
|
MTH$JNINT f-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by value
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$INOT
|
|
Bitwise Complement of Word Parameter Routine
|
|
Format:
|
MTH$INOT word
|
|
Returns:
|
word_unsigned, word (unsigned), write only, by value
|
|
word:
|
word_unsigned, word (unsigned), read only, by reference
|
|
|
|
MTH$JNOT
|
|
Bitwise Complement of Longword Parameter Routine
|
|
Format:
|
MTH$JNOT longword
|
|
Returns:
|
longword_unsigned, longword (unsigned), write only, by value
|
|
longword:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
|
|
MTH$DPROD
|
|
D-floating Product of Two F-floating Parameters Routine
|
|
Format:
|
MTH$DPROD f-floating1, f-floating2
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
f-floating1:
|
floating_point, F_floating, read only, by reference
|
|
f-floating2:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$GPROD
|
|
G-floating Product of Two F-floating Parameters Routine
|
|
Format:
|
MTH$GPROD f-floating1, f-floating2
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
f-floating1:
|
floating_point, F_floating, read only, by reference
|
|
f-floating2:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$SGN
|
|
F-floating Sign Function
|
|
Format:
|
MTH$SGN f-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by reference
|
|
f-floating:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$SGN
|
|
D-floating Sign Function
|
|
Format:
|
MTH$SGN d-floating
|
|
Returns:
|
longword_signed, longword (signed), write only, by reference
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$IISHFT
|
|
Bitwise Shift of Word Routine
|
|
Format:
|
MTH$IISHFT word, shift-cnt
|
|
Returns:
|
word_unsigned, word (unsigned), write only, by value
|
|
word:
|
word_unsigned, word (unsigned), read only, by reference
|
|
shift-cnt:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JISHFT
|
|
Bitwise Shift of Longword Routine
|
|
Format:
|
MTH$JISHFT longword, shift-cnt
|
|
Returns:
|
longword_unsigned, longword (unsigned), write only, by value
|
|
longword:
|
longword_unsigned, longword (unsigned), read only, by reference
|
|
shift-cnt:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$SIGN
|
|
F-floating Transfer of Sign of Y to Sign of X Routine
|
|
Format:
|
MTH$SIGN f-float-x, f-float-y
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
f-float-x:
|
floating_point, F_floating, read only, by reference
|
|
f-float-y:
|
floating_point, F_floating, read only, by reference
|
|
|
|
MTH$DSIGN
|
|
D-floating Transfer of Sign of Y to Sign of X Routine
|
|
Format:
|
MTH$DSIGN d-float-x, d-float-y
|
|
Returns:
|
floating_point, D_floating, write only, by value
|
|
d-float-x:
|
floating_point, D_floating, read only, by reference
|
|
d-float-y:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$GSIGN
|
|
G-floating Transfer of Sign of Y to Sign of X Routine
|
|
Format:
|
MTH$GSIGN g-float-x, g-float-y
|
|
Returns:
|
floating_point, G_floating, write only, by value
|
|
g-float-x:
|
floating_point, G_floating, read only, by reference
|
|
g-float-y:
|
floating_point, G_floating, read only, by reference
|
|
|
|
MTH$HSIGN
|
|
H-floating Transfer of Sign of Y to Sign of X Routine
|
|
Format:
|
MTH$HSIGN h-result, h-float-x, h-float-y
|
|
Returns:
|
None
|
|
h-result:
|
floating_point, H_floating, write only, by reference
|
|
h-float-x:
|
floating_point, H_floating, read only, by reference
|
|
h-float-y:
|
floating_point, H_floating, read only, by reference
|
|
|
|
MTH$IISIGN
|
|
Word Transfer of Sign of Y to Sign of X Routine
|
|
Format:
|
MTH$IISIGN word-x, word-y
|
|
Returns:
|
word_signed, word (signed), write only, by value
|
|
word-x:
|
word_signed, word (signed), read only, by reference
|
|
word-y:
|
word_signed, word (signed), read only, by reference
|
|
|
|
MTH$JISIGN
|
|
Longword Transfer of Sign of Y to Sign of X Routine
|
|
Format:
|
MTH$JISIGN longwrd-x, longwrd-y
|
|
Returns:
|
longword_signed, longword (signed), write only, by reference
|
|
longwrd-x:
|
longword_signed, longword (signed), read only, by reference
|
|
longwrd-y:
|
longword_signed, longword (signed), read only, by reference
|
|
|
|
MTH$SNGL
|
|
Convert D-floating to F-floating (Rounded) Routine
|
|
Format:
|
MTH$SNGL d-floating
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
d-floating:
|
floating_point, D_floating, read only, by reference
|
|
|
|
MTH$SNGLG
|
|
Convert G-floating to F-floating (Rounded) Routine
|
|
Format:
|
MTH$SNGLG g-floating
|
|
Returns:
|
floating_point, F_floating, write only, by value
|
|
g-floating:
|
floating_point, G_floating, read only, by reference
|
|