public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap
@ 2008-08-07 13:08 hjl dot tools at gmail dot com
2008-08-07 13:22 ` [Bug target/37048] " hjl dot tools at gmail dot com
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2008-08-07 13:08 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1957 bytes --]
Revision 138835 breaks bootstrap on Linux/x86-64:
[hjl@gnu-33 zlib]$ /export/gnu/import/svn/gcc-test/bld/./prev-gcc/xgcc
-B/export/gnu/import/svn/gcc-test/bld/./prev-gcc/
-B/usr/local/x86_64-unknown-linux-gnu/bin/ -DPACKAGE_NAME=\"\"
-DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"zlib\" -DVERSION=\"1.1.4\"
-DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
-DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1
-DHAVE_MEMCPY=1 -DHAVE_STRERROR=1 -DHAVE_UNISTD_H=1 -I. -I../../src/zlib
-g -O2 -c -o libz_a-gzio.o `test -f 'gzio.c' || echo '../../src/zlib/'`gzio.c
../../src/zlib/gzio.c: In function âgzseekâ:
../../src/zlib/gzio.c:852: error: unrecognizable insn:
(insn 53 248 54 15 ../../src/zlib/gzio.c:792 (parallel [
(set (mem:QI (reg:DI 77) [0 S1 A8])
(subreg:QI (reg:SI 79) 0))
(set (reg:DI 77)
(plus:DI (reg:DI 77)
(const_int 1 [0x1])))
]) -1 (nil))
../../src/zlib/gzio.c:852: internal compiler error: in extract_insn, at
recog.c:1988
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
[hjl@gnu-33 zlib]$
Gcc was configured with --enable-checking=assert --enable-clocale=gnu
--with-sy
stem-zlib --enable-shared --with-demangler-in-ld.
--
Summary: [4.4 Regression] Revision 138835 breaks bootstrap
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: blocker
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
@ 2008-08-07 13:22 ` hjl dot tools at gmail dot com
2008-08-07 13:22 ` hjl dot tools at gmail dot com
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2008-08-07 13:22 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from hjl dot tools at gmail dot com 2008-08-07 13:20 -------
*** Bug 37045 has been marked as a duplicate of this bug. ***
--
hjl dot tools at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jv244 at cam dot ac dot uk
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
2008-08-07 13:22 ` [Bug target/37048] " hjl dot tools at gmail dot com
@ 2008-08-07 13:22 ` hjl dot tools at gmail dot com
2008-08-07 13:49 ` hjl dot tools at gmail dot com
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2008-08-07 13:22 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from hjl dot tools at gmail dot com 2008-08-07 13:21 -------
It also happens on Linux/ia32.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
2008-08-07 13:22 ` [Bug target/37048] " hjl dot tools at gmail dot com
2008-08-07 13:22 ` hjl dot tools at gmail dot com
@ 2008-08-07 13:49 ` hjl dot tools at gmail dot com
2008-08-07 14:32 ` jh at suse dot cz
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2008-08-07 13:49 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1282 bytes --]
------- Comment #3 from hjl dot tools at gmail dot com 2008-08-07 13:47 -------
[hjl@gnu-3 prev-gcc]$ cat ../zlib/x.c
typedef struct gz_stream {
char *inbuf;
long offset;
} gz_stream;
void *malloc(__SIZE_TYPE__ size);
long
foo (void * file, long offset)
{
gz_stream *s = (gz_stream*)file;
if (s->inbuf == 0) {
s->inbuf = malloc (2000);
if (s->inbuf == 0) return -1L;
__builtin_memset (s->inbuf, 0, 2000);
}
while (offset > 0) {
unsigned int size = 2000;
offset -= size;
}
return s->offset;
}
[hjl@gnu-3 prev-gcc]$ ./xgcc -B./ -O2 -S ../zlib/x.c
../zlib/x.c: In function âfooâ:
../zlib/x.c:23: error: unrecognizable insn:
(insn 33 84 34 8 ../zlib/x.c:16 (parallel [
(set (mem:QI (reg:SI 67) [0 S1 A8])
(subreg:QI (reg:SI 69) 0))
(set (reg:SI 67)
(plus:SI (reg:SI 67)
(const_int 1 [0x1])))
]) -1 (nil))
../zlib/x.c:23: internal compiler error: in extract_insn, at recog.c:1988
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
[hjl@gnu-3 prev-gcc]$
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
` (2 preceding siblings ...)
2008-08-07 13:49 ` hjl dot tools at gmail dot com
@ 2008-08-07 14:32 ` jh at suse dot cz
2008-08-07 14:53 ` hjl dot tools at gmail dot com
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jh at suse dot cz @ 2008-08-07 14:32 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from jh at suse dot cz 2008-08-07 14:30 -------
Subject: Re: [4.4 Regression] Revision 138835 breaks bootstrap
Hi,
thanks for testcase, for some reason it does not reproduce on our
testing setup, probably due to ancient glibc that still has
memcpy/memset inlines.
This patch should fix it, I am testing it right now but I am not sure I
will be able to commit before tomorro wunforutnately.
The problem is that we now use single stringops on optimize_size
regions, but the patterns are disabled. It is not problem to enable
them; we never produce them directly, only via the stringop expanders.
(at least I am convinced combine won't produce this)
Honza
* i386.md (single stringop patterns): Enable unconditionally.
Index: config/i386/i386.md
===================================================================
*** config/i386/i386.md (revision 138835)
--- config/i386/i386.md (working copy)
***************
*** 18652,18658 ****
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 8)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movsq"
[(set_attr "type" "str")
(set_attr "mode" "DI")
--- 18652,18658 ----
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 8)))]
! "TARGET_64BIT"
"movsq"
[(set_attr "type" "str")
(set_attr "mode" "DI")
***************
*** 18667,18673 ****
(set (match_operand:SI 1 "register_operand" "=S")
(plus:SI (match_dup 3)
(const_int 4)))]
! "!TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movs{l|d}"
[(set_attr "type" "str")
(set_attr "mode" "SI")
--- 18667,18673 ----
(set (match_operand:SI 1 "register_operand" "=S")
(plus:SI (match_dup 3)
(const_int 4)))]
! "!TARGET_64BIT"
"movs{l|d}"
[(set_attr "type" "str")
(set_attr "mode" "SI")
***************
*** 18682,18688 ****
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 4)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movs{l|d}"
[(set_attr "type" "str")
(set_attr "mode" "SI")
--- 18682,18688 ----
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 4)))]
! "TARGET_64BIT"
"movs{l|d}"
[(set_attr "type" "str")
(set_attr "mode" "SI")
***************
*** 18697,18703 ****
(set (match_operand:SI 1 "register_operand" "=S")
(plus:SI (match_dup 3)
(const_int 2)))]
! "!TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movsw"
[(set_attr "type" "str")
(set_attr "memory" "both")
--- 18697,18703 ----
(set (match_operand:SI 1 "register_operand" "=S")
(plus:SI (match_dup 3)
(const_int 2)))]
! "!TARGET_64BIT"
"movsw"
[(set_attr "type" "str")
(set_attr "memory" "both")
***************
*** 18712,18718 ****
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 2)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movsw"
[(set_attr "type" "str")
(set_attr "memory" "both")
--- 18712,18718 ----
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 2)))]
! "TARGET_64BIT"
"movsw"
[(set_attr "type" "str")
(set_attr "memory" "both")
***************
*** 18727,18733 ****
(set (match_operand:SI 1 "register_operand" "=S")
(plus:SI (match_dup 3)
(const_int 1)))]
! "!TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movsb"
[(set_attr "type" "str")
(set_attr "memory" "both")
--- 18727,18733 ----
(set (match_operand:SI 1 "register_operand" "=S")
(plus:SI (match_dup 3)
(const_int 1)))]
! "!TARGET_64BIT"
"movsb"
[(set_attr "type" "str")
(set_attr "memory" "both")
***************
*** 18742,18748 ****
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 1)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"movsb"
[(set_attr "type" "str")
(set_attr "memory" "both")
--- 18742,18748 ----
(set (match_operand:DI 1 "register_operand" "=S")
(plus:DI (match_dup 3)
(const_int 1)))]
! "TARGET_64BIT"
"movsb"
[(set_attr "type" "str")
(set_attr "memory" "both")
***************
*** 18917,18923 ****
(match_operand 2 "register_operand" ""))
(set (match_operand 0 "register_operand" "")
(match_operand 3 "" ""))])]
! "TARGET_SINGLE_STRINGOP"
"ix86_current_function_needs_cld = 1;")
(define_insn "*strsetdi_rex_1"
--- 18917,18923 ----
(match_operand 2 "register_operand" ""))
(set (match_operand 0 "register_operand" "")
(match_operand 3 "" ""))])]
! ""
"ix86_current_function_needs_cld = 1;")
(define_insn "*strsetdi_rex_1"
***************
*** 18926,18932 ****
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 8)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stosq"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18926,18932 ----
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 8)))]
! "TARGET_64BIT"
"stosq"
[(set_attr "type" "str")
(set_attr "memory" "store")
***************
*** 18938,18944 ****
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_dup 1)
(const_int 4)))]
! "!TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stos{l|d}"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18938,18944 ----
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_dup 1)
(const_int 4)))]
! "!TARGET_64BIT"
"stos{l|d}"
[(set_attr "type" "str")
(set_attr "memory" "store")
***************
*** 18950,18956 ****
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 4)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stos{l|d}"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18950,18956 ----
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 4)))]
! "TARGET_64BIT"
"stos{l|d}"
[(set_attr "type" "str")
(set_attr "memory" "store")
***************
*** 18962,18968 ****
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_dup 1)
(const_int 2)))]
! "!TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stosw"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18962,18968 ----
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_dup 1)
(const_int 2)))]
! "!TARGET_64BIT"
"stosw"
[(set_attr "type" "str")
(set_attr "memory" "store")
***************
*** 18974,18980 ****
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 2)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stosw"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18974,18980 ----
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 2)))]
! "TARGET_64BIT"
"stosw"
[(set_attr "type" "str")
(set_attr "memory" "store")
***************
*** 18986,18992 ****
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_dup 1)
(const_int 1)))]
! "!TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stosb"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18986,18992 ----
(set (match_operand:SI 0 "register_operand" "=D")
(plus:SI (match_dup 1)
(const_int 1)))]
! "!TARGET_64BIT"
"stosb"
[(set_attr "type" "str")
(set_attr "memory" "store")
***************
*** 18998,19004 ****
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 1)))]
! "TARGET_64BIT && TARGET_SINGLE_STRINGOP"
"stosb"
[(set_attr "type" "str")
(set_attr "memory" "store")
--- 18998,19004 ----
(set (match_operand:DI 0 "register_operand" "=D")
(plus:DI (match_dup 1)
(const_int 1)))]
! "TARGET_64BIT"
"stosb"
[(set_attr "type" "str")
(set_attr "memory" "store")
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
` (3 preceding siblings ...)
2008-08-07 14:32 ` jh at suse dot cz
@ 2008-08-07 14:53 ` hjl dot tools at gmail dot com
2008-08-07 14:57 ` hubicka at gcc dot gnu dot org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2008-08-07 14:53 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from hjl dot tools at gmail dot com 2008-08-07 14:52 -------
(In reply to comment #4)
> Subject: Re: [4.4 Regression] Revision 138835 breaks bootstrap
>
> Hi,
> thanks for testcase, for some reason it does not reproduce on our
> testing setup, probably due to ancient glibc that still has
> memcpy/memset inlines.
>
> This patch should fix it, I am testing it right now but I am not sure I
> will be able to commit before tomorro wunforutnately.
> The problem is that we now use single stringops on optimize_size
> regions, but the patterns are disabled. It is not problem to enable
> them; we never produce them directly, only via the stringop expanders.
> (at least I am convinced combine won't produce this)
>
I am testing it now. I will commit it for you if it works and no one
beats me on it. Thanks.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
` (4 preceding siblings ...)
2008-08-07 14:53 ` hjl dot tools at gmail dot com
@ 2008-08-07 14:57 ` hubicka at gcc dot gnu dot org
2008-08-07 17:24 ` hjl dot tools at gmail dot com
2008-08-10 20:21 ` pinskia at gcc dot gnu dot org
7 siblings, 0 replies; 9+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2008-08-07 14:57 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from hubicka at gcc dot gnu dot org 2008-08-07 14:56 -------
Subject: Bug 37048
Author: hubicka
Date: Thu Aug 7 14:55:32 2008
New Revision: 138841
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=138841
Log:
PR target/37048
* i386.md (single stringop patterns): Enable unconditionally.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.md
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
` (5 preceding siblings ...)
2008-08-07 14:57 ` hubicka at gcc dot gnu dot org
@ 2008-08-07 17:24 ` hjl dot tools at gmail dot com
2008-08-10 20:21 ` pinskia at gcc dot gnu dot org
7 siblings, 0 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2008-08-07 17:24 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from hjl dot tools at gmail dot com 2008-08-07 17:23 -------
Fixed.
--
hjl dot tools at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/37048] [4.4 Regression] Revision 138835 breaks bootstrap
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
` (6 preceding siblings ...)
2008-08-07 17:24 ` hjl dot tools at gmail dot com
@ 2008-08-10 20:21 ` pinskia at gcc dot gnu dot org
7 siblings, 0 replies; 9+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2008-08-10 20:21 UTC (permalink / raw)
To: gcc-bugs
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
GCC target triplet| |i?86-*-*
Keywords| |build, ice-on-valid-code
Target Milestone|--- |4.4.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37048
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2008-08-10 20:21 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-08-07 13:08 [Bug target/37048] New: [4.4 Regression] Revision 138835 breaks bootstrap hjl dot tools at gmail dot com
2008-08-07 13:22 ` [Bug target/37048] " hjl dot tools at gmail dot com
2008-08-07 13:22 ` hjl dot tools at gmail dot com
2008-08-07 13:49 ` hjl dot tools at gmail dot com
2008-08-07 14:32 ` jh at suse dot cz
2008-08-07 14:53 ` hjl dot tools at gmail dot com
2008-08-07 14:57 ` hubicka at gcc dot gnu dot org
2008-08-07 17:24 ` hjl dot tools at gmail dot com
2008-08-10 20:21 ` 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).