arch/x86: Link walkcbfs.S instead on including it in bootblock.S
commitc46a39237a18bdd4de826bce10ae89be718f9289
authorAlexandru Gagniuc <mr.nuke.me@gmail.com>
Fri, 2 Oct 2015 23:17:41 +0000 (2 16:17 -0700)
committerAlexandru Gagniuc <mr.nuke.me@gmail.com>
Thu, 8 Oct 2015 16:44:38 +0000 (8 16:44 +0000)
tree7a821d21573bd02cfe9c9577536dcb3bf55cb53a
parentdbeedbef701d404b8e48380d6a5617dc6c1d9b2c
arch/x86: Link walkcbfs.S instead on including it in bootblock.S

The code flow doesn't fall through to walkcbfs, as it does in the rest
of bootblock.S. Instead, walkcbfs is called (albeit via a jmp). The
linker cannot know this when walkcbfs.S is included directly.

When we use a CAR bootblock, we lose several hundred bytes because
walkcbfs is not garbage-collected, yet it isn't used. This problem
is solved by assembling walkcbfs.S separately, and linking it.

Change-Id: Ib3a976db09b9ff270b7677cb4f9db80b0b025e22
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-on: http://review.coreboot.org/11785
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
src/arch/x86/Makefile.inc
src/arch/x86/bootblock.S
src/arch/x86/walkcbfs.S