public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug other/20188] New: glibc-2.3.4 misscompilation.
@ 2005-02-24 16:14 pluto at pld-linux dot org
  2005-02-24 16:14 ` [Bug other/20188] " pluto at pld-linux dot org
                   ` (20 more replies)
  0 siblings, 21 replies; 22+ messages in thread
From: pluto at pld-linux dot org @ 2005-02-24 16:14 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 997 bytes --]

I get an error during `make install`: 
  
(...)  
/home/users/pluto/rpm/BUILD/glibc-2.3.4/builddir/timezone/zic  
-d /tmp/glibc-2.3.4-root-pluto/usr/share/zoneinfo -L /dev/null  
-y ./yearistype solar87  
"solar87", line 385: can't determine time zone abbreviation  
                     to use just after until time   
make[2]: *** [/tmp/glibc-2.3.4-root-pluto/usr/share/zoneinfo/Asia/Riyadh87]  
Error 1  
 
gcc-4.0.0-20050220+pr13397 - fails. 
gcc-3.3.5 - ok.

-- 
           Summary: glibc-2.3.4 misscompilation.
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: other
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: pluto at pld-linux dot org
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: i686-pld-linux
  GCC host triplet: i686-pld-linux
GCC target triplet: i686-pld-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug other/20188] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
@ 2005-02-24 16:14 ` pluto at pld-linux dot org
  2005-02-24 17:25 ` pinskia at gcc dot gnu dot org
                   ` (19 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pluto at pld-linux dot org @ 2005-02-24 16:14 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pluto at pld-linux dot org  2005-02-24 13:30 -------
(In reply to comment #0)  
 
> gcc-4.0.0-20050220+pr13397 - fails.   
 
s/13397/19937/  
  

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug other/20188] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
  2005-02-24 16:14 ` [Bug other/20188] " pluto at pld-linux dot org
@ 2005-02-24 17:25 ` pinskia at gcc dot gnu dot org
  2005-02-24 23:49 ` pluto at pld-linux dot org
                   ` (18 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-24 17:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-24 14:30 -------
We really need a testcase.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug other/20188] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
  2005-02-24 16:14 ` [Bug other/20188] " pluto at pld-linux dot org
  2005-02-24 17:25 ` pinskia at gcc dot gnu dot org
@ 2005-02-24 23:49 ` pluto at pld-linux dot org
  2005-02-25  0:29 ` pluto at pld-linux dot org
                   ` (17 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pluto at pld-linux dot org @ 2005-02-24 23:49 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pluto at pld-linux dot org  2005-02-24 19:38 -------
Created an attachment (id=8272)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8272&action=view)
testcase


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug other/20188] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (2 preceding siblings ...)
  2005-02-24 23:49 ` pluto at pld-linux dot org
@ 2005-02-25  0:29 ` pluto at pld-linux dot org
  2005-02-25  1:00 ` [Bug middle-end/20188] [4.0 Regression] " pinskia at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pluto at pld-linux dot org @ 2005-02-25  0:29 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pluto at pld-linux dot org  2005-02-24 19:40 -------
-O3 break zic. 
 
# log: bash -v build.sh 
 
#!/bin/sh 
rm -rf Asia Mideast zic *.o 
gcc -o zic zic.i ialloc.c scheck.c -DNOID -Wall -O2 
./zic -d ./ -L /dev/null -y ./yearistype solar87 && echo "ok" 
ok 
 
rm -rf Asia Mideast zic *.o 
gcc -o zic zic.i ialloc.c scheck.c -DNOID -Wall -O3 
./zic -d ./ -L /dev/null -y ./yearistype solar87 && echo "ok" 
"solar87", line 385: can't determine time zone abbreviation to use just after 
until time 

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug middle-end/20188] [4.0 Regression] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (3 preceding siblings ...)
  2005-02-25  0:29 ` pluto at pld-linux dot org
@ 2005-02-25  1:00 ` pinskia at gcc dot gnu dot org
  2005-02-25  1:12 ` [Bug tree-optimization/20188] " pinskia at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25  1:00 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-24 20:08 -------
