xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/aarch64/fcsel.s (revision 4b169a6ba595ae283ca507b26b15fdff40495b1c)
1# mach: aarch64
2
3# Check the FP Conditional Select instruction: fcsel.
4# Check 1/1 eq/neg, and 1/2 lt/gt.
5
6.include "testutils.inc"
7
8	start
9	fmov s0, #1.0
10	fmov s1, #1.0
11	fmov s2, #-1.0
12	fcmp s0, s1
13	fcsel s3, s0, s2, eq
14	fcmp s3, s0
15	bne .Lfailure
16	fcsel s3, s0, s2, ne
17	fcmp s3, s2
18	bne .Lfailure
19
20	fmov s0, #1.0
21	fmov s1, #2.0
22	fcmp s0, s1
23	fcsel s3, s0, s2, lt
24	fcmp s3, s0
25	bne .Lfailure
26	fcsel s3, s0, s2, gt
27	fcmp s3, s2
28	bne .Lfailure
29
30	fmov d0, #1.0
31	fmov d1, #1.0
32	fmov d2, #-1.0
33	fcmp d0, d1
34	fcsel d3, d0, d2, eq
35	fcmp d3, d0
36	bne .Lfailure
37	fcsel d3, d0, d2, ne
38	fcmp d3, d2
39	bne .Lfailure
40
41	fmov d0, #1.0
42	fmov d1, #2.0
43	fcmp d0, d1
44	fcsel d3, d0, d2, lt
45	fcmp d3, d0
46	bne .Lfailure
47	fcsel d3, d0, d2, gt
48	fcmp d3, d2
49	bne .Lfailure
50
51	pass
52.Lfailure:
53	fail
54