]> gcc.gnu.org Git - gcc.git/blame - gcc/testsuite/gcc.target/powerpc/subfus-1.c
Update ChangeLog.meissner
[gcc.git] / gcc / testsuite / gcc.target / powerpc / subfus-1.c
CommitLineData
db56db81
MM
1/* { dg-do compile } */
2/* { dg-require-effective-target powerpc_future_ok } */
3/* { dg-options "-mdejagnu-cpu=future -O2" } */
4
5/* Test whether the saturating subtract built-in generates subwus for 32-bit
6 subtracts. */
7
8int do_sat_int (int a, int b)
9{
10 return __builtin_saturate_subtract32 (a, b); /* subwus */
11}
12
13int do_sat_int_dot (int a, int b, int *p)
14{
15 int r = __builtin_saturate_subtract32 (a, b); /* subwus. */
16 if (r == 0)
17 *p = 0;
18
19 return r;
20}
21
22void do_sat_int_dot2 (int a, int b, int *p, int *q)
23{
24 if (__builtin_saturate_subtract32 (a, b)) /* subwus. */
25 *p = 0;
26
27 *q = a + b;
28 return;
29}
30
31/* { dg-final { scan-assembler {\msubwus\M} } } */
32/* { dg-final { scan-assembler-not {\msubf\M} } } */
This page took 0.032785 seconds and 5 git commands to generate.