diff mbox series

[U-Boot] Makefile: Disable stack-usage check for ARC

Message ID 20180402091802.23753-1-abrodkin@synopsys.com
State Accepted
Commit 948071bab44d3cbb0e1f4828739fcf0f27312d37
Delegated to: Tom Rini
Headers show
Series [U-Boot] Makefile: Disable stack-usage check for ARC | expand

Commit Message

Alexey Brodkin April 2, 2018, 9:18 a.m. UTC
With the most recent tools for ARC (arc-2017.09) in case of
"naked" function compiler throws a warning:
---------------------------------->8-----------------------------
board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
 }
 ^
---------------------------------->8-----------------------------

That happens because the compiler doesn't handle "naked" functions
as a special case where stack calculation shouldn't be done.

But for now until this is fixed in GCC to get clean buildman output
we're disabling stack-usage check for ARC.

See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
for more background.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Tom Rini <trini@konsulko.com>
---
 Makefile | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Tom Rini April 3, 2018, 8:17 p.m. UTC | #1
On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:

> With the most recent tools for ARC (arc-2017.09) in case of
> "naked" function compiler throws a warning:
> ---------------------------------->8-----------------------------
> board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
>  }
>  ^
> ---------------------------------->8-----------------------------
> 
> That happens because the compiler doesn't handle "naked" functions
> as a special case where stack calculation shouldn't be done.
> 
> But for now until this is fixed in GCC to get clean buildman output
> we're disabling stack-usage check for ARC.
> 
> See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> for more background.
> 
> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> Cc: Tom Rini <trini@konsulko.com>

Erm, this patch isn't working for me.  I take the current ARC PR, and
apply this, and I still see the warning showing up.
Alexey Brodkin April 3, 2018, 8:21 p.m. UTC | #2
Hi Tom,

On Tue, 2018-04-03 at 16:17 -0400, Tom Rini wrote:
> On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:
> 
> > With the most recent tools for ARC (arc-2017.09) in case of
> > "naked" function compiler throws a warning:
> > ---------------------------------->8-----------------------------
> > board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> > board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
> >  }
> >  ^
> > ---------------------------------->8-----------------------------
> > 
> > That happens because the compiler doesn't handle "naked" functions
> > as a special case where stack calculation shouldn't be done.
> > 
> > But for now until this is fixed in GCC to get clean buildman output
> > we're disabling stack-usage check for ARC.
> > 
> > See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> > for more background.
> > 
> > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> > Cc: Tom Rini <trini@konsulko.com>
> 
> Erm, this patch isn't working for me.  I take the current ARC PR, and
> apply this, and I still see the warning showing up.

How do you see an issue?
Could you please make sure arc-2017.09 tools are used but not arc-2016.09?
See my change for TravisCI in the same PR.

-Alexey
Tom Rini April 3, 2018, 8:25 p.m. UTC | #3
On Tue, Apr 03, 2018 at 08:21:06PM +0000, Alexey Brodkin wrote:
> Hi Tom,
> 
> On Tue, 2018-04-03 at 16:17 -0400, Tom Rini wrote:
> > On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:
> > 
> > > With the most recent tools for ARC (arc-2017.09) in case of
> > > "naked" function compiler throws a warning:
> > > ---------------------------------->8-----------------------------
> > > board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> > > board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
> > >  }
> > >  ^
> > > ---------------------------------->8-----------------------------
> > > 
> > > That happens because the compiler doesn't handle "naked" functions
> > > as a special case where stack calculation shouldn't be done.
> > > 
> > > But for now until this is fixed in GCC to get clean buildman output
> > > we're disabling stack-usage check for ARC.
> > > 
> > > See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> > > for more background.
> > > 
> > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> > > Cc: Tom Rini <trini@konsulko.com>
> > 
> > Erm, this patch isn't working for me.  I take the current ARC PR, and
> > apply this, and I still see the warning showing up.
> 
> How do you see an issue?
> Could you please make sure arc-2017.09 tools are used but not arc-2016.09?
> See my change for TravisCI in the same PR.

... but the patch here is disabling -fstack-usage altogether for ARC,
yes?
Alexey Brodkin April 3, 2018, 8:27 p.m. UTC | #4
Hi Tom,

On Tue, 2018-04-03 at 16:25 -0400, Tom Rini wrote:
> On Tue, Apr 03, 2018 at 08:21:06PM +0000, Alexey Brodkin wrote:
> > Hi Tom,
> > 
> > On Tue, 2018-04-03 at 16:17 -0400, Tom Rini wrote:
> > > On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:
> > > 
> > > > With the most recent tools for ARC (arc-2017.09) in case of
> > > > "naked" function compiler throws a warning:
> > > > ---------------------------------->8-----------------------------
> > > > board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> > > > board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
> > > >  }
> > > >  ^
> > > > ---------------------------------->8-----------------------------
> > > > 
> > > > That happens because the compiler doesn't handle "naked" functions
> > > > as a special case where stack calculation shouldn't be done.
> > > > 
> > > > But for now until this is fixed in GCC to get clean buildman output
> > > > we're disabling stack-usage check for ARC.
> > > > 
> > > > See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> > > > for more background.
> > > > 
> > > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > > Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> > > > Cc: Tom Rini <trini@konsulko.com>
> > > 
> > > Erm, this patch isn't working for me.  I take the current ARC PR, and
> > > apply this, and I still see the warning showing up.
> > 
> > How do you see an issue?
> > Could you please make sure arc-2017.09 tools are used but not arc-2016.09?
> > See my change for TravisCI in the same PR.
> 
> ... but the patch here is disabling -fstack-usage altogether for ARC,
> yes?

