summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Reinauer <stefan.reinauer@coreboot.org>2015-06-18 01:19:50 -0700
committerStefan Reinauer <stefan.reinauer@coreboot.org>2015-06-26 22:43:46 +0200
commiteec2db4da7685ad5eccd4fca261fdc8a146ed45d (patch)
treec73cdbfbf796513dc999b03ae8c1ab0baefcd9b7
parent3e5bc1feabd58f1d6f37f8b50156778caa00bfea (diff)
downloadcoreboot-eec2db4da7685ad5eccd4fca261fdc8a146ed45d.tar.xz
prog_loader: Play nice with gc-sections
With an x86_64-elf toolchain, this code that is unused outside of ramstage, is causing undefined references. Help the compiler along a little bit by conditionally compiling the code in ramstage only. Change-Id: I75518149b53c24eda4b985b0fef856447e196dec Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-on: http://review.coreboot.org/10585 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
-rw-r--r--src/lib/prog_loaders.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lib/prog_loaders.c b/src/lib/prog_loaders.c
index ec5eeb8693..7c00abad71 100644
--- a/src/lib/prog_loaders.c
+++ b/src/lib/prog_loaders.c
@@ -121,6 +121,8 @@ fail:
die("Ramstage was not loaded!\n");
}
+#ifdef __RAMSTAGE__ // gc-sections should take care of this
+
static struct prog global_payload =
PROG_INIT(ASSET_PAYLOAD, CONFIG_CBFS_PREFIX "/payload");
@@ -170,3 +172,5 @@ void payload_run(void)
prog_run(payload);
}
+
+#endif