5 TYPE
__attribute__((sseregparm
))
6 test_noneg_add_noneg_add (TYPE a
, TYPE b
, TYPE c
)
8 return ((a
* b
) + c
) * c
+ b
;
11 TYPE
__attribute__((sseregparm
))
12 test_noneg_add_noneg_sub (TYPE a
, TYPE b
, TYPE c
)
14 return ((a
* b
) + c
) * c
- b
;
17 TYPE
__attribute__((sseregparm
))
18 test_noneg_add_neg_add (TYPE a
, TYPE b
, TYPE c
)
20 return -((a
* b
) + c
) * c
+ b
;
23 TYPE
__attribute__((sseregparm
))
24 test_noneg_add_neg_sub (TYPE a
, TYPE b
, TYPE c
)
26 return -((a
* b
) + c
) * c
- b
;
29 TYPE
__attribute__((sseregparm
))
30 test_noneg_sub_noneg_add (TYPE a
, TYPE b
, TYPE c
)
32 return ((a
* b
) - c
) * c
+ b
;
35 TYPE
__attribute__((sseregparm
))
36 test_noneg_sub_noneg_sub (TYPE a
, TYPE b
, TYPE c
)
38 return ((a
* b
) - c
) * c
- b
;
41 TYPE
__attribute__((sseregparm
))
42 test_noneg_sub_neg_add (TYPE a
, TYPE b
, TYPE c
)
44 return -((a
* b
) - c
) * c
+ b
;
47 TYPE
__attribute__((sseregparm
))
48 test_noneg_sub_neg_sub (TYPE a
, TYPE b
, TYPE c
)
50 return -((a
* b
) - c
) * c
- b
;
53 TYPE
__attribute__((sseregparm
))
54 test_neg_add_noneg_add (TYPE a
, TYPE b
, TYPE c
)
56 return (-(a
* b
) + c
) * c
+ b
;
59 TYPE
__attribute__((sseregparm
))
60 test_neg_add_noneg_sub (TYPE a
, TYPE b
, TYPE c
)
62 return (-(a
* b
) + c
) * c
- b
;
65 TYPE
__attribute__((sseregparm
))
66 test_neg_add_neg_add (TYPE a
, TYPE b
, TYPE c
)
68 return -(-(a
* b
) + c
) * c
+ b
;
71 TYPE
__attribute__((sseregparm
))
72 test_neg_add_neg_sub (TYPE a
, TYPE b
, TYPE c
)
74 return -(-(a
* b
) + c
) * c
- b
;
77 TYPE
__attribute__((sseregparm
))
78 test_neg_sub_noneg_add (TYPE a
, TYPE b
, TYPE c
)
80 return (-(a
* b
) - c
) * c
+ b
;
83 TYPE
__attribute__((sseregparm
))
84 test_neg_sub_noneg_sub (TYPE a
, TYPE b
, TYPE c
)
86 return (-(a
* b
) - c
) * c
- b
;
89 TYPE
__attribute__((sseregparm
))
90 test_neg_sub_neg_add (TYPE a
, TYPE b
, TYPE c
)
92 return -(-(a
* b
) - c
) * c
+ b
;
95 TYPE
__attribute__((sseregparm
))
96 test_neg_sub_neg_sub (TYPE a
, TYPE b
, TYPE c
)
98 return -(-(a
* b
) - c
) * c
- b
;