--- Comment #28 from rguenth at gcc dot gnu dot org 2007-09-07 14:03
---
I'm closing this as fixed as I don't see the failure any more.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
--
mmitchel at gcc dot gnu dot org changed:
What|Removed |Added
Priority|P3 |P1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33199
--- Comment #23 from rguenth at gcc dot gnu dot org 2007-08-30 09:07
---
I don't think the patch fixes anything. Can you elaborate on
D.8892_26 is a non-pointer variable, eliminating edges.
but D.8892 _is_ a pointer. Or is it just that D.8892_26 is ultimately copied
from a pointer
--- Comment #24 from rguenth at gcc dot gnu dot org 2007-08-30 09:49
---
Note that even with the proposed patch we generate different code dependent on
if -g is enabled or not. Starting with the first alias pass there are
differences
in the has_volatile_ops annotations!
@@ -3818,9
--- Comment #25 from rguenth at gcc dot gnu dot org 2007-08-30 12:14
---
Created an attachment (id=14142)
-- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14142action=view)
reduced testcase for the volatile diffs
against same svn revision + the proposed patch
--
--- Comment #26 from rguenth at gcc dot gnu dot org 2007-08-30 14:52
---
Subject: Bug 33199
Author: rguenth
Date: Thu Aug 30 14:52:28 2007
New Revision: 127927
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=127927
Log:
2007-08-30 Richard Guenther [EMAIL PROTECTED]
PR
--- Comment #27 from dberlin at gcc dot gnu dot org 2007-08-30 14:56
---
(In reply to comment #23)
I don't think the patch fixes anything.
Uh, sure it does.
Before we were ignoring the pointer results from calls.
They should point to anything.
Can you elaborate on
D.8892_26
--- Comment #19 from rguenth at gcc dot gnu dot org 2007-08-29 10:32
---
MTAG_ALIASES of the SMTs are different:
SMT.469 no aliases
SMT.470 no aliases
SMT.464{ ctor_count ctor_count dtor_count SMT.465 SMT.470 }
SMT.465{ ctor_count ctor_count dtor_count SMT.470 }
SMT.466{ ctor_count
--- Comment #20 from rguenth at gcc dot gnu dot org 2007-08-29 11:58
---
Due to the alias differences with -g compared to without -g we have the
following
difference after tree-level optimization:
--- - 2007-08-29 13:52:02.567822000 +0200
+++ b/auto_ptr.min.ii.116t.optimized
--- Comment #21 from rguenth at gcc dot gnu dot org 2007-08-29 15:19
---
I wonder why D.9380_64, defined as
D.9380_64 = D.8894_34-_M_use_count;
points to anything and NULL:
D.9380_64, is dereferenced, points-to anything, points-to NULL
where the single dereference site looks
--- Comment #22 from dberlin at gcc dot gnu dot org 2007-08-29 18:30
---
Subject: Re: [4.3 Regression]
tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc
On 29 Aug 2007 15:19:10 -, rguenth at gcc dot gnu dot org
[EMAIL PROTECTED] wrote:
--- Comment #21 from rguenth at
--- Comment #12 from rguenth at gcc dot gnu dot org 2007-08-28 08:52
---
Note I think it is perfectly reasonable and wanted that we can inline
template_Lock_policy _Lp
inline void
__enable_shared_from_this_helper(const __shared_count_Lp, ...)
{ }
and thus eliminate
--- Comment #13 from pcarlini at suse dot de 2007-08-28 08:56 ---
(In reply to comment #12)
Totally agreed. In any case, I think we all agree that: 1- Miscompilations are
always very bad; 2- It is legal C++; 3- Any user, not just library authors, can
write such kind of code.
--
--- Comment #14 from rguenth at gcc dot gnu dot org 2007-08-28 11:05
---
I'm reducing the testcase now.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33199
--- Comment #15 from rguenth at gcc dot gnu dot org 2007-08-28 13:54
---
The first difference (between -g and non--g build) is after DSE where for the
-g
build it doesn't delete a redundant store. Which is because we have different
alias information with/without -g (in fact this
--- Comment #16 from rguenth at gcc dot gnu dot org 2007-08-28 15:56
---
The differences in alias info are due to different memory partitioning that
happens (regardless of same IL, same number of referenced vars and same BB
frequencies) as we have different Memory symbol references
--- Comment #17 from rguenth at gcc dot gnu dot org 2007-08-28 16:24
---
Created an attachment (id=14128)
-- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14128action=view)
reduced testcase
Reduced testcase. Note that even removing an unused class (struct counter)
makes
the
--- Comment #18 from rguenth at gcc dot gnu dot org 2007-08-28 19:23
---
Just to add, the reduced testcase fails with r127848. I suppose the failure
might vanish with the inliner change I put in after that.
--
rguenth at gcc dot gnu dot org changed:
What|Removed
--- Comment #4 from rguenth at gcc dot gnu dot org 2007-08-27 07:31 ---
The inliner can perfectly cope with varargs if they are unused. See
gcc.dg/inline-23.c:
/* { dg-do compile } */
/* { dg-options -std=gnu89 } */
/* Make sure we can inline a varargs function whose variable
--- Comment #5 from rguenth at gcc dot gnu dot org 2007-08-27 15:27 ---
Doesn't fail for me on x86_64 with -m32.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33199
--- Comment #6 from hjl at lucon dot org 2007-08-27 16:11 ---
I saw it on Linux/ia64 running RHEL4, on Linux/ia32 running RHEL4 and RHEL5
as well as with -m32 on Linux/x86-64 running F7, RHEL4 and RHEL5. If I
have to guess, some vararg functions may be only available on certain
--- Comment #7 from rguenther at suse dot de 2007-08-27 16:16 ---
Subject: Re: [4.3 Regression]
tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc
On Mon, 27 Aug 2007, hjl at lucon dot org wrote:
--- Comment #6 from hjl at lucon dot org 2007-08-27 16:11 ---
I saw it on
--- Comment #8 from hjl at lucon dot org 2007-08-27 16:43 ---
Created an attachment (id=14124)
-- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14124action=view)
A testcase
It should be compiled with
-O2 -m32 -g -O2 -ffunction-sections -fdata-sections -fmessage-length=0 -g -O2
--- Comment #9 from hjl at lucon dot org 2007-08-27 20:39 ---
This patch:
Index: decl.c
===
--- decl.c (revision 127763)
+++ decl.c (working copy)
@@ -11525,6 +11525,9 @@ finish_function (int flags)
--- Comment #10 from jakub at gcc dot gnu dot org 2007-08-27 21:42 ---
This really can't be worked around, but has to be fixed properly.
for i in -g; do ./g++ -B ./ -O2 $i -m32 -o auto_ptr /tmp/auto_ptr.ii
-L../x86_64-unknown-linux-gnu/32/libstdc++-v3/src/.libs/
--- Comment #11 from hjl at lucon dot org 2007-08-27 21:57 ---
build_new_1 has
/* Now, check to see if this function is actually a placement
allocation function. This can happen even when PLACEMENT is NULL
because we might have something like:
struct S { void*
--- Comment #1 from hjl at lucon dot org 2007-08-26 21:59 ---
The patch is at
http://gcc.gnu.org/ml/gcc-patches/2007-08/msg01374.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33199
--- Comment #3 from hjl at lucon dot org 2007-08-27 01:27 ---
Revision 127763 removed varargs_function_p call for C++. I tried this patch:
Index: tree-inline.c
===
--- tree-inline.c (revision 127763)
+++
28 matches
Mail list logo