# mach: aarch64 # Check the FP scalar compare zero instructions: fcmeq, fcmle, fcmlt, fcmge, # fcmgt. # Check values -1, 0, and 1. .include "testutils.inc" start fmov s0, wzr fcmeq s1, s0, #0.0 mov w0, v1.s[0] cmp w0, #-1 bne .Lfailure fmov s0, #-1.0 fcmeq s1, s0, #0.0 mov w0, v1.s[0] cmp w0, #0 bne .Lfailure fmov d0, xzr fcmeq d1, d0, #0.0 mov x0, v1.d[0] cmp x0, #-1 bne .Lfailure fmov d0, #1.0 fcmeq d1, d0, #0.0 mov x0, v1.d[0] cmp x0, #0 bne .Lfailure fmov s0, #-1.0 fcmle s1, s0, #0.0 mov w0, v1.s[0] cmp w0, #-1 bne .Lfailure fmov d0, #-1.0 fcmle d1, d0, #0.0 mov x0, v1.d[0] cmp x0, #-1 bne .Lfailure fmov s0, #-1.0 fcmlt s1, s0, #0.0 mov w0, v1.s[0] cmp w0, #-1 bne .Lfailure fmov d0, #-1.0 fcmlt d1, d0, #0.0 mov x0, v1.d[0] cmp x0, #-1 bne .Lfailure fmov s0, #1.0 fcmge s1, s0, #0.0 mov w0, v1.s[0] cmp w0, #-1 bne .Lfailure fmov d0, #1.0 fcmge d1, d0, #0.0 mov x0, v1.d[0] cmp x0, #-1 bne .Lfailure fmov s0, #1.0 fcmgt s1, s0, #0.0 mov w0, v1.s[0] cmp w0, #-1 bne .Lfailure fmov d0, #1.0 fcmgt d1, d0, #0.0 mov x0, v1.d[0] cmp x0, #-1 bne .Lfailure pass .Lfailure: fail