]> git.pld-linux.org Git - packages/gcc.git/blame - gcc-loop-ice.patch
- fix for ICE on i686 and athlon (but mmx/3dnow/sse are still broken)
[packages/gcc.git] / gcc-loop-ice.patch
CommitLineData
d8e09e00
JB
1Index: loop.c
2===================================================================
3RCS file: /cvsroot/gcc/gcc/gcc/loop.c,v
4retrieving revision 1.389.2.7
5diff -c -r1.389.2.7 loop.c
6*** gcc-3.2/gcc/loop.c 15 Jun 2002 01:12:04 -0000 1.389.2.7
7--- gcc-3.2/gcc/loop.c 9 Sep 2002 20:23:19 -0000
8***************
9*** 9264,9270 ****
10 {
11 case LE:
12 if ((unsigned HOST_WIDE_INT) const_val != max_val >> 1)
13! code = LT, op1 = GEN_INT (const_val + 1);
14 break;
15
16 /* When cross-compiling, const_val might be sign-extended from
17--- 9264,9270 ----
18 {
19 case LE:
20 if ((unsigned HOST_WIDE_INT) const_val != max_val >> 1)
21! code = LT, op1 = gen_int_mode (const_val + 1, GET_MODE (op0));
22 break;
23
24 /* When cross-compiling, const_val might be sign-extended from
25***************
26*** 9273,9289 ****
27 if ((HOST_WIDE_INT) (const_val & max_val)
28 != (((HOST_WIDE_INT) 1
29 << (GET_MODE_BITSIZE (GET_MODE (op0)) - 1))))
30! code = GT, op1 = GEN_INT (const_val - 1);
31 break;
32
33 case LEU:
34 if (uconst_val < max_val)
35! code = LTU, op1 = GEN_INT (uconst_val + 1);
36 break;
37
38 case GEU:
39 if (uconst_val != 0)
40! code = GTU, op1 = GEN_INT (uconst_val - 1);
41 break;
42
43 default:
44--- 9273,9289 ----
45 if ((HOST_WIDE_INT) (const_val & max_val)
46 != (((HOST_WIDE_INT) 1
47 << (GET_MODE_BITSIZE (GET_MODE (op0)) - 1))))
48! code = GT, op1 = gen_int_mode (const_val - 1, GET_MODE (op0));
49 break;
50
51 case LEU:
52 if (uconst_val < max_val)
53! code = LTU, op1 = gen_int_mode (uconst_val + 1, GET_MODE (op0));
54 break;
55
56 case GEU:
57 if (uconst_val != 0)
58! code = GTU, op1 = gen_int_mode (uconst_val - 1, GET_MODE (op0));
59 break;
60
61 default:
This page took 0.11362 seconds and 4 git commands to generate.