This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[RFA:] fix PR40249 crtstuff build breakage caused by inline change. Documentation needs fixing!
- From: Hans-Peter Nilsson <hans-peter dot nilsson at axis dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: hubicka at gcc dot gnu dot org
- Date: Tue, 26 May 2009 21:48:51 +0200
- Subject: [RFA:] fix PR40249 crtstuff build breakage caused by inline change. Documentation needs fixing!
I won't fix the documentation; here's just a patch to fix the
build breakage.
This patch replaces -fno-inline-functions with -fno-inline when
building crtstuff. Apparently, as Richi mentioned in the PR
trail, the recent inline changes made -fno-inline-function be
just a parameter-tweaking option, or it already was, and the
change made it just pass a threshold, so that the crtstuff
trickery with sections behind gcc's back finally broke.
Anyhow, recent-or-not, the disarmament of -fno-inline-function
is inconsistent with the documentation, which says that
-fno-inline-functions is the option to use to avoid "spontaneous
inlining". The documentation doesn't even mention -finline at
all!
So, hoping that the behavior is actually correct, here's a patch
in that direction to fix the build. Now cris-elf builds again,
regtest shows no regressions since last successful build, FWIW.
Ok to commit?
PR middle-end/40249
* Makefile.in (CRTSTUFF_CFLAGS): Replace -fno-inline-functions
with -fno-inline.
Index: gcc/Makefile.in
===================================================================
--- gcc/Makefile.in (revision 147868)
+++ gcc/Makefile.in (working copy)
@@ -599,7 +599,7 @@ TARGET_LIBGCC2_CFLAGS =
# Options to use when compiling crtbegin/end.
CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \
- -finhibit-size-directive -fno-inline-functions -fno-exceptions \
+ -finhibit-size-directive -fno-inline -fno-exceptions \
-fno-zero-initialized-in-bss -fno-toplevel-reorder -fno-tree-vectorize \
$(INHIBIT_LIBC_CFLAGS)
brgds, H-P