fadd(double x,double y)1 double fadd(double x, double y) { return x + y; }
fsub(double x,double y)2 double fsub(double x, double y) { return x - y; }
fmul(double x,double y)3 double fmul(double x, double y) { return x * y; }
fdiv(double x,double y)4 double fdiv(double x, double y) { return x / y; }
fneg(double x)5 double fneg(double x) { return -x; }
ftst(double x)6 _Bool ftst(double x) { return !x; }
7
8 /*
9 * check-name: floating-point ops
10 * check-command: test-linearize -Wno-decl $file
11
12 * check-output-start
13 fadd:
14 .L0:
15 <entry-point>
16 fadd.64 %r3 <- %arg1, %arg2
17 ret.64 %r3
18
19
20 fsub:
21 .L2:
22 <entry-point>
23 fsub.64 %r7 <- %arg1, %arg2
24 ret.64 %r7
25
26
27 fmul:
28 .L4:
29 <entry-point>
30 fmul.64 %r11 <- %arg1, %arg2
31 ret.64 %r11
32
33
34 fdiv:
35 .L6:
36 <entry-point>
37 fdiv.64 %r15 <- %arg1, %arg2
38 ret.64 %r15
39
40
41 fneg:
42 .L8:
43 <entry-point>
44 fneg.64 %r18 <- %arg1
45 ret.64 %r18
46
47
48 ftst:
49 .L10:
50 <entry-point>
51 setfval.64 %r21 <- 0.000000e+00
52 fcmpoeq.1 %r23 <- %arg1, %r21
53 ret.1 %r23
54
55
56 * check-output-end
57 */
58