
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 Ffloating, D for Dfloating, G for
Gfloating

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+(n1)*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
floatingpoint 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+(n1)*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
floatingpoint 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 floatingpoint 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+(I1)*INCA) + B(K1+(I1)*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 Ffloating, D for Dfloating, G for
Gfloating

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
floatingpoint 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 floatingpoint 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+(I1)*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(N3, 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(N3, 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 A1 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 A1 Additional MTH$ Routines
Routine Name 

Entry Point Information 
MTH$ABS


Ffloating Absolute Value Routine


Format:

MTH$ABS ffloating


Returns:

floating_point, F_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DABS


Dfloating Absolute Value Routine


Format:

MTH$DABS dfloating


Returns:

floating_point, D_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$GABS


Gfloating Absolute Value Routine


Format:

MTH$GABS gfloating


Returns:

floating_point, G_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$HABS


Hfloating Absolute Value Routine


Format:

MTH$HABS habsval, hfloating


Returns:

None


habsval:

floating_point, H_floating, write only, by reference


hfloating:

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 Ffloating to Dfloating (Exact) Routine


Format:

MTH$DBLE ffloating


Returns:

floating_point, D_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$GDBLE


Convert Ffloating to Gfloating (Exact) Routine


Format:

MTH$GDBLE ffloating


Returns:

floating_point, G_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DIM


Positive Difference of Two Ffloating Parameters Routine


Format:

MTH$DIM ffloating1, ffloating2


Returns:

floating_point, F_floating, write only, by value


ffloating1:

floating_point, F_floating, read only, by reference


ffloating2:

floating_point, F_floating, read only, by reference




MTH$DDIM


Positive Difference of Two Dfloating Parameters Routine


Format:

MTH$DDIM dfloating1, dfloating2


Returns:

floating_point, D_floating, write only, by value


dfloating1:

floating_point, D_floating, read only, by reference


dfloating2:

floating_point, D_floating, read only, by reference




MTH$GDIM


Positive Difference of Two Gfloating Parameters Routine


Format:

MTH$GDIM gfloating1, gfloating2


Returns:

floating_point, G_floating, write only, by value


gfloating1:

floating_point, G_floating, read only, by reference


gfloating2:

floating_point, G_floating, read only, by reference




MTH$HDIM


Positive Difference of Two Hfloating Parameters Routine


Format:

MTH$HDIM hfloating, hfloating1, hfloating2


Returns:

None


hfloating:

floating_point, H_floating, write only, by reference


hfloating1:

floating_point, H_floating, read only, by reference


hfloating2:

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 Ffloating to Word (Truncated) Routine


Format:

MTH$IIFIX ffloating


Returns:

word_signed, word (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$JIFIX


Convert Ffloating to Longword (Truncated) Routine


Format:

MTH$JIFIX ffloating


Returns:

longword_signed, longword (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$FLOATI


Convert Word to Ffloating (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 Dfloating (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 Gfloating (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 Ffloating (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 Dfloating (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 Gfloating (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 Ffloating to Greatest Ffloating Integer Routine


Format:

MTH$FLOOR ffloating


JSB:

MTH$FLOOR_R1 ffloating


Returns:

floating_point, F_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DFLOOR


Convert Dfloating to Greatest Dfloating Integer Routine


Format:

MTH$DFLOOR dfloating


JSB:

MTH$DFLOOR_R3 dfloating


Returns:

floating_point, D_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$GFLOOR


Convert Gfloating to Greatest Gfloating Integer Routine


Format:

MTH$GFLOOR gfloating


JSB:

MTH$GFLOOR_R3 gfloating


Returns:

floating_point, G_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$HFLOOR


Convert Hfloating to Greatest Hfloating Integer Routine


Format:

MTH$HFLOOR maxhfloat, hfloating


JSB:

MTH$HFLOOR_R7 hfloating


Returns:

None


maxhfloat:

floating_point, H_floating, write only, by reference


hfloating:

floating_point, H_floating, read only, by reference




MTH$AINT


Convert Ffloating to Truncated Ffloating Routine


Format:

MTH$AINT ffloating


JSB:

MTH$AINT_R2 ffloating


Returns:

floating_point, F_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DINT


Convert Dfloating to Truncated Dfloating Routine


Format:

MTH$DINT dfloating


JSB:

MTH$DINT_R4 dfloating


Returns:

floating_point, D_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$IIDINT


Convert Dfloating to Word (Truncated) Routine


Format:

MTH$IIDINT dfloating


Returns:

word_signed, word (signed), write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$JIDINT


Convert Dfloating to Longword (Truncated) Routine


Format:

MTH$JIDINT dfloating


Returns:

longword_signed, longword (signed), write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$GINT


Convert Gfloating to Truncated Gfloating Routine


Format:

MTH$GINT gfloating


JSB:

MTH$GINT_R4 gfloating


Returns:

floating_point, G_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$IIGINT


Convert Gfloating to Word (Truncated) Routine


Format:

MTH$IIGINT gfloating


Returns:

word_signed, word (signed), write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$JIGINT


Convert Gfloating to Longword (Truncated) Routine


Format:

MTH$JIGINT gfloating


Returns:

longword_signed, longword (signed), write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$HINT


Convert Hfloating to Truncated Hfloating Routine


Format:

MTH$HINT trunchflt, hfloating


JSB:

MTH$HINT_R8 hfloating


Returns:

None


trunchflt:

floating_point, H_floating, write only, by reference


hfloating:

floating_point, H_floating, read only, by reference




MTH$IIHINT


Convert Hfloating to Word (Truncated) Routine


Format:

MTH$IIHINT hfloating


Returns:

word_signed, word (signed), write only, by value


hfloating:

floating_point, H_floating, read only, by reference




MTH$JIHINT


Convert Hfloating to Longword (Truncated) Routine


Format:

MTH$JIHINT hfloating


Returns:

longword_signed, longword (signed), write only, by value


hfloating:

floating_point, H_floating, read only, by reference




MTH$IINT


Convert Ffloating to Word (Truncated) Routine


Format:

MTH$IINT ffloating


Returns:

word_signed, word (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$JINT


Convert Ffloating to Longword (Truncated) Routine


Format:

MTH$JINT ffloating


Returns:

longword_signed, longword (signed), write only, by value


ffloating:

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


Ffloating 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


Ffloating 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


Ffloating Maximum of N Ffloating Parameters Routine


Format:

MTH$AMAX1 ffloating, ...


Returns:

floating_point, F_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DMAX1


Dfloating Maximum of N Dfloating Parameters Routine


Format:

MTH$DMAX1 dfloating, ...


Returns:

floating_point, D_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$GMAX1


Gfloating Maximum of N Gfloating Parameters Routine


Format:

MTH$GMAX1 gfloating, ...


Returns:

floating_point, G_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$HMAX1


Hfloating Maximum of N Hfloating Parameters Routine


Format:

MTH$HMAX1 hfloatmax, hfloating, ...


Returns:

None


hfloatmax:

floating_point, H_floating, write only, by reference


hfloating:

floating_point, H_floating, read only, by reference




MTH$IMAX1


Word Maximum of N Ffloating Parameters Routine


Format:

MTH$IMAX1 ffloating, ...


Returns:

word_signed, word (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$JMAX1


Longword Maximum of N Ffloating Parameters Routine


Format:

MTH$JMAX1 ffloating, ...


Returns:

longword_signed, longword (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$AIMIN0


Ffloating 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


Ffloating 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


Ffloating Minimum of N Ffloating Parameters Routine


Format:

MTH$AMIN1 ffloating, ...


Returns:

floating_point, F_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DMIN1


Dfloating Minimum of N Dfloating Parameters Routine


Format:

MTH$DMIN1 dfloating, ...


Returns:

floating_point, D_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$GMIN1


Gfloating Minimum of N Gfloating Parameters Routine


Format:

MTH$GMIN1 gfloating, ...


Returns:

floating_point, G_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$HMIN1


Hfloating Minimum of N Hfloating Parameters Routine


Format:

MTH$HMIN1 hfloatmax, hfloating, ...


Returns:

None


hfloatmax:

floating_point, H_floating, write only, by reference


hfloating:

floating_point, H_floating, read only, by reference




MTH$IMIN1


Word Minimum of N Ffloating Parameters Routine


Format:

MTH$IMIN1 ffloating, ...


Returns:

word_signed, word (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$JMIN1


Longword Minimum of N Ffloating Parameters Routine


Format:

MTH$JMIN1 ffloating, ...


Returns:

longword_signed, longword (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$AMOD


Remainder from Division of Two Ffloating 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 Dfloating 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 Gfloating 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 Hfloating Parameters Routine


Format:

MTH$HMOD hmod, dividend, divisor


Returns:

None


hmod:

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 Ffloating to Nearest Ffloating Integer Routine


Format:

MTH$ANINT ffloating


Returns:

floating_point, F_floating, write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$DNINT


Convert Dfloating to Nearest Dfloating Integer Routine


Format:

MTH$DNINT dfloating


Returns:

floating_point, D_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$IIDNNT


Convert Dfloating to Nearest Word Integer Routine


Format:

MTH$IIDNNT dfloating


Returns:

word_signed, word (signed), write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$JIDNNT


Convert Dfloating to Nearest Longword Integer Routine


Format:

MTH$JIDNNT dfloating


Returns:

longword_signed, longword (signed), write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$GNINT


Convert Gfloating to Nearest Gfloating Integer Routine


Format:

MTH$GNINT gfloating


Returns:

floating_point, G_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$IIGNNT


Convert Gfloating to Nearest Word Integer Routine


Format:

MTH$IIGNNT gfloating


Returns:

word_signed, word (signed), write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$JIGNNT


Convert Gfloating to Nearest Longword Integer Routine


Format:

MTH$JIGNNT gfloating


Returns:

longword_signed, longword (signed), write only, by value


gfloating:

floating_point, G_floating, read only, by reference




MTH$HNINT


Convert Hfloating to Nearest Hfloating Integer Routine


Format:

MTH$HNINT nearsthflt, hfloating


Returns:

None


nearsthflt:

floating_point, H_floating, write only, by reference


hfloating:

floating_point, H_floating, read only, by reference




MTH$IIHNNT


Convert Hfloating to Nearest Word Integer Routine


Format:

MTH$IIHNNT hfloating


Returns:

word_signed, word (signed), write only, by value


hfloating:

floating_point, H_floating, read only, by reference




MTH$JIHNNT


Convert Hfloating to Nearest Longword Integer Routine


Format:

MTH$JIHNNT hfloating


Returns:

longword_signed, longword (signed), write only, by value


hfloating:

floating_point, H_floating, read only, by reference




MTH$ININT


Convert Ffloating to Nearest Word Integer Routine


Format:

MTH$ININT ffloating


Returns:

word_signed, word (signed), write only, by value


ffloating:

floating_point, F_floating, read only, by reference




MTH$JNINT


Convert Ffloating to Nearest Longword Integer Routine


Format:

MTH$JNINT ffloating


Returns:

longword_signed, longword (signed), write only, by value


ffloating:

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


Dfloating Product of Two Ffloating Parameters Routine


Format:

MTH$DPROD ffloating1, ffloating2


Returns:

floating_point, D_floating, write only, by value


ffloating1:

floating_point, F_floating, read only, by reference


ffloating2:

floating_point, F_floating, read only, by reference




MTH$GPROD


Gfloating Product of Two Ffloating Parameters Routine


Format:

MTH$GPROD ffloating1, ffloating2


Returns:

floating_point, G_floating, write only, by value


ffloating1:

floating_point, F_floating, read only, by reference


ffloating2:

floating_point, F_floating, read only, by reference




MTH$SGN


Ffloating Sign Function


Format:

MTH$SGN ffloating


Returns:

longword_signed, longword (signed), write only, by reference


ffloating:

floating_point, F_floating, read only, by reference




MTH$SGN


Dfloating Sign Function


Format:

MTH$SGN dfloating


Returns:

longword_signed, longword (signed), write only, by reference


dfloating:

floating_point, D_floating, read only, by reference




MTH$IISHFT


Bitwise Shift of Word Routine


Format:

MTH$IISHFT word, shiftcnt


Returns:

word_unsigned, word (unsigned), write only, by value


word:

word_unsigned, word (unsigned), read only, by reference


shiftcnt:

word_signed, word (signed), read only, by reference




MTH$JISHFT


Bitwise Shift of Longword Routine


Format:

MTH$JISHFT longword, shiftcnt


Returns:

longword_unsigned, longword (unsigned), write only, by value


longword:

longword_unsigned, longword (unsigned), read only, by reference


shiftcnt:

longword_signed, longword (signed), read only, by reference




MTH$SIGN


Ffloating Transfer of Sign of Y to Sign of X Routine


Format:

MTH$SIGN ffloatx, ffloaty


Returns:

floating_point, F_floating, write only, by value


ffloatx:

floating_point, F_floating, read only, by reference


ffloaty:

floating_point, F_floating, read only, by reference




MTH$DSIGN


Dfloating Transfer of Sign of Y to Sign of X Routine


Format:

MTH$DSIGN dfloatx, dfloaty


Returns:

floating_point, D_floating, write only, by value


dfloatx:

floating_point, D_floating, read only, by reference


dfloaty:

floating_point, D_floating, read only, by reference




MTH$GSIGN


Gfloating Transfer of Sign of Y to Sign of X Routine


Format:

MTH$GSIGN gfloatx, gfloaty


Returns:

floating_point, G_floating, write only, by value


gfloatx:

floating_point, G_floating, read only, by reference


gfloaty:

floating_point, G_floating, read only, by reference




MTH$HSIGN


Hfloating Transfer of Sign of Y to Sign of X Routine


Format:

MTH$HSIGN hresult, hfloatx, hfloaty


Returns:

None


hresult:

floating_point, H_floating, write only, by reference


hfloatx:

floating_point, H_floating, read only, by reference


hfloaty:

floating_point, H_floating, read only, by reference




MTH$IISIGN


Word Transfer of Sign of Y to Sign of X Routine


Format:

MTH$IISIGN wordx, wordy


Returns:

word_signed, word (signed), write only, by value


wordx:

word_signed, word (signed), read only, by reference


wordy:

word_signed, word (signed), read only, by reference




MTH$JISIGN


Longword Transfer of Sign of Y to Sign of X Routine


Format:

MTH$JISIGN longwrdx, longwrdy


Returns:

longword_signed, longword (signed), write only, by reference


longwrdx:

longword_signed, longword (signed), read only, by reference


longwrdy:

longword_signed, longword (signed), read only, by reference




MTH$SNGL


Convert Dfloating to Ffloating (Rounded) Routine


Format:

MTH$SNGL dfloating


Returns:

floating_point, F_floating, write only, by value


dfloating:

floating_point, D_floating, read only, by reference




MTH$SNGLG


Convert Gfloating to Ffloating (Rounded) Routine


Format:

MTH$SNGLG gfloating


Returns:

floating_point, F_floating, write only, by value


gfloating:

floating_point, G_floating, read only, by reference