Right, but that's a temporary "patch" for the problem in hand.
Once GCC 8.x gets released we'll just switch to it and that problem shouldn't
bother us any longer.

-Alexey
Tom Rini April 3, 2018, 8:49 p.m. UTC | #5
On Tue, Apr 03, 2018 at 08:27:20PM +0000, Alexey Brodkin wrote:
> Hi Tom,
> 
> On Tue, 2018-04-03 at 16:25 -0400, Tom Rini wrote:
> > On Tue, Apr 03, 2018 at 08:21:06PM +0000, Alexey Brodkin wrote:
> > > Hi Tom,
> > > 
> > > On Tue, 2018-04-03 at 16:17 -0400, Tom Rini wrote:
> > > > On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:
> > > > 
> > > > > With the most recent tools for ARC (arc-2017.09) in case of
> > > > > "naked" function compiler throws a warning:
> > > > > ---------------------------------->8-----------------------------
> > > > > board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> > > > > board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
> > > > >  }
> > > > >  ^
> > > > > ---------------------------------->8-----------------------------
> > > > > 
> > > > > That happens because the compiler doesn't handle "naked" functions
> > > > > as a special case where stack calculation shouldn't be done.
> > > > > 
> > > > > But for now until this is fixed in GCC to get clean buildman output
> > > > > we're disabling stack-usage check for ARC.
> > > > > 
> > > > > See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> > > > > for more background.
> > > > > 
> > > > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > > > Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> > > > > Cc: Tom Rini <trini@konsulko.com>
> > > > 
> > > > Erm, this patch isn't working for me.  I take the current ARC PR, and
> > > > apply this, and I still see the warning showing up.
> > > 
> > > How do you see an issue?
> > > Could you please make sure arc-2017.09 tools are used but not arc-2016.09?
> > > See my change for TravisCI in the same PR.
> > 
> > ... but the patch here is disabling -fstack-usage altogether for ARC,
> > yes?
> 
> Right, but that's a temporary "patch" for the problem in hand.
> Once GCC 8.x gets released we'll just switch to it and that problem shouldn't
> bother us any longer.

OK.  But this patch doesn't work and we're trying -fstack-usage is the
problem I see :)
Alexey Brodkin April 4, 2018, 8:51 a.m. UTC | #6
Hi Tom,

On Tue, 2018-04-03 at 16:49 -0400, Tom Rini wrote:
> On Tue, Apr 03, 2018 at 08:27:20PM +0000, Alexey Brodkin wrote:
> > Hi Tom,
> > 
> > On Tue, 2018-04-03 at 16:25 -0400, Tom Rini wrote:
> > > On Tue, Apr 03, 2018 at 08:21:06PM +0000, Alexey Brodkin wrote:
> > > > Hi Tom,
> > > > 
> > > > On Tue, 2018-04-03 at 16:17 -0400, Tom Rini wrote:
> > > > > On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:
> > > > > 
> > > > > > With the most recent tools for ARC (arc-2017.09) in case of
> > > > > > "naked" function compiler throws a warning:
> > > > > > ---------------------------------->8-----------------------------
> > > > > > board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> > > > > > board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
> > > > > >  }
> > > > > >  ^
> > > > > > ---------------------------------->8-----------------------------
> > > > > > 
> > > > > > That happens because the compiler doesn't handle "naked" functions
> > > > > > as a special case where stack calculation shouldn't be done.
> > > > > > 
> > > > > > But for now until this is fixed in GCC to get clean buildman output
> > > > > > we're disabling stack-usage check for ARC.
> > > > > > 
> > > > > > See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> > > > > > for more background.
> > > > > > 
> > > > > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > > > > Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> > > > > > Cc: Tom Rini <trini@konsulko.com>
> > > > > 
> > > > > Erm, this patch isn't working for me.  I take the current ARC PR, and
> > > > > apply this, and I still see the warning showing up.
> > > > 
> > > > How do you see an issue?
> > > > Could you please make sure arc-2017.09 tools are used but not arc-2016.09?
> > > > See my change for TravisCI in the same PR.
> > > 
> > > ... but the patch here is disabling -fstack-usage altogether for ARC,
> > > yes?
> > 
> > Right, but that's a temporary "patch" for the problem in hand.
> > Once GCC 8.x gets released we'll just switch to it and that problem shouldn't
> > bother us any longer.
> 
> OK.  But this patch doesn't work and we're trying -fstack-usage is the
> problem I see :)

Well probably I'm missing something :)

Here's a TravisCI job for ARC that passes perfectly fine:
https://travis-ci.org/abrodkin/u-boot/jobs/362026822

