! fmax(x,y) cases
! First some easy integer cases.
3>	ALL	1	1	OK	1
3>	ALL	1	2	OK	2
3>	ALL	2	1	OK	2
3>	ALL	2	2	OK	2
3>	ALL	2	-2	OK	2
3>	ALL	5	-5	OK	5
3>	ALL	1	7	OK	7
3>	ALL	5	-1	OK	5
3>	ALL	2	-5	OK	2
3>	ALL	5	5	OK	5
3>	ALL	5	-0	OK	5
3>	ALL	5	+0	OK	5
! Infinity vs Infinity.
3>	ALL	H	H	OK	H	always equal
3>	ALL	-H 	-H	OK	-H	always equal
3>	ALL	H	-H	OK	H
3>	ALL	-H	H	OK	H
! Infinity vs huge.
3>	ALL	H	Hm1	OK	H
3>	ALL	H	-Hm1	OK	H
3>	ALL	-H	Hm1	OK	Hm1
3>	ALL	-H	-Hm1	OK	-Hm1
3>	ALL	H	Hd1	OK	H
3>	ALL	H	-Hd1	OK	H
3>	ALL	-H	Hd1	OK	Hd1
3>	ALL	-H	-Hd1	OK	-Hd1
3>	ALL	Hm1	H	OK	H
3>	ALL	Hm1	-H	OK	Hm1
3>	ALL	-Hm1	H	OK	H
3>	ALL	-Hm1	-H	OK	-Hm1
! Infinity vs 0.
3>	ALL	H	0	OK	H
3>	ALL	H	-0	OK	H
3>	ALL	-H	0	OK	0
3>	ALL	-H	-0	OK	-0
3>	ALL	0	H	OK	H
3>	ALL	-0	H	OK	H
3>	ALL	0	-H	OK	0
3>	ALL	-0	-H	OK	-0
! Infinity vs denormalized.
3>	ALL	H	Ed1	OK	H
3>	ALL	-H	Ed1	OK	Ed1
3>	ALL	H	-Ed1	OK	H
3>	ALL	-H	-Ed1	OK	-Ed1
3>	ALL	H	0i1	OK	H
3>	ALL	-H	0i1	OK	0i1
3>	ALL	H	-0i1	OK	H
3>	ALL	-H	-0i1	OK	-0i1
3>	ALL	Ed1	H	OK	H
3>	ALL	Ed1	-H	OK	Ed1
3>	ALL	-Ed1	H	OK	H
3>	ALL	-Ed1	-H	OK	-Ed1
! Zero vs finite -- watch that sign of 0 is meaningless.
3>	ALL	0	Hm1	OK	Hm1
3>	ALL	-0	Hm1	OK	Hm1
3>	ALL	-Hm1	0	OK	0
3>	ALL	-Hm1	-0	OK	-0
3>	ALL	1	-0	OK	1
3>	ALL	-1	-0	OK	-0
3>	ALL	0	1 	OK	1
3>	ALL	-0	-1	OK	-0
! Zero vs denormalized.
3>	ALL	0	Ed1	OK	Ed1
3>	ALL	-0	Ed1	OK	Ed1
3>	ALL	0	-Ed1	OK	0
3>	ALL	-0	-Ed1	OK	-0
3>	ALL	0	0i1	OK	0i1
3>	ALL	-0	0i1	OK	0i1
3>	ALL	0	-0i1	OK	0
3>	ALL	-0	-0i1	OK	-0
3>	ALL	Ed1	0	OK	Ed1
3>	ALL	Ed1	-0	OK	Ed1
3>	ALL	-Ed1	0	OK	0
3>	ALL	-Ed1	-0	OK	-0
! Zero vs tiny -- just in case.
3>	 ALL   -0   -E	 OK	  -0
3>	 ALL   E   0   OK   E
3>	 ALL   0   -E   OK	 0
3>	 ALL   -E   0   OK	 0
! Zero vs Zero --- implementation-dependent.
3>	 ALL   0   -0   OK	 0
3>	 ALL   -0   0   OK	 -0
3>	 ALL   0   0   OK	 0
3>	 ALL   -0   -0   OK	 -0
! Big cancellations.
3>	 ALL   Hm1	 Hm1   OK   Hm1
3>	 ALL   -Hm1	  -Hm1	 OK	  -Hm1
3>	 ALL   Hm1d2   Hm1d2   OK   Hm1d2
3>	 ALL   -Hm1d2   -Hm1d2	 OK	  -Hm1d2
3>	 ALL   Hd1	 Hd1   OK   Hd1
3>	 ALL   -Hd1	  -Hd1	 OK	  -Hd1
! Medium cancellations.
3>	 ALL   1   1   OK   1
3>	 ALL   1m1	 1m1   OK   1m1
3>	 ALL   3   3   OK   3
3>	 ALL   E   E   OK   E
3>	 ALL   Hm2	 Hm2   OK   Hm2
! Tiny cancellations -- might have underflowed.
3>	 ALL   Ed1	 Ed1   OK   Ed1
3>	 ALL   -Ed1	  -Ed1	 OK	  -Ed1
3>	 ALL   0i4	 0i4   OK   0i4
3>	 ALL   -0i4	  -0i4	 OK	  -0i4
3>	 ALL   0i1	 0i1   OK   0i1
3>	 ALL   -0i1	  -0i1	 OK	  -0i1
! Doublings.
3>	 ALL   Hm1	 -Hm1   OK	 Hm1
3>	 ALL   -Hm1d2   Hm1d2   OK	 Hm1d2
3>	 ALL   1   -1   OK	 1
3>	 ALL   -3   3   OK	 3
3>	 ALL   E   -E   OK	 E
3>	 ALL   -E   E   OK	 E
3>	 ALL   Ed4	 -Ed4   OK	 Ed4
3>	 ALL   -Ed1	  Ed1   OK	 Ed1
3>	 ALL   0i1	 -0i1   OK	 0i1
3>	 ALL   -0i1	  0i1   OK	 0i1
! Cancellation with diff in LSB
! Difference is in last place of larger number.
! Medium numbers...
3>	 ALL   1i1	 1	 OK	  1i1
3>	 ALL   -1i1	  -1   OK   -1
3>	 ALL   1i1	 1i2   OK   1i2
3>	 ALL   -1i1	  -1i2	 OK	  -1i1
3>	 ALL   2   2i1	 OK	  2i1
3>	 ALL   -2   -2i1   OK   -2
3>	 ALL   2i4	 2i3   OK   2i4
3>	 ALL   -2i4	  -2i3	 OK	  -2i3
3>	 ALL   4d1	 4d2   OK   4d1
3>	 ALL   -4d1	  -4d2	 OK	  -4d2
3>	 ALL   2d4	 2d3   OK   2d3
3>	 ALL   -2d4	  -2d3	 OK	  -2d4
! Huge numbers...
3>	 ALL   Hm1i1   Hm1	 OK	  Hm1i1
3>	 ALL   -Hm1i1   -Hm1   OK   -Hm1
3>	 ALL   Hm1i1   Hm1i2   OK   Hm1i2
3>	 ALL   -Hm1i1   -Hm1i2	 OK	  -Hm1i1
3>	 ALL   Hm2	 Hm2i1	 OK	  Hm2i1
3>	 ALL   -Hm2	  -Hm2i1   OK   -Hm2
3>	 ALL   Hm2i4   Hm2i3   OK   Hm2i4
3>	 ALL   -Hm2i4   -Hm2i3	 OK	  -Hm2i3
3>	 ALL   Hm2d1   Hm2d2   OK   Hm2d1
3>	 ALL   -Hm2d1   -Hm2d2	 OK	  -Hm2d2
3>	 ALL   -Hd2	  -Hd1	 OK	  -Hd2
3>	 ALL   Hd2	 Hd1   OK   Hd1
! Tiny numbers...
3>	 ALL   -Ei1	  -E   OK   -E
3>	 ALL   Ei1	 E	 OK	  Ei1
3>	 ALL   -Ed1	  -E   OK   -Ed1
3>	 ALL   Ed1	 E	 OK	  E
3>	 ALL   Ei1	 Ei2   OK   Ei2
3>	 ALL   -Ei1	  -Ei2	 OK	  -Ei1
3>	 ALL   Ed1	 Ed2   OK   Ed1
3>	 ALL   -Ed1	  -Ed2	 OK	  -Ed2
3>	 ALL   Ed3	 Ed2   OK   Ed2
3>	 ALL   -Ed3	  -Ed2	 OK	  -Ed3
3>	 ALL   0i2	 0i1   OK   0i2
3>	 ALL   -0i2	  -0i1	 OK	  -0i1
3>	 ALL   0i3	 0i2   OK   0i3
3>	 ALL   -0i3	  -0i2	 OK	  -0i2
! Normalize from round bit -- set up tests so that operands have
! exponents differing by 1 unit.
! Medium numbers...
3>	 ALL   2   2d1	 OK	  2
3>	 ALL   -2   -2d1   OK   -2d1
3>	 ALL   -2d1	  -2   OK   -2d1
3>	 ALL   2d1	 2	 OK	  2
3>	 ALL   4i1	 4d1   OK   4i1
3>	 ALL   -4i1	  -4d1	 OK	  -4d1
3>	 ALL   4d1	 4i2   OK   4i2
3>	 ALL   -4d1	  -4i2	 OK	  -4d1
3>	 ALL   2i1	 1i1   OK   2i1
3>	 ALL   -2i1	  -1i1	 OK	  -1i1
3>	 ALL   2i2	 1i1   OK   2i2
3>	 ALL   -2i2	  -1i1	 OK	  -1i1
3>	 ALL   2i2	 1i3   OK   2i2
3>	 ALL   -2i2	  -1i3	 OK	  -1i3
! Huge numbers...
3>	 ALL   Hm2	 Hm2d1	 OK	  Hm2
3>	 ALL   -Hm2	  -Hm2d1   OK   -Hm2d1
3>	 ALL   -Hm1d1   -Hm1   OK   -Hm1d1
3>	 ALL   Hm1d1   Hm1	 OK	  Hm1
3>	 ALL   Hm4i1   Hm4d1   OK   Hm4i1
3>	 ALL   -Hm4i1   -Hm4d1	 OK	  -Hm4d1
3>	 ALL   Hm2d1   Hm2i2   OK   Hm2i2
3>	 ALL   -Hm2d1   -Hm2i2	 OK	  -Hm2d1
3>	 ALL   Hm2i1   Hm1i1   OK   Hm1i1
3>	 ALL   -Hm2i1   -Hm1i1	 OK	  -Hm2i1
3>	 ALL   Hm1i2   Hm2i1   OK   Hm1i2
3>	 ALL   -Hm1i2   -Hm2i1	 OK	  -Hm2i1
3>	 ALL   Hm2i2   Hm3i3   OK   Hm2i2
3>	 ALL   -Hm2i2   -Hm3i3	 OK	  -Hm3i3
! Tiny numbers...
3>	 ALL   Ep1	 Ep1d1	 OK	  Ep1
3>	 ALL   -Ep1	  -Ep1d1   OK   -Ep1d1
3>	 ALL   -Ep1d1   -Ep1   OK   -Ep1d1
3>	 ALL   Ep1d1   Ep1	 OK	  Ep1
3>	 ALL   Ep1i1   Ep1d1   OK   Ep1i1
3>	 ALL   -Ep1i1   -Ep1d1	 OK	  -Ep1d1
3>	 ALL   Ep2	 Ep2d1	 OK	  Ep2
3>	 ALL   -Ep2	  -Ep2d1   OK   -Ep2d1
3>	 ALL   -Ep2d1   -Ep2   OK   -Ep2d1
3>	 ALL   Ep2d1   Ep2	 OK	  Ep2
3>	 ALL   Ep2i1   Ep2d1   OK   Ep2i1
3>	 ALL   -Ep2i1   -Ep2d1	 OK	  -Ep2d1
3>	 ALL   Ep1d1   Ep1i2   OK   Ep1i2
3>	 ALL   -Ep1d1   -Ep1i2	 OK	  -Ep1d1
3>	 ALL   Ep1d1   Ep1i4   OK   Ep1i4
3>	 ALL   -Ep1d1   -Ep1i4	 OK	  -Ep1d1
3>	 ALL   Ep1i1   Ei1	 OK	  Ep1i1
3>	 ALL   -Ep1i1   -Ei1   OK   -Ei1
3>	 ALL   Ep1i2   Ei1	 OK	  Ep1i2
3>	 ALL   -Ep1i2   -Ei1   OK   -Ei1
3>	 ALL   Ep2i2   Ep1i3   OK   Ep2i2
3>	 ALL   -Ep2i2   -Ep1i3	 OK	  -Ep1i3
!
! Add magnitude
! cases where one operand is off in sticky -- rounding
! perhaps to an overflow.
! Huge vs medium
3>	 ALL   Hm1	 1	 OK	  Hm1
3>	 ALL   -Hm1	  -1   OK   -1
3>	 ALL   Hm1d1   -1   OK	 Hm1d1
3>	 ALL   Hm1d1   1   OK   Hm1d1
3>	 ALL   -Hm1d1   1   OK	 1
3>	 ALL   -Hm1d1   -1	 OK	  -1
3>	 ALL   Hd1	 1	 OK	  Hd1
3>	 ALL   Hd1	 -1	  OK   Hd1
3>	 ALL   -Hd1	  1	  OK   1
3>	 ALL   -Hd1	  -1   OK   -1
3>	 ALL   Hd2	 -1	  OK   Hd2
3>	 ALL   Hd2	 1	 OK	  Hd2
3>	 ALL   -Hd2	  1	  OK   1
3>	 ALL   -Hd2	  -1   OK   -1
! Huge vs tiny.
3>	 ALL   0i1	 Hm1   OK   Hm1
3>	 ALL   0i1	 -Hm1   OK	 0i1
3>	 ALL   -0i1	  Hm1   OK	 Hm1
3>	 ALL   -0i1	  -Hm1	 OK	  -0i1
3>	 ALL   0i1	 Hm1d1	 OK	  Hm1d1
3>	 ALL   0i1	 -Hm1d1	  OK   0i1
3>	 ALL   -0i1	  Hm1d1	  OK   Hm1d1
3>	 ALL   -0i1	  -Hm1d1   OK  -0i1
3>	 ALL   0i1	 Hd1   OK   Hd1
3>	 ALL   0i1	 -Hd1   OK	 0i1
3>	 ALL   -0i1	  Hd1   OK	 Hd1
3>	 ALL   -0i1	  -Hd1	 OK	 -0i1
3>	 ALL   0i1	 Hd2   OK   Hd2
3>	 ALL   0i1	 -Hd2   OK	 0i1
3>	 ALL   -0i1	  Hd2   OK	 Hd2
3>	 ALL   -0i1	  -Hd2	 OK	 -0i1
! Medium vs tiny.
3>	 ALL   0i1	 1	 OK	   1
3>	 ALL   0i1	 -1	  OK   0i1
3>	 ALL   -0i1	  1	  OK   1
3>	 ALL   -0i1	  -1   OK  -0i1
3>	 ALL   0i1	 1d1   OK  1d1
3>	 ALL   0i1	 -1d1  OK  0i1
3>	 ALL   -0i1	  1d1  OK  1d1
3>	 ALL   -0i1	 -1d1  OK	-0i1
3>	 ALL   0i1	 2d1   OK   2d1
3>	 ALL   0i1	 -2d1   OK	0i1
3>	 ALL   -0i1	  2d1   OK	2d1
3>	 ALL   -0i1	 -2d1   OK	-0i1
3>	 ALL   0i1	 2d2   OK   2d2
3>	 ALL   0i1	 -2d2   OK	0i1
3>	 ALL   -0i1	  2d2   OK	2d2
3>	 ALL   -0i1	 -2d2	OK	-0i1
!
! Magnitude subtract when an operand is in the sticky bit.
! The interesting cases will arise when directed rounding
! forces a nonzero cancellation.
! Huge and medium.
3>	 ALL   Hm1	 1	 OK	  Hm1
3>	 ALL   Hm1	 -1	  OK   Hm1
3>	 ALL   -Hm1	  1	  OK   1
3>	 ALL   -Hm1	  -1   OK  -1
3>	 ALL   Hm1d1   1   OK   Hm1d1
3>	 ALL   Hm1d1   -1   OK	Hm1d1
3>	 ALL   -Hm1d1   1   OK	1
3>	 ALL   -Hm1d1  -1	OK	-1
3>	 ALL   Hd1	 1	 OK	  Hd1
3>	 ALL   Hd1	 -1	  OK  Hd1
3>	 ALL   -Hd1	  1	  OK  1
3>	 ALL   -Hd1	  -1  OK  -1
3>	 ALL   Hd2	 1	 OK	  Hd2
3>	 ALL   Hd2	 -1	  OK  Hd2
3>	 ALL   -Hd2	  1	  OK  1
3>	 ALL   -Hd2	  -1  OK  -1
! Huge and tiny.
3>	 ALL   Hd1	 0i1   OK   Hd1
3>	 ALL   Hd1	 -0i1   OK	Hd1
3>	 ALL   -Hd1	  0i1   OK	0i1
3>	 ALL   -Hd1	  -0i1	OK	-0i1
3>	 ALL   0i3	 Hm1   OK   Hm1
3>	 ALL   -0i3	  Hm1   OK	Hm1
3>	 ALL   0i3	 -Hm1   OK	0i3
3>	 ALL   -0i3	  -Hm1	OK	-0i3
! Medium and tiny.
3>	 ALL   1d1	 0i1   OK   1d1
3>	 ALL   1d1	 -0i1   OK	1d1
3>	 ALL   2d1	 0i1   OK   2d1
3>	 ALL   -2d1	  0i1   OK	0i1
3>	 ALL   0i3	 3	 OK	  3
3>	 ALL   -0i3	  3	  OK   3
3>	 ALL   0i3	 5	 OK	  5
3>	 ALL   0i3	 -5	  OK   0i3
!
! Add magnitude with difference in LSB so, except for denorms,
! round bit is crucial.	 Half-way cases arise.
! Medium cases.
3>	 ALL   1i1	 1	 OK	  1i1
3>	 ALL   1i1	 -1	  OK   1i1
3>	 ALL   -1i1	  1	  OK   1
3>	 ALL   -1i1	  -1   OK   -1
3>	 ALL   -2   2i1	  OK   2i1
3>	 ALL   -2   -2i1   OK  -2
3>	 ALL   2   -2i1	  OK   2
3>	 ALL   2   2i1	 OK	  2i1
3>	 ALL   1   1i3	 OK	  1i3
3>	 ALL   1   -1i3	  OK   1
3>	 ALL   -1   1i3	  OK   1i3
3>	 ALL   -1   -1i3   OK   -1
3>	 ALL   -2i1	  -2i2	 OK	 -2i1
3>	 ALL   -2i1	  2i2   OK	 2i2
3>	 ALL   2i1	 -2i2   OK	 2i1
3>	 ALL   2i1	 2i2   OK   2i2
! Huge cases.
3>	 ALL   Hd2	 Hd1   OK   Hd1
3>	 ALL   Hd2	 -Hd1   OK	 Hd2
3>	 ALL   -Hd2	  Hd1   OK	 Hd1
3>	 ALL   -Hd2	  -Hd1	 OK	 -Hd2
3>	 ALL   Hm1d1   Hm1	 OK	  Hm1
3>	 ALL   Hm1d1   -Hm1	  OK  Hm1d1
3>	 ALL   -Hm1d1   Hm1	  OK   Hm1
3>	 ALL   -Hm1d1   -Hm1   OK  -Hm1d1
3>	 ALL   Hm1i1   Hm1	 OK	  Hm1i1
3>	 ALL   Hm1i1   -Hm1	  OK   Hm1i1
3>	 ALL   -Hm1i1   Hm1	  OK  Hm1
3>	 ALL   -Hm1i1   -Hm1   OK  -Hm1
3>	 ALL   Hm2i1   Hm2	 OK	  Hm2i1
3>	 ALL   Hm2i1   -Hm2	  OK   Hm2i1
3>	 ALL   -Hm2i1   Hm2	  OK   Hm2
3>	 ALL   -Hm2i1   -Hm2   OK  -Hm2
3>	 ALL   Hm1d2   Hm1d1   OK  Hm1d1
3>	 ALL   Hm1d2   -Hm1d1   OK	Hm1d2
3>	 ALL   -Hm1d2   Hm1d1   OK	 Hm1d1
3>	 ALL   -Hm1d2   -Hm1d1	 OK	 -Hm1d2
! NaN operands.  Signaling NaN cases commented out <JPO, 4/30/93>.
3>	ALL	Q	0	OK	0
3>	ALL	Q	-0	OK	-0
3>	ALL	0	Q	OK	0
3>	ALL	-0	Q	OK	-0
3>	ALL	Q	1	OK	1
3>	ALL	Q	-1	OK	-1
3>	ALL	1	Q	OK	1
3>	ALL	-1	Q	OK	-1
3>	ALL	Ed1	 Q		 OK		 Ed1
3>	ALL	-Ed1 Q		 OK		-Ed1
3>	ALL	Q	Ed1	 OK		 Ed1
3>	ALL	Q	-Ed1 OK		 -Ed1
3>	ALL	Q	0i1	  OK	 0i1
3>	ALL	Q	-0i1  OK	 -0i1
3>	ALL	0i1	  Q		  OK	 0i1
3>	ALL	-0i1  Q		  OK	 -0i1
3>	ALL	Q	Hd1	 OK		 Hd1
3>	ALL	Q	-Hd1 OK		 -Hd1
3>	ALL	Hd1	 Q		 OK		Hd1
3>	ALL	-Hd1 Q		 OK		-Hd1
3>	ALL	Q	H	   OK	   H
3>	ALL	Q	-H	   OK	   -H
3>	ALL	H	   Q	   OK	  H
3>	ALL	-H	   Q	   OK	  -H
3>	ALL	Q	Q	OK	Q
!3>	ALL	S	0	i	?
!3>	ALL	S	-0	i	?
!3>	ALL	0	S	i	?
!3>	ALL	-0	S	i	?
!3>	ALL	S	1	i	?
!3>	ALL	S	-1	i	?
!3>	ALL	1	S	i	?
!3>	ALL	-1	S	i	?
!3>	ALL	Ed1	 S		 i		 ?
!3>	ALL	-Ed1 S		 i		 ?
!3>	ALL	S	Ed1	 i		 ?
!3>	ALL	S	-Ed1 i		 ?
!3>	ALL	S	0i1	  i		  ?
!3>	ALL	S	-0i1  i		  ?
!3>	ALL	0i1	  S		  i		  ?
!3>	ALL	-0i1  S		  i		  ?
!3>	ALL	S	Hd1	 i		 ?
!3>	ALL	S	-Hd1 i		 ?
!3>	ALL	Hd1	 S		 i		 ?
!3>	ALL	-Hd1 S		 i		 ?
!3>	ALL	S	H	   i	   ?
!3>	ALL	S	-H	   i	   ?
!3>	ALL	H	   S	   i	   ?
!3>	ALL	-H	   S	   i	   ?
!3>	ALL	Q	S	i	?
!3>	ALL	S	Q	i	?
!3>	ALL	S	S	i	?
