! ! Nextafter Test Vectors: ! ! From 1. 3N ALL 1 2 OK 1i1 3N ALL 1 0 OK 1d1 3N ALL 1 -0 OK 1d1 3N ALL 1 1i1 OK 1i1 3N ALL 1 1d1 OK 1d1 3N ALL 1 Hm1 OK 1i1 3N ALL 1 Hd1 OK 1i1 3N ALL 1 1 OK 1 3N ALL 1 -Hd1 OK 1d1 3N ALL 1 E OK 1d1 3N ALL 1 Ed1 OK 1d1 3N ALL 1 0i1 OK 1d1 3N ALL 1 -1 OK 1d1 3N ALL 1 -H OK 1d1 3N ALL 1 H OK 1i1 ! From -1. 3N ALL -1 -2 OK -1i1 3N ALL -1 0 OK -1d1 3N ALL -1 -0 OK -1d1 3N ALL -1 -1i1 OK -1i1 3N ALL -1 -1d1 OK -1d1 3N ALL -1 Hm1 OK -1d1 3N ALL -1 Hd1 OK -1d1 3N ALL -1 1 OK -1d1 3N ALL -1 -Hd1 OK -1i1 3N ALL -1 E OK -1d1 3N ALL -1 Ed1 OK -1d1 3N ALL -1 0i1 OK -1d1 3N ALL -1 -1 OK -1 3N ALL -1 H OK -1d1 3N ALL -1 -H OK -1i1 ! From 1 + 1ulp of 1. 3N ALL 1i1 2 OK 1i2 3N ALL 1i1 0 OK 1 3N ALL 1i1 1i2 OK 1i2 3N ALL 1i1 1 OK 1 3N ALL 1i1 Hm1 OK 1i2 3N ALL 1i1 Hd1 OK 1i2 3N ALL 1i1 -1i1 OK 1 3N ALL 1i1 -Hd1 OK 1 3N ALL 1i1 E OK 1 3N ALL 1i1 Ed1 OK 1 3N ALL 1i1 0i1 OK 1 3N ALL 1i1 1i1 OK 1i1 3N ALL 1i1 H OK 1i2 3N ALL 1i1 -H OK 1 ! From 1 - 1ulp- of 1. 3N ALL 1d1 2 OK 1 3N ALL 1d1 0 OK 1d2 3N ALL 1d1 1 OK 1 3N ALL 1d1 1d2 OK 1d2 3N ALL 1d1 Hm1 OK 1 3N ALL 1d1 Hd1 OK 1 3N ALL 1d1 -1d1 OK 1d2 3N ALL 1d1 -Hd1 OK 1d2 3N ALL 1d1 E OK 1d2 3N ALL 1d1 Ed1 OK 1d2 3N ALL 1d1 0i1 OK 1d2 3N ALL 1d1 1d1 OK 1d1 3N ALL 1d1 H OK 1 3N ALL 1d1 -H OK 1d2 ! From largest power of 2. 3N ALL Hm1 Hm2 OK Hm1d1 3N ALL Hm1 0 OK Hm1d1 3N ALL Hm1 Hm1d1 OK Hm1d1 3N ALL Hm1 Hm1 OK Hm1 3N ALL Hm1 Hd1 OK Hm1i1 3N ALL Hm1 -Hm1 OK Hm1d1 3N ALL Hm1 -Hd1 OK Hm1d1 3N ALL Hm1 E OK Hm1d1 3N ALL Hm1 Ed1 OK Hm1d1 3N ALL Hm1 0i1 OK Hm1d1 3N ALL Hm1 H OK Hm1i1 3N ALL Hm1 -H OK Hm1d1 ! From largest number. 3N ALL Hd1 Hm1 OK Hd2 3N ALL Hd1 0 OK Hd2 3N ALL Hd1 -0 OK Hd2 3N ALL Hd1 Hd2 OK Hd2 3N ALL Hd1 Hd1 OK Hd1 3N ALL Hd1 -Hd1 OK Hd2 3N ALL Hd1 E OK Hd2 3N ALL Hd1 Ed1 OK Hd2 3N ALL Hd1 0i1 OK Hd2 3N ALL Hd1 H ox H 3N ALL Hd1 -H OK Hd2 3N ALL -Hd1 -H ox -H 3N ALL -Hd1 H OK -Hd2 ! From smallest normalized number. 3N ALL E 2 OK Ei1 3N ALL E 0 xu Ed1 3N ALL E -0 xu Ed1 3N ALL E Ei1 OK Ei1 3N ALL E Ed1 xu Ed1 3N ALL E Hm1 OK Ei1 3N ALL E Hd1 OK Ei1 3N ALL E -E xu Ed1 3N ALL E -Hd1 xu Ed1 3N ALL E E OK E 3N ALL E 0i1 xu Ed1 3N ALL E H OK Ei1 3N ALL E -H xu Ed1 ! From largest denormalized number. 3N ALL Ed1 2 OK E 3N ALL Ed1 0 xu Ed2 3N ALL Ed1 E OK E 3N ALL Ed1 Ed2 xu Ed2 3N ALL Ed1 Hm1 OK E 3N ALL Ed1 Hd1 OK E 3N ALL Ed1 -Ed1 xu Ed2 3N ALL Ed1 -Hd1 xu Ed2 3N ALL Ed1 Ed1 OK Ed1 3N ALL Ed1 0i1 xu Ed2 3N ALL Ed1 H OK E 3N ALL Ed1 -H xu Ed2 3N ALL -Ed1 -2 OK -E 3N ALL -Ed1 -0 xu -Ed2 3N ALL -Ed1 -E OK -E 3N ALL -Ed1 -Ed2 xu -Ed2 3N ALL -Ed1 -Hm1 OK -E 3N ALL -Ed1 -Hd1 OK -E 3N ALL -Ed1 Ed1 xu -Ed2 3N ALL -Ed1 Hd1 xu -Ed2 3N ALL -Ed1 -Ed1 OK -Ed1 3N ALL -Ed1 -0i1 xu -Ed2 3N ALL -Ed1 -H OK -E 3N ALL -Ed1 H xu -Ed2 ! From smallest denormalized number. 3N ALL 0i1 2 xu 0i2 3N ALL 0i1 0 xu 0 3N ALL 0i1 0i2 xu 0i2 3N ALL 0i1 Hm1 xu 0i2 3N ALL -0i1 -0 xu -0 3N ALL -0i1 -0i2 xu -0i2 3N ALL -0i1 -Hm1 xu -0i2 3N ALL 0i1 Hd1 xu 0i2 3N ALL 0i1 0 xu 0 3N ALL 0i1 -0 xu 0 3N ALL -0i1 -0 xu -0 3N ALL -0i1 0 xu -0 3N ALL 0i1 -Hd1 xu 0 3N ALL 0i1 E xu 0i2 3N ALL 0i1 Ed1 xu 0i2 3N ALL 0i1 0i1 OK 0i1 3N ALL 0i1 H xu 0i2 3N ALL 0i1 -H xu 0 ! From 0. Per NCEG, changed (0,-0) result . 3N ALL 0 2 xu 0i1 3N ALL 0 0 OK 0 3N ALL 0 -0 OK -0 3N ALL 0 0i1 xu 0i1 3N ALL 0 -0i1 xu -0i1 3N ALL 0 Hm1 xu 0i1 3N ALL 0 Hd1 xu 0i1 3N ALL 0 -Hd1 xu -0i1 3N ALL 0 E xu 0i1 3N ALL 0 Ed1 xu 0i1 3N ALL 0 H xu 0i1 3N ALL 0 -H xu -0i1 ! From -0. Per NCEG, changed (-0,0) result . 3N ALL -0 2 xu 0i1 3N ALL -0 -0 OK -0 3N ALL -0 0 OK 0 3N ALL -0 0i1 xu 0i1 3N ALL -0 -0i1 xu -0i1 3N ALL -0 Hm1 xu 0i1 3N ALL -0 Hd1 xu 0i1 3N ALL -0 -Hd1 xu -0i1 3N ALL -0 E xu 0i1 3N ALL -0 Ed1 xu 0i1 3N ALL -0 H xu 0i1 3N ALL -0 -H xu -0i1 ! From infinity. 3N ALL H 2 OK Hd1 3N ALL H 0 OK Hd1 3N ALL H -0 OK Hd1 3N ALL H Hm1 OK Hd1 3N ALL H Hd1 OK Hd1 3N ALL H -Hd1 OK Hd1 3N ALL H E OK Hd1 3N ALL H Ed1 OK Hd1 3N ALL H 0i1 OK Hd1 3N ALL H H OK H 3N ALL H -H OK Hd1 3N ALL -H 2 OK -Hd1 3N ALL -H 0 OK -Hd1 3N ALL -H -0 OK -Hd1 3N ALL -H -Hm1 OK -Hd1 3N ALL -H -Hd1 OK -Hd1 3N ALL -H Hd1 OK -Hd1 3N ALL -H -E OK -Hd1 3N ALL -H -Ed1 OK -Hd1 3N ALL -H -0i1 OK -Hd1 3N ALL -H H OK -Hd1 3N ALL -H -H OK -H ! NaN operands. Signaling NaN cases commented out . 3N ALL Q 0 OK Q 3N ALL Q -0 OK Q 3N ALL 0 Q OK Q 3N ALL -0 Q OK Q 3N ALL Q 1 OK Q 3N ALL Q -1 OK Q 3N ALL 1 Q OK Q 3N ALL -1 Q OK Q 3N ALL Ed1 Q OK Q 3N ALL -Ed1 Q OK Q 3N ALL Q Ed1 OK Q 3N ALL Q -Ed1 OK Q 3N ALL Q 0i1 OK Q 3N ALL Q -0i1 OK Q 3N ALL 0i1 Q OK Q 3N ALL -0i1 Q OK Q 3N ALL Q Hd1 OK Q 3N ALL Q -Hd1 OK Q 3N ALL Hd1 Q OK Q 3N ALL -Hd1 Q OK Q 3N ALL Q H OK Q 3N ALL Q -H OK Q 3N ALL H Q OK Q 3N ALL -H Q OK Q 3N ALL Q Q OK Q !3N ALL S 0 i Q !3N ALL S -0 i Q !3N ALL 0 S i Q !3N ALL -0 S i Q !3N ALL S 1 i Q !3N ALL S -1 i Q !3N ALL 1 S i Q !3N ALL -1 S i Q !3N ALL Ed1 S i Q !3N ALL -Ed1 S i Q !3N ALL S Ed1 i Q !3N ALL S -Ed1 i Q !3N ALL S 0i1 i Q !3N ALL S -0i1 i Q !3N ALL 0i1 S i Q !3N ALL -0i1 S i Q !3N ALL S Hd1 i Q !3N ALL S -Hd1 i Q !3N ALL Hd1 S i Q !3N ALL -Hd1 S i Q !3N ALL S H i Q !3N ALL S -H i Q !3N ALL H S i Q !3N ALL -H S i Q !3N ALL Q S i Q !3N ALL S Q i Q !3N ALL S S i Q