public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend
@ 2014-01-19 16:14 hjl.tools at gmail dot com
2014-01-19 17:09 ` [Bug rtl-optimization/59880] " jakub at gcc dot gnu.org
` (10 more replies)
0 siblings, 11 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2014-01-19 16:14 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
Bug ID: 59880
Summary: Improve REE for implicit SI->DI zero-extend
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: hjl.tools at gmail dot com
After r206774, on Linux/x86-64, the following code
---foo.c---
extern __thread unsigned int __bid_IDEC_glbflags;
typedef unsigned long long UINT64;
typedef __attribute__ ((aligned(16))) struct
{
UINT64 w[2];
} UINT128;
extern UINT64 __bid64_from_uint64 (UINT64);
extern void __bid_round64_2_18 (int q,
int x,
UINT64 C,
UINT64 * ptr_Cstar,
int *delta_exp,
int *ptr_is_midpoint_lt_even,
int *ptr_is_midpoint_gt_even,
int *ptr_is_inexact_lt_midpoint,
int *ptr_is_inexact_gt_midpoint);
extern void __bid_round128_19_38 (int q,
int x,
UINT128 C,
UINT128 * ptr_Cstar,
int *delta_exp,
int *ptr_is_midpoint_lt_even,
int *ptr_is_midpoint_gt_even,
int *ptr_is_inexact_lt_midpoint,
int *ptr_is_inexact_gt_midpoint);
UINT64
__bid64_from_uint64 (UINT64 x)
{
UINT64 res;
UINT128 x128, res128;
unsigned int q, ind;
int incr_exp = 0;
int is_midpoint_lt_even = 0, is_midpoint_gt_even = 0;
int is_inexact_lt_midpoint = 0, is_inexact_gt_midpoint = 0;
if (x <= 0x002386F26FC0ffffull) {
if (x < 0x0020000000000000ull) {
res = 0x31c0000000000000ull | x;
} else {
res = 0x6c70000000000000ull | (x & 0x0007ffffffffffffull);
}
}
else
{
if (x < 0x16345785d8a0000ull) {
q = 17;
ind = 1;
} else if (x < 0xde0b6b3a7640000ull) {
q = 18;
ind = 2;
} else if (x < 0x8ac7230489e80000ull) {
q = 19;
ind = 3;
} else {
q = 20;
ind = 4;
}
if (q <= 19) {
__bid_round64_2_18 (
q, ind, x, &res, &incr_exp,
&is_midpoint_lt_even, &is_midpoint_gt_even,
&is_inexact_lt_midpoint, &is_inexact_gt_midpoint);
}
else {
x128.w[1] = 0x0;
x128.w[0] = x;
__bid_round128_19_38 (q, ind, x128, &res128, &incr_exp,
&is_midpoint_lt_even, &is_midpoint_gt_even,
&is_inexact_lt_midpoint, &is_inexact_gt_midpoint);
res = res128.w[0];
}
if (incr_exp)
ind++;
if (is_inexact_lt_midpoint || is_inexact_gt_midpoint ||
is_midpoint_lt_even || is_midpoint_gt_even)
*&__bid_IDEC_glbflags |= 0x00000020;
if (res < 0x0020000000000000ull) {
res = (((UINT64) ind + 398) << 53) | res;
} else
{
res = 0x6000000000000000ull | (((UINT64) ind + 398) << 51) |
(res & 0x0007ffffffffffffull);
}
}
return(res);;
}
-----------
contains 2 extra SI->DI zero-extend when compiled with
-O2 -march=corei7 -mtune=slm -fPIC
movl %ebp, %edx # 311 *movsi_internal/1 [length = 2]
^^^^^^^^^^^^^^^^^^^ Implicit SI->DI zero-extend
leaq 88(%rsp), %rsp # 267 pro_epilogue_adjust_stack_di_add/1
[length = 5]
.cfi_remember_state
.cfi_def_cfa_offset 24
movabsq $2251799813685247, %rax # 101 *movdi_internal/5 [length
= 10]
movl %edx, %edx # 312 *zero_extendsidi2/4 [length = 2]
^^^^^^^^^^^^^^^^^^^ Unnecessary
movl %ebp, %eax # 308 *movsi_internal/1 [length = 2]
^^^^^^^^^^^^^^^^^^^ Implicit SI->DI zero-extend
leaq 88(%rsp), %rsp # 287 pro_epilogue_adjust_stack_di_add/1
[length = 5]
.cfi_remember_state
.cfi_def_cfa_offset 24
movl %eax, %eax # 309 *zero_extendsidi2/4 [length = 2]
^^^^^^^^^^^^^^^^^^^^ Unnecessary
REE pass should remove them.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug rtl-optimization/59880] Improve REE for implicit SI->DI zero-extend
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
@ 2014-01-19 17:09 ` jakub at gcc dot gnu.org
2014-01-19 17:34 ` [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy hjl.tools at gmail dot com
` (9 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-01-19 17:09 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
But REE does the right thing here:
In *.split2 before REE we have:
(insn 218 92 219 16 (set (reg:SI 0 ax [orig:123 D.1966 ] [123])
(reg/v:SI 6 bp [orig:85 ind ] [85])) pr59880.c:77 90 {*movsi_internal}
(nil))
(insn 219 218 94 16 (set (reg:DI 0 ax [orig:123 D.1966 ] [123])
(zero_extend:DI (reg:SI 0 ax [orig:123 D.1966 ] [123]))) pr59880.c:77
132 {*zero_extendsidi2}
(nil))
and REE turns that into:
(insn 218 92 94 16 (set (reg:DI 0 ax)
(zero_extend:DI (reg/v:SI 6 bp [orig:85 ind ] [85]))) pr59880.c:77 132
{*zero_extendsidi2}
(nil))
Then split4 splits that again into:
(insn 308 92 309 21 (set (reg:SI 0 ax)
(reg/v:SI 6 bp [orig:85 ind ] [85])) pr59880.c:77 90 {*movsi_internal}
(nil))
(insn 309 308 94 21 (set (reg:DI 0 ax)
(zero_extend:DI (reg:SI 0 ax))) pr59880.c:77 132 {*zero_extendsidi2}
(nil))
and finally sched2 moves those 2 insns appart. So, this is clearly a backend
issue.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
2014-01-19 17:09 ` [Bug rtl-optimization/59880] " jakub at gcc dot gnu.org
@ 2014-01-19 17:34 ` hjl.tools at gmail dot com
2014-01-19 18:25 ` ubizjak at gmail dot com
` (8 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2014-01-19 17:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Jakub Jelinek from comment #2)
> Ah, indeed, it is split because of the:
> (define_insn_and_split "*lea<mode>"
> [(set (match_operand:SWI48 0 "register_operand" "=r")
> (match_operand:SWI48 1 "address_no_seg_operand" "Ts"))]
> splitter. I'd say it is a bug in ix86_avoid_lea_for_addr, that shouldn't
> have returned true in this case, where the second operand is (zero_extend:DI
> (reg:SI)).
My patch for PR 59379:
http://gcc.gnu.org/ml/gcc-patches/2014-01/msg01166.html
doesn't have this problem Should we consider my patch instead?
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
2014-01-19 17:09 ` [Bug rtl-optimization/59880] " jakub at gcc dot gnu.org
2014-01-19 17:34 ` [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy hjl.tools at gmail dot com
@ 2014-01-19 18:25 ` ubizjak at gmail dot com
2014-01-19 18:41 ` ubizjak at gmail dot com
` (7 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ubizjak at gmail dot com @ 2014-01-19 18:25 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 3466 bytes --]
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #4 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Jakub Jelinek from comment #2)
> Ah, indeed, it is split because of the:
> (define_insn_and_split "*lea<mode>"
> [(set (match_operand:SWI48 0 "register_operand" "=r")
> (match_operand:SWI48 1 "address_no_seg_operand" "Ts"))]
> splitter. I'd say it is a bug in ix86_avoid_lea_for_addr, that shouldn't
> have returned true in this case, where the second operand is (zero_extend:DI
> (reg:SI)).
It shouldn't split this RTX, ix86_avoid_lea_for_addr has:
/* There should be at least two components in the address. */
if ((parts.base != NULL_RTX) + (parts.index != NULL_RTX)
+ (parts.disp != NULL_RTX) + (parts.scale > 1) < 2)
return false;
>From gcc-bugs-return-440928-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sun Jan 19 18:29:02 2014
Return-Path: <gcc-bugs-return-440928-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 16654 invoked by alias); 19 Jan 2014 18:29:02 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 16610 invoked by uid 48); 19 Jan 2014 18:28:59 -0000
From: "jakub at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy
Date: Sun, 19 Jan 2014 18:29:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: rtl-optimization
X-Bugzilla-Version: 4.9.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: enhancement
X-Bugzilla-Who: jakub at gcc dot gnu.org
X-Bugzilla-Status: ASSIGNED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: jakub at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status assigned_to attachments.created
Message-ID: <bug-59880-4-zOvSCZ7OS9@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-59880-4@http.gcc.gnu.org/bugzilla/>
References: <bug-59880-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-01/txt/msg02070.txt.bz2
Content-length: 834
http://gcc.gnu.org/bugzilla/show_bug.cgi?idY880
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 31893
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id1893&actioníit
gcc49-pr59880.patch
Untested fix. The reason for the problem is that if it is just a
(zero-extended SI->DI or normal) move from %r13, %rbp or (for k6 %esi), then
decomposition sets parts.disp to const0_rtx and thus we count it as two parts,
even when we wouldn't emit it as a lea insn originally.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (2 preceding siblings ...)
2014-01-19 18:25 ` ubizjak at gmail dot com
@ 2014-01-19 18:41 ` ubizjak at gmail dot com
2014-01-19 19:41 ` jakub at gcc dot gnu.org
` (6 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: ubizjak at gmail dot com @ 2014-01-19 18:41 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #6 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Jakub Jelinek from comment #5)
> Created attachment 31893 [details]
> gcc49-pr59880.patch
>
> Untested fix. The reason for the problem is that if it is just a
> (zero-extended SI->DI or normal) move from %r13, %rbp or (for k6 %esi), then
> decomposition sets parts.disp to const0_rtx and thus we count it as two
> parts, even when we wouldn't emit it as a lea insn originally.
True. However, can you put new test before costly call to
ix86_ok_to_clobber_flags and ix86_decompose_address?
>From gcc-bugs-return-440931-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sun Jan 19 19:03:57 2014
Return-Path: <gcc-bugs-return-440931-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 702 invoked by alias); 19 Jan 2014 19:03:56 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 624 invoked by uid 48); 19 Jan 2014 19:03:53 -0000
From: "glisse at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/54425] Rvalue/Lvalue overload resolution of templated function
Date: Sun, 19 Jan 2014 19:03:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: c++
X-Bugzilla-Version: 4.8.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: glisse at gcc dot gnu.org
X-Bugzilla-Status: RESOLVED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: bug_status cc resolution
Message-ID: <bug-54425-4-6EXD2qcMaQ@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-54425-4@http.gcc.gnu.org/bugzilla/>
References: <bug-54425-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-01/txt/msg02073.txt.bz2
Content-length: 577
http://gcc.gnu.org/bugzilla/show_bug.cgi?idT425
Marc Glisse <glisse at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
CC| |glisse at gcc dot gnu.org
Resolution|--- |DUPLICATE
--- Comment #2 from Marc Glisse <glisse at gcc dot gnu.org> ---
Already fixed on trunk.
*** This bug has been marked as a duplicate of bug 57172 ***
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (3 preceding siblings ...)
2014-01-19 18:41 ` ubizjak at gmail dot com
@ 2014-01-19 19:41 ` jakub at gcc dot gnu.org
2014-01-20 9:52 ` [Bug target/59880] " jakub at gcc dot gnu.org
` (5 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-01-19 19:41 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Sure, will do. Thought about that as well, just didn't change it before
attaching ;)
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug target/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (4 preceding siblings ...)
2014-01-19 19:41 ` jakub at gcc dot gnu.org
@ 2014-01-20 9:52 ` jakub at gcc dot gnu.org
2014-01-20 9:55 ` jakub at gcc dot gnu.org
` (4 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-01-20 9:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Mon Jan 20 09:52:21 2014
New Revision: 206792
URL: http://gcc.gnu.org/viewcvs?rev=206792&root=gcc&view=rev
Log:
PR target/59880
* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
if operands[1] is a REG or ZERO_EXTEND of a REG.
* gcc.target/i386/pr59880.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/i386/pr59880.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.c
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug target/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (5 preceding siblings ...)
2014-01-20 9:52 ` [Bug target/59880] " jakub at gcc dot gnu.org
@ 2014-01-20 9:55 ` jakub at gcc dot gnu.org
2014-01-22 18:29 ` uros at gcc dot gnu.org
` (3 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-01-20 9:55 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |NEW
Assignee|jakub at gcc dot gnu.org |unassigned at gcc dot gnu.org
--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed for 4.9+.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug target/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (6 preceding siblings ...)
2014-01-20 9:55 ` jakub at gcc dot gnu.org
@ 2014-01-22 18:29 ` uros at gcc dot gnu.org
2014-01-22 19:58 ` uros at gcc dot gnu.org
` (2 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: uros at gcc dot gnu.org @ 2014-01-22 18:29 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #11 from uros at gcc dot gnu.org ---
Author: uros
Date: Wed Jan 22 18:28:30 2014
New Revision: 206934
URL: http://gcc.gnu.org/viewcvs?rev=206934&root=gcc&view=rev
Log:
Backport from mainline
2014-01-20 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
for SImode_address_operand operands, having only a REG argument.
2014-01-20 Jakub Jelinek <jakub@redhat.com>
PR target/59880
* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
if operands[1] is a REG or ZERO_EXTEND of a REG.
2014-01-18 Uros Bizjak <ubizjak@gmail.com>
H.J. Lu <hongjiu.lu@intel.com>
PR target/59379
* config/i386/i386.md (*lea<mode>): Zero-extend return register
to DImode for zero-extended addresses.
Modified:
branches/gcc-4_8-branch/gcc/ChangeLog
branches/gcc-4_8-branch/gcc/config/i386/i386.c
branches/gcc-4_8-branch/gcc/config/i386/i386.md
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug target/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (7 preceding siblings ...)
2014-01-22 18:29 ` uros at gcc dot gnu.org
@ 2014-01-22 19:58 ` uros at gcc dot gnu.org
2014-01-22 19:59 ` ubizjak at gmail dot com
2014-01-22 22:01 ` hjl at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: uros at gcc dot gnu.org @ 2014-01-22 19:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #12 from uros at gcc dot gnu.org ---
Author: uros
Date: Wed Jan 22 19:57:30 2014
New Revision: 206940
URL: http://gcc.gnu.org/viewcvs?rev=206940&root=gcc&view=rev
Log:
PR target/59880
* config/i386/i386.c (ix86_avoid_lea_for_addr): Return false
for SImode_address_operand operands. Return false
if operands[1] is a REG.
Modified:
branches/gcc-4_7-branch/gcc/ChangeLog
branches/gcc-4_7-branch/gcc/config/i386/i386.c
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug target/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (8 preceding siblings ...)
2014-01-22 19:58 ` uros at gcc dot gnu.org
@ 2014-01-22 19:59 ` ubizjak at gmail dot com
2014-01-22 22:01 ` hjl at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: ubizjak at gmail dot com @ 2014-01-22 19:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
Uroš Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target| |x86
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #13 from Uroš Bizjak <ubizjak at gmail dot com> ---
Fixed.
>From gcc-bugs-return-441241-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Jan 22 20:01:42 2014
Return-Path: <gcc-bugs-return-441241-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 4434 invoked by alias); 22 Jan 2014 20:01:41 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 4382 invoked by uid 48); 22 Jan 2014 20:01:36 -0000
From: "redi at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug libstdc++/58764] [4.9 Regression] [lwg/2193] error:=?UTF-8?Q? converting to ‘const std?=::vector<std::basic_string<char> >=?UTF-8?Q?’ from initializer list would use explicit constructor?Date: Wed, 22 Jan 2014 20:01:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: libstdc++
X-Bugzilla-Version: 4.9.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: redi at gcc dot gnu.org
X-Bugzilla-Status: ASSIGNED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: redi at gcc dot gnu.org
X-Bugzilla-Target-Milestone: 4.9.0
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields:
Message-ID: <bug-58764-4-r8pdn9xQ8n@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-58764-4@http.gcc.gnu.org/bugzilla/>
References: <bug-58764-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-01/txt/msg02383.txt.bz2
Content-length: 200
http://gcc.gnu.org/bugzilla/show_bug.cgi?idX764
--- Comment #11 from Jonathan Wakely <redi at gcc dot gnu.org> ---
OK, I'll make the noexcept conditional, which will mean losing it in C++03
mode.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug target/59880] ix86_avoid_lea_for_addr is buggy
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
` (9 preceding siblings ...)
2014-01-22 19:59 ` ubizjak at gmail dot com
@ 2014-01-22 22:01 ` hjl at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: hjl at gcc dot gnu.org @ 2014-01-22 22:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59880
--- Comment #14 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> ---
Author: hjl
Date: Wed Jan 22 22:01:00 2014
New Revision: 206942
URL: http://gcc.gnu.org/viewcvs?rev=206942&root=gcc&view=rev
Log:
Backport gcc.target/i386/pr59880.c
Backport from mainline
2014-01-20 Jakub Jelinek <jakub@redhat.com>
PR target/59880
* gcc.target/i386/pr59880.c: New test.
Added:
branches/gcc-4_8-branch/gcc/testsuite/gcc.target/i386/pr59880.c
Modified:
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2014-01-22 22:01 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-19 16:14 [Bug rtl-optimization/59880] New: Improve REE for implicit SI->DI zero-extend hjl.tools at gmail dot com
2014-01-19 17:09 ` [Bug rtl-optimization/59880] " jakub at gcc dot gnu.org
2014-01-19 17:34 ` [Bug rtl-optimization/59880] ix86_avoid_lea_for_addr is buggy hjl.tools at gmail dot com
2014-01-19 18:25 ` ubizjak at gmail dot com
2014-01-19 18:41 ` ubizjak at gmail dot com
2014-01-19 19:41 ` jakub at gcc dot gnu.org
2014-01-20 9:52 ` [Bug target/59880] " jakub at gcc dot gnu.org
2014-01-20 9:55 ` jakub at gcc dot gnu.org
2014-01-22 18:29 ` uros at gcc dot gnu.org
2014-01-22 19:58 ` uros at gcc dot gnu.org
2014-01-22 19:59 ` ubizjak at gmail dot com
2014-01-22 22:01 ` hjl at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).