[Bug target/70064] Wrong code with custom flags and quite big testcase @ i686

zsojka at seznam dot cz gcc-bugzilla@gcc.gnu.org
Fri Mar 4 11:19:00 GMT 2016


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70064

--- Comment #7 from Zdenek Sojka <zsojka at seznam dot cz> ---
(In reply to Uroš Bizjak from comment #4)
> (In reply to Zdenek Sojka from comment #0)
> > Created attachment 37854 [details]
> > autoreduced testcase
> > 
> > The testcase is likely very fragile due to the set of compiler flags and
> > quite big testcase itself. Neither seems to be easily reducible.
> > 
> > Output:
> > $ i686-pc-linux-gnu-gcc -Os -march=athlon-tbird -fPIC -fsched-pressure
> > -fsched-stalled-insns -fschedule-insns -fno-tree-reassoc
> > -momit-leaf-frame-pointer -mpclmul -mred-zone -mno-stv
> > -fira-algorithm=priority --param=max-sched-ready-insns=0 testcase.c
> > -Wno-psabi
> 
> Oh... Red zone is not allowed on x86_32 linux.

Ok, thanks, I thought -mred-zone is a no-op, if unsupported; but apparently it
is not.

I wonder if the testcase fails just because the red zone is unsupported on the
architecture, or if there is actually a bug that data in the red zone are not
invalidated due to the call. (technically, one can define his own x86 ABI with
-mred-zone and, say, -mregparm=3 (which is supported))


More information about the Gcc-bugs mailing list