Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Jul 2003 14:40:29 -0500
From:      "Jacques A. Vidrine" <nectar@FreeBSD.org>
To:        Nate Lawson <nate@root.org>
Cc:        current@freebsd.org
Subject:   Re: warning: inlining failed
Message-ID:  <20030718194029.GC70721@madman.celabo.org>
In-Reply-To: <20030718121511.I26395@root.org>
References:  <20030718121511.I26395@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jul 18, 2003 at 12:18:14PM -0700, Nate Lawson wrote:
> Warner mentioned this was due to the gcc import.  Nearly every part of the
> kernel that uses newbus or buf.h prints out lots of warnings.  Can someone
> see about fixing this, whether it's by fixing our headers or build flags
> or gcc itself?  I've already wasted a few reboot cycles because valid
> warnings were lost in the crowd.
> 
> cc -O -pipe -mcpu=pentiumpro  -D_KERNEL -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99 -DKLD_MODULE -nostdinc -I-   -I. -I@ -I@/dev -I@/../include -I/usr/include -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99 -c
> /home/src/sys/modules/ext2fs/../../gnu/ext2fs/ext2_vfsops.c
> /home/src/sys/gnu/ext2fs/ext2_vfsops.c: In function `compute_sb_data':
> @/sys/buf.h:281: warning: inlining failed in call to `BUF_LOCK'
> /home/src/sys/gnu/ext2fs/ext2_vfsops.c:496: warning: called from here
> /home/src/sys/gnu/ext2fs/ext2_vfsops.c: In function `ext2_unmount':
> @/sys/buf.h:281: warning: inlining failed in call to `BUF_LOCK'
> /home/src/sys/gnu/ext2fs/ext2_vfsops.c:774: warning: called from here
> @/sys/buf.h:281: warning: inlining failed in call to `BUF_LOCK'
> /home/src/sys/gnu/ext2fs/ext2_vfsops.c:780: warning: called from here
> @/sys/buf.h:281: warning: inlining failed in call to `BUF_LOCK'
> /home/src/sys/gnu/ext2fs/ext2_vfsops.c:784: warning: called from here

Does `-finline-limit=1200' (or bigger) help?

I think GCC 3.3 added a warning for when inline functions generated `a
lot' of instructions.  In such a case, the function is not inlined.  I
believe this also happened with GCC 3.2, but it just didn't normally
tell you about it.

Cheers,
-- 
Jacques Vidrine   . NTT/Verio SME      . FreeBSD UNIX       . Heimdal
nectar@celabo.org . jvidrine@verio.net . nectar@freebsd.org . nectar@kth.se



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030718194029.GC70721>