summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/20070501-1.c
blob: 39acd49dee452d7c411e7eefbee2513572315c81 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 typedef signed int signed16 __attribute__ ((__mode__ (__HI__)));
 typedef unsigned int unsigned16 __attribute__ ((__mode__ (__HI__)));
 typedef signed16 HI;
 typedef unsigned16 UHI;
unsigned short f(int y)
{
  HI tmp_b4;
  tmp_b4 = y;
  UHI opval;
  if (tmp_b4 == -32768)
    opval = 32767;
  else
   opval = -tmp_b4;
 return opval;
}