Stuff that is built there is here:
https://github.com/abrodkin/u-boot/commits/staging-arc

Basically it's:
 * v2018.05-rc1 +
 * My last PR (tags/arc-for-2018.05) +
 * [This] "disable stack-usage" patch

------------------------>8------------------------
# git log --oneline
7917ac883723 Makefile: Disable stack-usage check for ARC
9fe2b77b313b ARC: HSDK: Enable SPI flash support
11007a25b835 ARC: HSDK: Add platform-specific commands
416c03d2f09f ARC: Bump ARC tools used in TravisCI to the most recent release arc-2017.09
94f247d0c145 ARC: AXS10x: DTS: Remove unused interrupt properties
645b5afbb821 (tag: v2018.05-rc1, mainline/master) Prepare v2018.05-rc1
------------------------>8------------------------

-Alexey
Tom Rini April 4, 2018, 1:14 p.m. UTC | #7
On Wed, Apr 04, 2018 at 08:51:16AM +0000, Alexey Brodkin wrote:
> Hi Tom,
> 
> On Tue, 2018-04-03 at 16:49 -0400, Tom Rini wrote:
> > On Tue, Apr 03, 2018 at 08:27:20PM +0000, Alexey Brodkin wrote:
> > > Hi Tom,
> > > 
> > > On Tue, 2018-04-03 at 16:25 -0400, Tom Rini wrote:
> > > > On Tue, Apr 03, 2018 at 08:21:06PM +0000, Alexey Brodkin wrote:
> > > > > Hi Tom,
> > > > > 
> > > > > On Tue, 2018-04-03 at 16:17 -0400, Tom Rini wrote:
> > > > > > On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:
> > > > > > 
> > > > > > > With the most recent tools for ARC (arc-2017.09) in case of
> > > > > > > "naked" function compiler throws a warning:
> > > > > > > ---------------------------------->8-----------------------------
> > > > > > > board/synopsys/hsdk/hsdk.c: In function 'hsdk_core_init_f':
> > > > > > > board/synopsys/hsdk/hsdk.c:345:1: warning: stack usage computation not supported for this target
> > > > > > >  }
> > > > > > >  ^
> > > > > > > ---------------------------------->8-----------------------------
> > > > > > > 
> > > > > > > That happens because the compiler doesn't handle "naked" functions
> > > > > > > as a special case where stack calculation shouldn't be done.
> > > > > > > 
> > > > > > > But for now until this is fixed in GCC to get clean buildman output
> > > > > > > we're disabling stack-usage check for ARC.
> > > > > > > 
> > > > > > > See https://lists.denx.de/pipermail/u-boot/2018-April/324455.html
> > > > > > > for more background.
> > > > > > > 
> > > > > > > Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
> > > > > > > Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
> > > > > > > Cc: Tom Rini <trini@konsulko.com>
> > > > > > 
> > > > > > Erm, this patch isn't working for me.  I take the current ARC PR, and
> > > > > > apply this, and I still see the warning showing up.
> > > > > 
> > > > > How do you see an issue?
> > > > > Could you please make sure arc-2017.09 tools are used but not arc-2016.09?
> > > > > See my change for TravisCI in the same PR.
> > > > 
> > > > ... but the patch here is disabling -fstack-usage altogether for ARC,
> > > > yes?
> > > 
> > > Right, but that's a temporary "patch" for the problem in hand.
> > > Once GCC 8.x gets released we'll just switch to it and that problem shouldn't
> > > bother us any longer.
> > 
> > OK.  But this patch doesn't work and we're trying -fstack-usage is the
> > problem I see :)
> 
> Well probably I'm missing something :)
> 
> Here's a TravisCI job for ARC that passes perfectly fine:
> https://travis-ci.org/abrodkin/u-boot/jobs/362026822
> 
> Stuff that is built there is here:
> https://github.com/abrodkin/u-boot/commits/staging-arc

Yes, OK, moving to 2017.09 also is fine here, so I'm just going to
accept it and move on.  Thanks!
Tom Rini April 4, 2018, 1:18 p.m. UTC | #8
On Mon, Apr 02, 2018 at 12:18:02PM +0300, Alexey Brodkin wrote:

> With the most recent tools for ARC (arc-2017.09) in case of
> "naked" function compiler throws a warning:

Applied to u-boot/master, thanks!
diff mbox series

Patch

diff --git a/Makefile b/Makefile
index 5fa14789d99f..c80b902afdce 100644
--- a/Makefile
+++ b/Makefile
@@ -600,9 +600,13 @@  KBUILD_CFLAGS	+= -g
 KBUILD_AFLAGS	+= -g
 
 # Report stack usage if supported
+# ARC tools based on GCC 7.1 has an issue with stack usage
+# with naked functions, see commit message for more details
+ifndef CONFIG_ARC
 ifeq ($(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-stack-usage.sh $(CC)),y)
 	KBUILD_CFLAGS += -fstack-usage
 endif
+endif
 
 KBUILD_CFLAGS += $(call cc-option,-Wno-format-nonliteral)