I can confirm this, looking to reduce this a little more.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|other                       |middle-end
           Keywords|                            |wrong-code
            Summary|glibc-2.3.4 misscompilation.|[4.0 Regression] glibc-2.3.4
                   |                            |misscompilation.
   Target Milestone|---                         |4.0.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (4 preceding siblings ...)
  2005-02-25  1:00 ` [Bug middle-end/20188] [4.0 Regression] " pinskia at gcc dot gnu dot org
@ 2005-02-25  1:12 ` pinskia at gcc dot gnu dot org
  2005-02-25  1:38 ` pinskia at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25  1:12 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|middle-end                  |tree-optimization


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (5 preceding siblings ...)
  2005-02-25  1:12 ` [Bug tree-optimization/20188] " pinskia at gcc dot gnu dot org
@ 2005-02-25  1:38 ` pinskia at gcc dot gnu dot org
  2005-02-25  7:13 ` pluto at pld-linux dot org
                   ` (13 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25  1:38 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-24 20:45 -------
I have no idea what is going on here but I will note that "-O3 -fno-tree-dominator-opts" works.
"-O3 -fno-ivopts" does not work
"-O3 -fno-strict-aliasing" does not work.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (6 preceding siblings ...)
  2005-02-25  1:38 ` pinskia at gcc dot gnu dot org
@ 2005-02-25  7:13 ` pluto at pld-linux dot org
  2005-02-25 12:37 ` pinskia at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pluto at pld-linux dot org @ 2005-02-25  7:13 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pluto at pld-linux dot org  2005-02-24 23:44 -------
