Commit 487f50ff authored by H. Peter Anvin's avatar H. Peter Anvin
Browse files

x86, realmode: Add .text64 section, make barrier symbols absolute



Add a .text64 section.  The purpose of this is to keep 16-, 32- and
64-bit code segregated into separate sections, mainly to keep
disassembly sane.

Move barrier symbols out of sections to avoid the "symbol in empty
section" problem in some versions of GNU ld.

Signed-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/1336501366-28617-10-git-send-email-jarkko.sakkinen@intel.com
parent 2a6de314
Loading
Loading
Loading
Loading
+8 −3
Original line number Original line Diff line number Diff line
@@ -32,8 +32,8 @@ SECTIONS
	}
	}


	. = ALIGN(PAGE_SIZE);
	. = ALIGN(PAGE_SIZE);
	.text : {
	pa_text_start = .;
	pa_text_start = .;
	.text : {
		*(.text)
		*(.text)
		*(.text.*)
		*(.text.*)
	}
	}
@@ -41,9 +41,14 @@ SECTIONS
	.text32 : {
	.text32 : {
		*(.text32)
		*(.text32)
		*(.text32.*)
		*(.text32.*)
		pa_ro_end = .;
	}
	}


	.text64 : {
		*(.text64)
		*(.text64.*)
	}
	pa_ro_end = .;

	. = ALIGN(PAGE_SIZE);
	. = ALIGN(PAGE_SIZE);
	.data : {
	.data : {
		*(.data)
		*(.data)
@@ -59,8 +64,8 @@ SECTIONS
	. = ALIGN(4);
	. = ALIGN(4);
	.signature : {
	.signature : {
		*(.signature)
		*(.signature)
		pa_end = .;
	}
	}
	pa_end = .;


	/DISCARD/ : {
	/DISCARD/ : {
		*(.note*)
		*(.note*)