Command line: gcc -fschedule-insns testcase-1.c && ./a.out gcc -O[123s] -fschedule-insns testcase-2.c && ./a.out Tested revisions: r158486 - fail r158225 - OK 4.5 r158486 - OK Compiler output: $ /mnt/svn/gcc-trunk/binary-158486-lto-fortran/bin/gcc -O3 -fschedule-insns testcase.c && ./a.out Aborted
Testcase?
Created attachment 20416 [details] reduced testcase (from gcc.c-torture/execute/stdarg-2.c) Command line: $ gcc -fschedule-insns pr43799.c && ./a.out Aborted
Created attachment 20417 [details] reduced testcase (from gcc.c-torture/execute/stdarg-4.c) Command line: $ gcc -O3 -fschedule-insns pr43799-2.c && ./a.out Aborted Fails at all -O[123s] levels. At least with -O3 -fschedule-insns, this check: cmp edi, 5 # i, is missing in the generated code
Created attachment 20418 [details] list of testsuite failures (gcc, g++, fortran) $ make check RUNTESTFLAGS="--target_board=unix/-fschedule-insns" $ grep '^FAIL:' gcc/testsuite/*/*.log | grep ' exec' It's possible not all these failures are related to this PR. 4.5 r158486 passes the run without any execution failure.
It is caused by revision 158483: http://gcc.gnu.org/ml/gcc-cvs/2010-04/msg00589.html
A patch is posted at http://gcc.gnu.org/ml/gcc-patches/2010-05/msg00247.html
Subject: Bug 43799 Author: hjl Date: Tue May 4 18:51:29 2010 New Revision: 159040 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159040 Log: Add clobber CC register to sse_prologue_save patterns. gcc/ 2010-05-04 H.J. Lu <hongjiu.lu@intel.com> PR target/43799 * config/i386/i386.md (sse_prologue_save): Add clobber CC register. (*sse_prologue_save_insn1): Likewise. (SSE prologue save splitter): Likewise. gcc/testsuite/ 2010-05-04 H.J. Lu <hongjiu.lu@intel.com> PR target/43799 * gcc.target/i386/pr43799.c: New. Added: trunk/gcc/testsuite/gcc.target/i386/pr43799.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.md trunk/gcc/testsuite/ChangeLog
Fixed.