public inbox for gcc-prs@sourceware.org help / color / mirror / Atom feed
From: mflaster@lucent.com To: gcc-gnats@gcc.gnu.org Subject: optimization/6537: For -O (but not -O2 or -O0) incorrect assembly is generated Date: Wed, 01 May 2002 12:56:00 -0000 [thread overview] Message-ID: <20020501195549.31864.qmail@sources.redhat.com> (raw) >Number: 6537 >Category: optimization >Synopsis: For -O (but not -O2 or -O0) incorrect assembly is generated >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Wed May 01 12:56:01 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Michael Flaster >Release: gcc version 2.95.3 20010315 (release) >Organization: >Environment: FreeBSD 4.4-RELEASE #0 >Description: When compiling the gzip compression library (zlib), some incorrect assembler seems to be generated. Here is a snipped from the .c source: line 201: f = q - c->sub.copy.dist; while (f < s->window) { f += s->end - s->window; } Here is the generated .s: .stabn 68,0,203,.LM75-inflate_codes .LM75: movl 8(%ebp),%edx cmpl 40(%edx),%eax ' Compare s->window (40(%edx)) with f jae .L107 movl 40(%edx),%eax ' Move s->window eax movl %edx,%ecx ' ? Curious movl 44(%ecx),%edx ' Move s->end to edx subl %eax,%edx ' Sub and put result in edx movl 40(%edx),%eax ' ??? Dereference the difference. It seems to be trying to put s->window back in eax - except that edx no longer has a pointer to s. I am attaching the compressed .i file. The output of the compile line is: nstg24:~/lucent/ews/zlib-1.1.4> cc -v -save-temps -g -O -DNO_DEFLATE -D_REENTRANT -c -o infcodes.o infcodes.c Using builtin specs. gcc version 2.95.3 20010315 (release) [FreeBSD] /usr/libexec/cpp0 -lang-c -v -D__GNUC__=2 -D__GNUC_MINOR__=95 -Di386 -D__FreeBSD__=4 -D__FreeBSD_cc_version=440000 -Dunix -D__i386__ -D__FreeBSD__=4 -D__FreeBSD_cc_version=440000 -D__unix__ -D__i386 -D__unix -Acpu(i386) -Amachine(i386) -Asystem(unix) -Asystem(FreeBSD) -D__OPTIMIZE__ -g -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__ELF__ -DNO_DEFLATE -D_REENTRANT infcodes.c infcodes.i GNU CPP version 2.95.3 20010315 (release) [FreeBSD] (i386 FreeBSD/ELF) #include "..." search starts here: #include <...> search starts here: /usr/include /usr/include End of search list. The following default directories have been omitted from the search path: /usr/include/g++ End of omitted list. /usr/libexec/cc1 infcodes.i -quiet -dumpbase infcodes.c -g -O -version -o infcodes.s GNU C version 2.95.3 20010315 (release) [FreeBSD] (i386-unknown-freebsd) compiled by GNU C version 2.95.3 20010315 (release) [FreeBSD]. /usr/libexec/elf/as -v -o infcodes.o infcodes.s GNU assembler version 2.11.2 20010719 [FreeBSD] (i386-unknown-freebsd4) using BFD version 2.11.2 20010719 [FreeBSD] I've tried this on other FreeBSD machines in our lab, some running gcc 2.95.2, some running 3.0.4, and I seem to get the exact same problem. Adding printf's near the source lines in question, or changing the optimization level, makes the problem go away. Thanks in advance! Michael Flaster >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/x-gzip-compressed; name="infcodes.i.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="infcodes.i.gz" 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 y9kSv1sMgYb4ZCTEgUc2/wZpZ6otGWAAAA==
next reply other threads:[~2002-05-01 19:56 UTC|newest] Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top 2002-05-01 12:56 mflaster [this message] 2003-02-19 10:48 ebotcazou
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20020501195549.31864.qmail@sources.redhat.com \ --to=mflaster@lucent.com \ --cc=gcc-gnats@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).