]> git.sur5r.net Git - u-boot/commitdiff
examples/standalone: Use gcc's -fno-toplevel-reorder
authorPeter Tyser <ptyser@xes-inc.com>
Sun, 12 Sep 2010 22:38:49 +0000 (17:38 -0500)
committerWolfgang Denk <wd@denx.de>
Tue, 12 Oct 2010 20:47:03 +0000 (22:47 +0200)
Using -fno-toplevel-reorder causes gcc to not reorder functions.  This
ensures that an application's entry point will be the first function in
the application's source file.

This change, along with commit 620bbba524fbaa26971a5004793010b169824f1b
should cause a standalone application's entry point to be at the base of
the compiled binary.  Previously, the entry point could change depending
on gcc version and flags.

Note -fno-toplevel-reorder is only available in gcc version 4.2 or
greater.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
examples/standalone/Makefile

index 5f1f8008073648a30643f66e6690e4a76577e63b..c2dd514d9391cc9d65a3b74a679b54bdc1375569 100644 (file)
@@ -82,6 +82,11 @@ CFLAGS := $(filter-out $(RELFLAGS),$(CFLAGS))
 CPPFLAGS := $(filter-out $(RELFLAGS),$(CPPFLAGS))
 endif
 
+# We don't want gcc reordering functions if possible.  This ensures that an
+# application's entry point will be the first function in the application's
+# source file.
+CFLAGS += $(call cc-option,-fno-toplevel-reorder)
+
 all:   $(obj).depend $(OBJS) $(LIB) $(SREC) $(BIN) $(ELF)
 
 #########################################################################