Page 323 - ARM 64 Bit Assembly Language
P. 323

312 Chapter 9

                                Table 9.1: Condition code meanings for ARM and FP/NEON.
                   <cond>    ARM data processing instruction      FP fcmp instruction
                     AL      Always                               Always
                     EQ      Equal                                Equal
                     NE      Not Equal                            Not equal, or unordered
                     GE      Signed greater than or equal         Greater than or equal
                     LT      Signed less than                     Less than, or unordered
                     GT      Signed greater than                  Greater than
                     LE      Signed less than or equal            Less than or equal, or unordered
                     HI      Unsigned higher                      Greater than, or unordered
                     LS      Unsigned lower or same               Less than or equal
                     HS      Carry set/unsigned higher or same    Greater than or equal, or unordered
                     CS      Same as HS                           Same as HS
                     LO      Carry clear/ unsigned lower          less than
                     CC      Same as LO                           Same as LO
                     MI      Negative                             Less than
                     PL      Positive or zero                     Greater than or equal, or unordered
                     VS      Overflow                              Unordered (at least one NaN operand)
                     VC      No overflow                           Not unordered



                  9.7.6 Compare

                  The compare instruction subtracts the value in Fm from the value in Fn and sets the flags in the
                  PSTATE register based on the result. The condition code meanings after an fcmp instruction
                  are shown in Table 9.1. The comparison instructions are:

                  fcmp     Compare,
                  fcmpe    Compare with Exception,
                  fccmp    Conditional Compare, and
                  fccmpe   Conditional Compare with Exception.


                  9.7.6.1 Syntax

                       fcmp{e}    Fn, <Fm | #0.0>
                       fccmp{e}   Fn, <Fm | #0.0>, #uimm4, cond


                  •  For the fcmpe and fccmpe instructions, an exception is raised if any kid of NaN is en-
                     countered. Otherwise an exception is raised only for signaling NaNs.
   318   319   320   321   322   323   324   325   326   327   328