(In reply to comment #6) 
> I have no idea what is going on here but I will note that "-O3 
-fno-tree-dominator-opts" works. 
> "-O3 -fno-ivopts" does not work 
> "-O3 -fno-strict-aliasing" does not work. 
 
I've looked into final tree-dump and found something interesting. 
In the source we can find a [2] strcpy(startbuf, ...) 
which can change the state of startbuf between [1] and [3]. 
 
if (usestart) { 
[1]    if (*startbuf == '\0' && 
           zp->z_format != NULL && 
           strchr(zp->z_format, '%') == NULL && 
           strchr(zp->z_format, '/') == NULL) 
[2]             (void) strcpy(startbuf, zp->z_format); 
           eat(zp->z_filename, zp->z_linenum); 
[3]        if (*startbuf == '\0') 
                 error(_("can't determine time zone abbreviation to use 
                          just after until time")); 
           else 
               addtt(starttime, 
                     addtype(startoff, startbuf, 
                             startoff != zp->z_gmtoff, 
                             startttisstd, 
                             startttisgmt)); 
} 
 
Diff shows that the optimizer assumed D.10077=startbuf[0] incorrectly 
as const because <L219> can change state of startbuf. 
 
--- 03-zic.i.t70.final_cleanup-no-tree-dominator-opts   2005-02-25 
00:26:09.340849848 +0100 
+++ 03-zic.i.t70.final_cleanup  2005-02-25 00:26:03.792693296 +0100 
@@ -2,48 +2,44 @@ 
   if (usestart != 0) goto <L213>; else goto <L237>; 
 
 <L213>:; 
-  if (startbuf[0] == 0) goto <L214>; else goto <L220>; 
+  D.10077 = startbuf[0]; 
+  if (D.10077 == 0) goto <L214>; else goto <L220>; 
 
 <L214>:; 
-  if (*((const char * *) ivtmp.1013 + 128B) != 0B) goto <L215>; else goto 
<L220>; 
+  D.10028 = *(D.16876 + 128B); 
+  if (D.10028 != 0B) goto <L215>; else goto <L220>; 
 
 <L215>:; 
-  __s = *((const char * *) ivtmp.1013 + 128B); 
-  __asm__ __volatile__("1:\n\tmovb\t(%0),%%al\n\tcmpb\t%%ah,
%%al\n\tje\t2f\n\tleal\t1(%0),%0\n\ttestb\t%%al,%%al\n\tjne\t1b\n\txorl\t%0,
%0\n2:":"=r" __res, "=&a" __d0:"0" __s, "1" 9472, "m" *(struct 
+  __s.107 = (struct 
   { 
     char __x[268435455]; 
-  } *) __s:"cc"); 
+  } *) D.10028; 
+  __asm__ __volatile__("1:\n\tmovb\t(%0),%%al\n\tcmpb\t%%ah,
%%al\n\tje\t2f\n\tleal\t1(%0),%0\n\ttestb\t%%al,%%al\n\tjne\t1b\n\txorl\t%0,
%0\n2:":"=r" __res, "=&a" __d0:"0" D.10028, "1" 9472, "m" *__s.107:"cc"); 
   if (__res == 0B) goto <L217>; else goto <L220>; 
 
 <L217>:; 
-  __s = *((const char * *) ivtmp.1013 + 128B); 
-  __asm__ __volatile__("1:\n\tmovb\t(%0),%%al\n\tcmpb\t%%ah,
%%al\n\tje\t2f\n\tleal\t1(%0),%0\n\ttestb\t%%al,%%al\n\tjne\t1b\n\txorl\t%0,
%0\n2:":"=r" __res, "=&a" __d0:"0" __s, "1" 12032, "m" *(struct 
-  { 
-    char __x[268435455]; 
-  } *) __s:"cc"); 
+  __asm__ __volatile__("1:\n\tmovb\t(%0),%%al\n\tcmpb\t%%ah,
%%al\n\tje\t2f\n\tleal\t1(%0),%0\n\ttestb\t%%al,%%al\n\tjne\t1b\n\txorl\t%0,
%0\n2:":"=r" __res, "=&a" __d0:"0" D.10028, "1" 12032, "m" *__s.107:"cc"); 
   if (__res == 0B) goto <L219>; else goto <L220>; 
 
 <L219>:; 
-  __src = *((const char * *) ivtmp.1013 + 128B); 
   __dest.50 = (struct 
   { 
     char __x[268435455]; 
   } *) &startbuf; 
-  __asm__ __volatile__("1:\n\tmovb\t(%0),%b2\n\tleal\t1(%0),%0\n\tmovb\t%b2,
(%1)\n\tleal\t1(%1),%1\n\ttestb\t%b2,%b2\n\tjne\t1b":"=&r" __src.1132, "=&r" 
__tmp, "=&q" __dummy, "=m" *__dest.50:"0" __src, "1" &startbuf, "m" *(struct 
+  __asm__ __volatile__("1:\n\tmovb\t(%0),%b2\n\tleal\t1(%0),%0\n\tmovb\t%b2,
(%1)\n\tleal\t1(%1),%1\n\ttestb\t%b2,%b2\n\tjne\t1b":"=&r" __src, "=&r" __tmp, 
"=&q" __dummy, "=m" *__dest.50:"0" D.10028, "1" &startbuf, "m" *(struct 
   { 
     char __x[268435455]; 
-  } *) __src:"cc"); 
+  } *) D.10028:"cc"); 
 
 <L220>:; 
-  num = *((int *) ivtmp.1013 + 112B); 
-  name = *((const char * *) ivtmp.1013 + 108B); 
-  filename = name; 
+  num = *D.16875; 
+  filename = *D.16877; 
   linenum = num; 
   rfilename = 0B; 
   rlinenum = -1; 
-  if (startbuf[0] == 0) goto <L225>; else goto <L226>; 
+  if (D.10077 == 0) goto <L225>; else goto <L226>; 
 
 <L225>:; 
   D.10084 = __dcgettext (&_libc_intl_domainname, &"can\'t determine time zone 
abbreviation to use just after until time"[0], 5); 
   error (D.10084); 
-  goto <bb 173> (<L237>); 
+  goto <bb 155> (<L237>); 
 

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] glibc-2.3.4 misscompilation.
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (7 preceding siblings ...)
  2005-02-25  7:13 ` pluto at pld-linux dot org
@ 2005-02-25 12:37 ` pinskia at gcc dot gnu dot org
  2005-02-25 15:17 ` [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF pinskia at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 12:37 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 01:37 -------
(In reply to comment #7)
With that I got it down to 1646 lines and only one function (well the other stuff is functions and some 
unused stuff).  I will attach a more reduced testcase when I get around to it.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (8 preceding siblings ...)
  2005-02-25 12:37 ` pinskia at gcc dot gnu dot org
@ 2005-02-25 15:17 ` pinskia at gcc dot gnu dot org
  2005-02-25 15:30 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 15:17 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 03:27 -------
Hmm, this is the smallest testcase which I came up to show the problem (note I cannot think of a 
testcase which shows this in dejagnu test well we could check for V_MAY_DEF):
void link_error();
void f(char *a)
{
  if (*a == 0)
   asm("":"=m"(*(struct{char a[10]; }*)a));
  if (*a ==0)
   link_error ();
}

int main(void)
{
  char a = 0;
  f(&a);
}

But I should note that this seems to violate aliasing rules but that should not matter for -fno-strict-
aliasing.  Someone should tell glibc if this turns out being violating aliasing rules because it shows up 
for memcpy.

This worked in 20050113 but failed in 20050216.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org, dnovillo at gcc dot gnu
                   |                            |dot org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-02-25 03:27:44
               date|                            |
            Summary|[4.0 Regression] glibc-2.3.4|[4.0 Regression] asm and
                   |misscompilation.            |memory operands does not add
                   |                            |a V_MAY_DEF


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (9 preceding siblings ...)
  2005-02-25 15:17 ` [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF pinskia at gcc dot gnu dot org
@ 2005-02-25 15:30 ` pinskia at gcc dot gnu dot org
  2005-02-25 15:43 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 15:30 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 03:30 -------
(In reply to comment #9)
> But I should note that this seems to violate aliasing rules but that should not matter for -fno-strict-
> aliasing.  Someone should tell glibc if this turns out being violating aliasing rules because it shows up 
> for memcpy.
Well in this case we are not violating aliasing rules because we can access via char just fine.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (10 preceding siblings ...)
  2005-02-25 15:30 ` pinskia at gcc dot gnu dot org
@ 2005-02-25 15:43 ` pinskia at gcc dot gnu dot org
  2005-02-25 15:49 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 15:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 05:15 -------
I think the patch for PR 19633 caused this bug.
For the code below which is just a modifed version:
void link_error();
struct aa
{
  char a[10];
};
void f(char *a)
{
  struct aa *a1 = (struct aa *)a;
  if (*a == 0)
   asm("":"=m"(*a1));
  if (*a ==0)
   link_error ();
}
int main(void)
{
  char a = 0;
  f(&a);
}

We get before (20050113):
a1_2, is dereferenced, points-to anything

After:
a1_2, its value escapes, points-to anything


This is wrong, its value does not escape but is dereferenced in the asm.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |critical
           Priority|P2                          |P1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (11 preceding siblings ...)
  2005-02-25 15:43 ` pinskia at gcc dot gnu dot org
@ 2005-02-25 15:49 ` pinskia at gcc dot gnu dot org
  2005-02-25 20:42 ` dnovillo at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 15:49 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 06:08 -------
The obvious problem is that a tree_list is not an expression.
Changing:
      if (lhs && EXPR_P (lhs))
to
      if (lhs)

(Likewise for rhs)
Fixes the problem but it looks like it can have other effects which I am not ready to deal with.
Diego since it looks like you caused it, could you take a look at a better way of fixing this?
Maybe:
if (lhs && (TREE_CODE (lhs) == TREE_LIST || EXPR_P (lhs))
will works for everyone, it works for this testcase too but I have not bootstrapped or tested it yet.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (12 preceding siblings ...)
  2005-02-25 15:49 ` pinskia at gcc dot gnu dot org
@ 2005-02-25 20:42 ` dnovillo at gcc dot gnu dot org
  2005-02-25 21:12 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: dnovillo at gcc dot gnu dot org @ 2005-02-25 20:42 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From dnovillo at gcc dot gnu dot org  2005-02-25 15:04 -------
(In reply to comment #12)

> if (lhs && (TREE_CODE (lhs) == TREE_LIST || EXPR_P (lhs))
> will works for everyone, it works for this testcase too but I have not
> bootstrapped or tested it yet.
>
This is the right fix.  Could you bootstrap and test it?  A test case for this
would need a dg-scan test for two 'if ()' statements (i.e., we should not value
number the second if() out).


Thanks.  Diego.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (13 preceding siblings ...)
  2005-02-25 20:42 ` dnovillo at gcc dot gnu dot org
@ 2005-02-25 21:12 ` pinskia at gcc dot gnu dot org
  2005-02-25 21:19 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 21:12 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 15:17 -------
(In reply to comment #13)
> (In reply to comment #12)
> This is the right fix.  Could you bootstrap and test it?  A test case for this
> would need a dg-scan test for two 'if ()' statements (i.e., we should not value
> number the second if() out).
Will do.

-- Pinski

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pinskia at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (14 preceding siblings ...)
  2005-02-25 21:12 ` pinskia at gcc dot gnu dot org
@ 2005-02-25 21:19 ` pinskia at gcc dot gnu dot org
  2005-02-27  5:31 ` [Bug tree-optimization/20188] [4.0/4.1 " cvs-commit at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-25 21:19 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-25 15:35 -------
*** Bug 20210 has been marked as a duplicate of this bug. ***

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0/4.1 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (15 preceding siblings ...)
  2005-02-25 21:19 ` pinskia at gcc dot gnu dot org
@ 2005-02-27  5:31 ` cvs-commit at gcc dot gnu dot org
  2005-02-27  5:32 ` cvs-commit at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-02-27  5:31 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-26 16:15 -------
Subject: Bug 20188

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	pinskia@gcc.gnu.org	2005-02-26 16:15:26

Modified files:
	gcc            : ChangeLog tree-ssa-alias.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/gcc.dg/tree-ssa: inline_asm-1.c inline_asm-2.c 
	gcc/testsuite/gcc.dg: asm-b.c 

Log message:
	2005-02-26  Andrew Pinski  <pinskia@physics.uc.edu>
	
	PR tree-opt/20188
	* gcc.dg/tree-ssa/inline_asm-1.c: New test.
	* gcc.dg/tree-ssa/inline_asm-2.c: New test.
	* gcc.dg/asm-b.c: New test.
	
	2005-02-26  Andrew Pinski  <pinskia@physics.uc.edu>
	
	PR tree-opt/20188
	* tree-ssa-alias.c (count_uses_and_derefs): If we have TREE_LIST
	for the lhs, also walk over the tree.  Likewise for rhs.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7602&r2=2.7603
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-alias.c.diff?cvsroot=gcc&r1=2.71&r2=2.72
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.5087&r2=1.5088
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/tree-ssa/inline_asm-1.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/tree-ssa/inline_asm-2.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/asm-b.c.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0/4.1 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (16 preceding siblings ...)
  2005-02-27  5:31 ` [Bug tree-optimization/20188] [4.0/4.1 " cvs-commit at gcc dot gnu dot org
@ 2005-02-27  5:32 ` cvs-commit at gcc dot gnu dot org
  2005-02-27  5:40 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-02-27  5:32 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-02-26 16:24 -------
Subject: Bug 20188

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-4_0-branch
Changes by:	pinskia@gcc.gnu.org	2005-02-26 16:24:44

Modified files:
	gcc            : ChangeLog tree-ssa-alias.c 
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/gcc.dg: asm-b.c 
	gcc/testsuite/gcc.dg/tree-ssa: inline_asm-1.c inline_asm-2.c 

Log message:
	2005-02-26  Andrew Pinski  <pinskia@physics.uc.edu>
	
	PR tree-opt/20188
	* gcc.dg/tree-ssa/inline_asm-1.c: New test.
	* gcc.dg/tree-ssa/inline_asm-2.c: New test.
	* gcc.dg/asm-b.c: New test.
	
	2005-02-26  Andrew Pinski  <pinskia@physics.uc.edu>
	
	PR tree-opt/20188
	* tree-ssa-alias.c (count_uses_and_derefs): If we have TREE_LIST
	for the lhs, also walk over the tree.  Likewise for rhs.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=2.7592.2.6&r2=2.7592.2.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-alias.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=2.71&r2=2.71.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.5084.2.2&r2=1.5084.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/asm-b.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/tree-ssa/inline_asm-1.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/tree-ssa/inline_asm-2.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=NONE&r2=1.1.2.1



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0/4.1 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (17 preceding siblings ...)
  2005-02-27  5:32 ` cvs-commit at gcc dot gnu dot org
@ 2005-02-27  5:40 ` pinskia at gcc dot gnu dot org
  2005-02-27 14:59 ` danglin at gcc dot gnu dot org
  2005-02-27 15:50 ` pinskia at gcc dot gnu dot org
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-27  5:40 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-26 16:25 -------
Fixed, thanks for your report and thanks for looking into the problem a little more than most would 
look into it, it helped getting a short testcase and fixing the problem faster.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0/4.1 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (18 preceding siblings ...)
  2005-02-27  5:40 ` pinskia at gcc dot gnu dot org
@ 2005-02-27 14:59 ` danglin at gcc dot gnu dot org
  2005-02-27 15:50 ` pinskia at gcc dot gnu dot org
  20 siblings, 0 replies; 22+ messages in thread
From: danglin at gcc dot gnu dot org @ 2005-02-27 14:59 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From danglin at gcc dot gnu dot org  2005-02-27 04:04 -------
inline_asm-2 test fails on all hppa targets.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [Bug tree-optimization/20188] [4.0/4.1 Regression] asm and memory operands does not add a V_MAY_DEF
  2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
                   ` (19 preceding siblings ...)
  2005-02-27 14:59 ` danglin at gcc dot gnu dot org
@ 2005-02-27 15:50 ` pinskia at gcc dot gnu dot org
  20 siblings, 0 replies; 22+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-27 15:50 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-02-27 04:37 -------
(In reply to comment #21)
> inline_asm-2 test fails on all hppa targets.

Fails on all targets, I just committed a fix for this:
2005-02-26  Andrew Pinski  <pinskia@physics.uc.edu>

        * gcc.dg/tree-ssa/inline_asm-2.c: link_error produces
        a V_MAY_DEF also.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20188


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2005-02-27  4:37 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-02-24 16:14 [Bug other/20188] New: glibc-2.3.4 misscompilation pluto at pld-linux dot org
2005-02-24 16:14 ` [Bug other/20188] " pluto at pld-linux dot org
2005-02-24 17:25 ` pinskia at gcc dot gnu dot org
2005-02-24 23:49 ` pluto at pld-linux dot org
2005-02-25  0:29 ` pluto at pld-linux dot org
2005-02-25  1:00 ` [Bug middle-end/20188] [4.0 Regression] " pinskia at gcc dot gnu dot org
2005-02-25  1:12 ` [Bug tree-optimization/20188] " pinskia at gcc dot gnu dot org
2005-02-25  1:38 ` pinskia at gcc dot gnu dot org
2005-02-25  7:13 ` pluto at pld-linux dot org
2005-02-25 12:37 ` pinskia at gcc dot gnu dot org
2005-02-25 15:17 ` [Bug tree-optimization/20188] [4.0 Regression] asm and memory operands does not add a V_MAY_DEF pinskia at gcc dot gnu dot org
2005-02-25 15:30 ` pinskia at gcc dot gnu dot org
2005-02-25 15:43 ` pinskia at gcc dot gnu dot org
2005-02-25 15:49 ` pinskia at gcc dot gnu dot org
2005-02-25 20:42 ` dnovillo at gcc dot gnu dot org
2005-02-25 21:12 ` pinskia at gcc dot gnu dot org
2005-02-25 21:19 ` pinskia at gcc dot gnu dot org
2005-02-27  5:31 ` [Bug tree-optimization/20188] [4.0/4.1 " cvs-commit at gcc dot gnu dot org
2005-02-27  5:32 ` cvs-commit at gcc dot gnu dot org
2005-02-27  5:40 ` pinskia at gcc dot gnu dot org
2005-02-27 14:59 ` danglin at gcc dot gnu dot org
2005-02-27 15:50 ` pinskia at gcc dot gnu dot 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).