Merge lp:~michaelh1/gcc-linaro/combine-best-cc into lp:gcc-linaro/4.6

Proposed by Michael Hope
Status: Merged
Approved by: Richard Sandiford
Approved revision: no longer in the source branch.
Merged at revision: 106776
Proposed branch: lp:~michaelh1/gcc-linaro/combine-best-cc
Merge into: lp:gcc-linaro/4.6
Diff against target: 53 lines (+25/-1)
2 files modified
ChangeLog.linaro (+10/-0)
gcc/combine.c (+15/-1)
To merge this branch: bzr merge lp:~michaelh1/gcc-linaro/combine-best-cc
Reviewer Review Type Date Requested Status
Richard Sandiford Approve
Review via email: mp+67485@code.launchpad.net

Description of the change

Backport trunk r171304.

Fixes a bug in __builtin_isgreaterequal.

To post a comment you must log in.
Revision history for this message
Linaro Toolchain Builder (cbuild) wrote :

cbuild has taken a snapshot of this branch at r106769 and queued it for build.

The snapshot is available at:
 http://ex.seabright.co.nz/snapshots/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc.tar.xdelta3.xz

and will be built on the following builders:
 a9-builder armv5-builder i686 x86_64

You can track the build queue at:
 http://ex.seabright.co.nz/helpers/scheduler

cbuild-snapshot: gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc
cbuild-ancestor: lp:gcc-linaro/4.6+bzr106768
cbuild-state: check

Revision history for this message
Linaro Toolchain Builder (cbuild) wrote :

cbuild successfully built this on i686-natty-cbuild152-oort6-i686r1.

The build results are available at:
 http://ex.seabright.co.nz/build/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc/logs/i686-natty-cbuild152-oort6-i686r1

The test suite results were unchanged compared to the branch point lp:gcc-linaro/4.6+bzr106768.

The full testsuite results are at:
 http://ex.seabright.co.nz/build/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc/logs/i686-natty-cbuild152-oort6-i686r1/gcc-testsuite.txt

cbuild-checked: i686-natty-cbuild152-oort6-i686r1

Revision history for this message
Linaro Toolchain Builder (cbuild) wrote :

cbuild successfully built this on armv7l-natty-cbuild157-ursa4-cortexa9r1.

The build results are available at:
 http://ex.seabright.co.nz/build/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc/logs/armv7l-natty-cbuild157-ursa4-cortexa9r1

The test suite results were unchanged compared to the branch point lp:gcc-linaro/4.6+bzr106768.

The full testsuite results are at:
 http://ex.seabright.co.nz/build/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc/logs/armv7l-natty-cbuild157-ursa4-cortexa9r1/gcc-testsuite.txt

cbuild-checked: armv7l-natty-cbuild157-ursa4-cortexa9r1

Revision history for this message
Linaro Toolchain Builder (cbuild) wrote :

cbuild successfully built this on x86_64-natty-cbuild158-oort1-x86_64r1.

The build results are available at:
 http://ex.seabright.co.nz/build/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc/logs/x86_64-natty-cbuild158-oort1-x86_64r1

The test suite results were unchanged compared to the branch point lp:gcc-linaro/4.6+bzr106768.

The full testsuite results are at:
 http://ex.seabright.co.nz/build/gcc-linaro-4.6+bzr106769~michaelh1~combine-best-cc/logs/x86_64-natty-cbuild158-oort1-x86_64r1/gcc-testsuite.txt

cbuild-checked: x86_64-natty-cbuild158-oort1-x86_64r1

Revision history for this message
Richard Sandiford (rsandifo) wrote :

OK

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'ChangeLog.linaro'
2--- ChangeLog.linaro 2011-07-07 13:15:23 +0000
3+++ ChangeLog.linaro 2011-07-11 04:14:29 +0000
4@@ -1,3 +1,13 @@
5+2011-07-11 Michael Hope <michael.hope@linaro.org>
6+
7+ gcc/
8+ Backport from mainline:
9+
10+ 2011-03-22 Eric Botcazou <ebotcazou@adacore.com>
11+
12+ * combine.c (simplify_set): Try harder to find the best CC mode when
13+ simplifying a nested COMPARE on the RHS.
14+
15 2011-07-07 Richard Sandiford <richard.sandiford@linaro.org>
16
17 gcc/
18
19=== modified file 'gcc/combine.c'
20--- gcc/combine.c 2011-05-27 14:31:18 +0000
21+++ gcc/combine.c 2011-07-11 04:14:29 +0000
22@@ -6287,10 +6287,18 @@
23 enum rtx_code new_code;
24 rtx op0, op1, tmp;
25 int other_changed = 0;
26+ rtx inner_compare = NULL_RTX;
27 enum machine_mode compare_mode = GET_MODE (dest);
28
29 if (GET_CODE (src) == COMPARE)
30- op0 = XEXP (src, 0), op1 = XEXP (src, 1);
31+ {
32+ op0 = XEXP (src, 0), op1 = XEXP (src, 1);
33+ if (GET_CODE (op0) == COMPARE && op1 == const0_rtx)
34+ {
35+ inner_compare = op0;
36+ op0 = XEXP (inner_compare, 0), op1 = XEXP (inner_compare, 1);
37+ }
38+ }
39 else
40 op0 = src, op1 = CONST0_RTX (GET_MODE (src));
41
42@@ -6332,6 +6340,12 @@
43 need to use a different CC mode here. */
44 if (GET_MODE_CLASS (GET_MODE (op0)) == MODE_CC)
45 compare_mode = GET_MODE (op0);
46+ else if (inner_compare
47+ && GET_MODE_CLASS (GET_MODE (inner_compare)) == MODE_CC
48+ && new_code == old_code
49+ && op0 == XEXP (inner_compare, 0)
50+ && op1 == XEXP (inner_compare, 1))
51+ compare_mode = GET_MODE (inner_compare);
52 else
53 compare_mode = SELECT_CC_MODE (new_code, op0, op1);
54

Subscribers

People subscribed via source and target branches