This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: optimization/496
- To: nobody at gcc dot gnu dot org
- Subject: Re: optimization/496
- From: Steve Roome <steve at sse0691 dot bri dot hp dot com>
- Date: 31 Aug 2000 12:56:01 -0000
- Cc: gcc-prs at gcc dot gnu dot org,
- Reply-To: Steve Roome <steve at sse0691 dot bri dot hp dot com>
The following reply was made to PR optimization/496; it has been noted by GNATS.
From: Steve Roome <steve@sse0691.bri.hp.com>
To: gcc-gnats@gcc.gnu.org, nobody@gcc.gnu.org
Cc:
Subject: Re: optimization/496
Date: Thu, 31 Aug 2000 13:57:21 +0100
More information I've managed to find on this problem :
gcc -O0 -march=pentiumpro -mno-move seems to be the minium
required options (same effect with or without -O0).
This dies with a minimal test program as follows :
steve@moose 56 0 % cat -n test.c
1 #include <stdio.h>
2
3 int main() {
4 int i=1000;
5 while (i--) { printf("%d\n", i);}
6 return i;
7 }
It dies thus :
Using builtin specs.
gcc version 2.95.2 19991024 (release)
/usr/libexec/cpp -lang-c -v -D__GNUC__=2 -D__GNUC_MINOR__=95 -Di386 -Dunix -D__FreeBSD__=4 -D__FreeBSD_cc_version=410000 -D__i386__ -D__unix__ -D__FreeBSD__=4 -D__FreeBSD_cc_version=410000 -D__i386 -D__unix -Acpu(i386) -Amachine(i386) -Asystem(unix) -Asystem(FreeBSD) -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__ELF__ test.c test.i
GNU CPP version 2.95.2 19991024 (release) (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 test.i -quiet -dumpbase test.c -march=pentiumpro -mno-move -version -o test.s
GNU C version 2.95.2 19991024 (release) (i386-unknown-freebsd) compiled by GNU C version 2.95.2 19991024 (release).
test.c: In function `main':
test.c:7: internal error--unrecognizable insn:
(insn 23 21 25 (set (mem:SI (pre_dec:SI (reg:SI 7 %esp)) 0)
(mem/f:SI (plus:SI (reg:SI 6 %ebp)
(const_int -4 [0xfffffffc])) 0)) -1 (nil)
(nil))
Looks bad, if anyone who knows enough about gcc internals starts
looking at this, I am happy to run tests, try things, in case it turns
out to be FreeBSD specific and I need to bug FreeBSD folks only.