Sfoglia il codice sorgente

[build] Remove obsolete linker script files

tags/v0.9.8
Michael Brown 15 anni fa
parent
commit
3d6b8a67f2

+ 0
- 100
src/arch/i386/core/etherboot.prefix.lds Vedi File

@@ -1,100 +0,0 @@
1
-OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
2
-OUTPUT_ARCH(i386)
3
-
4
-ENTRY(_prefix_start)
5
-SECTIONS {
6
-	/* Prefix */
7
-	.prefix : {
8
-		_verbatim_start = . ;
9
-		_prefix_start = . ;
10
-		*(.prefix)
11
-		. = ALIGN(16);
12
-		_prefix_end = . ;
13
-	} = 0x9090
14
-	_prefix_size = _prefix_end - _prefix_start;
15
-
16
-	.text.nocompress : {
17
-		*(.prefix.udata)
18
-	} = 0x9090
19
-
20
-	decompress_to = . ;
21
-	.prefix.zdata : {
22
-		_compressed = . ;
23
-		*(.prefix.zdata)
24
-		_compressed_end = . ;
25
-	}
26
-	_compressed_size = _compressed_end - _compressed;
27
-
28
-	. = ALIGN(16);
29
-	_verbatim_end = . ;
30
-
31
-
32
-	/* Size of the core of etherboot in memory */
33
-	_base_size = _end - _text;
34
-
35
-	/* _prefix_size is the length of the non-core etherboot prefix */
36
-	_prefix_size = _prefix_end - _prefix_start;
37
-
38
-	/* _verbatim_size is the actual amount that has to be copied to base memory */
39
-	_verbatim_size = _verbatim_end - _verbatim_start;
40
-
41
-	/* _image_size is the amount of base memory needed to run */
42
-	_image_size = _base_size +  _prefix_size;
43
-
44
-	/* Standard sizes rounded up to paragraphs */
45
-	_prefix_size_pgh   = (_prefix_size + 15) / 16;
46
-	_verbatim_size_pgh = (_verbatim_size + 15) / 16;
47
-	_image_size_pgh    = (_image_size + 15) / 16 ;
48
-	
49
-	/* Standard sizes in sectors */
50
-	_prefix_size_sct   = (_prefix_size + 511) / 512;
51
-	_verbatim_size_sct = (_verbatim_size + 511) / 512;
52
-	_image_size_sct    = (_image_size + 511) / 512;
53
-
54
-	/* Symbol offsets and sizes for the exe prefix */
55
-	_exe_hdr_size   = 32;
56
-	_exe_size       = _verbatim_size; /* Should this be - 32 to exclude the header? */
57
-	_exe_size_tail  = (_exe_size) % 512;
58
-	_exe_size_pages = ((_exe_size) + 511) / 512;
59
-	_exe_bss_size   = ((_image_size - _verbatim_size) + 15) / 16;
60
-	_exe_ss_offset  = (_stack_offset + _prefix_size - _exe_hdr_size + 15) / 16 ;
61
-
62
-	/* This is where we copy the compressed image before decompression.
63
-	 * Prepare to decompress in place.  The end mark is about 8.25 bytes long,
64
-	 * and the worst case symbol is about 16.5 bytes long.  Therefore
65
-	 * We need to reserve at least 25 bytes of slack here.  
66
-	 * Currently I reserve 2048 bytes of just slack to be safe :)
67
-	 * 2048 bytes easily falls within the BSS (the defualt stack is 4096 bytes)
68
-	 * so we really are decompressing in place.
69
-	 * 
70
-	 * Hmm. I missed a trick.  In the very worst case (no compression)
71
-	 * the encoded data is 9/8 the size as it started out so to be completely
72
-	 * safe I need to be 1/8 of the uncompressed code size past the end.
73
-	 * This will still fit compfortably into our bss in any conceivable scenario.
74
-	 */
75
-	_compressed_copy = _edata + _prefix_size  - _compressed_size +
76
-		/* The amount to overflow _edata */
77
-		MAX( ((_edata - _text + 7) / 8) , 2016 ) + 32; 
78
-	_assert = ASSERT( ( _compressed_copy - _prefix_size ) < _ebss , "Cannot decompress in place" ) ; 
79
-
80
-	decompress = DEFINED(decompress) ? decompress : 0;
81
-	/DISCARD/ : {
82
-		*(.comment)
83
-		*(.note)
84
-	}
85
-
86
-	/* Symbols used by the prefixes whose addresses are inconvinient 
87
-	 * to compute, at runtime in the code.
88
-	 */
89
-	image_basemem_size = DEFINED(image_basemem_size)? image_basemem_size : 65536;
90
-	image_basemem      = DEFINED(image_basemem)?     image_basemem : 65536;
91
-	_prefix_real_to_prot          = _real_to_prot         + _prefix_size ;
92
-	_prefix_prot_to_real          = _prot_to_real         + _prefix_size ;
93
-	_prefix_image_basemem_size    = image_basemem_size    + _prefix_size ;
94
-	_prefix_image_basemem         = image_basemem         + _prefix_size ;
95
-	_prefix_rm_in_call            = _rm_in_call           + _prefix_size ;
96
-	_prefix_in_call               = _in_call              + _prefix_size ;
97
-	_prefix_rom                   = rom                   + _prefix_size ;
98
-	_prefix_rm_etherboot_location = rm_etherboot_location + _prefix_size ;
99
-	_prefix_stack_end             = _stack_end            + _prefix_size ;
100
-}

+ 0
- 8
src/arch/i386/core/prefixudata.lds Vedi File

@@ -1,8 +0,0 @@
1
-OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
2
-OUTPUT_ARCH(i386)
3
-
4
-SECTIONS {
5
-	 .prefix.udata : {
6
-		      *(*)
7
-	 }
8
-}

+ 0
- 8
src/arch/i386/core/prefixzdata.lds Vedi File

@@ -1,8 +0,0 @@
1
-OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
2
-OUTPUT_ARCH(i386)
3
-
4
-SECTIONS {
5
-	 .prefix.zdata : {
6
-		      *(*)
7
-	 }
8
-}

+ 0
- 8
src/arch/i386/core/start16.lds Vedi File

@@ -1,8 +0,0 @@
1
-/* When linking with an uncompressed image, these symbols are not
2
- * defined so we provide them here.
3
- */
4
-
5
-__decompressor_uncompressed = 0 ;
6
-__decompressor__start = 0 ;
7
-
8
-INCLUDE arch/i386/core/start16z.lds

+ 0
- 65
src/arch/i386/core/start16z.lds Vedi File

@@ -1,65 +0,0 @@
1
-OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
2
-OUTPUT_ARCH(i386)
3
-
4
-/* Linker-generated symbols are prefixed with a double underscore.
5
- * Decompressor symbols are prefixed with __decompressor_.  All other
6
- * symbols are the same as in the original object file, i.e. the
7
- * runtime addresses.
8
- */
9
-
10
-ENTRY(_start16)
11
-
12
-SECTIONS {
13
-	.text : {
14
-		*(.text)
15
-	}
16
-	.payload : {
17
-		__payload_start = .;
18
-		*(.data)
19
-		__payload_end = .;
20
-	}
21
-
22
-	/* _payload_size is the size of the binary image appended to
23
-	 * start16, in bytes.
24
-	 */
25
-	__payload_size = __payload_end - __payload_start ;
26
-
27
-	/* _size is the size of the runtime image
28
-	 * (start32 + the C code), in bytes.
29
-	 */
30
-	__size = _end - _start ;
31
-
32
-	/* _decompressor_size is the size of the decompressor, in
33
-	 * bytes.  For a non-compressed image, start16.lds sets
34
-	 * _decompressor_uncompressed = _decompressor__start = 0.
35
-	 */
36
-	__decompressor_size = __decompressor_uncompressed - __decompressor__start ;
37
-
38
-	/* image__size is the total size of the image, after
39
-	 * decompression and including the decompressor if applicable.
40
-	 * It is therefore the amount of memory that start16's payload
41
-	 * needs in order to execute, in bytes.
42
-	 */
43
-	__image_size = __size + __decompressor_size ;
44
-
45
-	/* Amount to add to runtime symbols to obtain the offset of
46
-	 * that symbol within the image.
47
-	 */
48
-	__offset_adjust = __decompressor_size - _start ;
49
-
50
-	/* Calculations for the stack
51
-	 */
52
-	__stack_size = _estack - _stack ;
53
-	__offset_stack = _stack + __offset_adjust ;
54
-
55
-	/* Some symbols will be larger than 16 bits but guaranteed to
56
-	 * be multiples of 16.  We calculate them in paragraphs and
57
-	 * export these symbols which can be used in 16-bit code
58
-	 * without risk of overflow.
59
-	 */
60
-	__image_size_pgh = ( __image_size / 16 );
61
-	__start_pgh = ( _start / 16 );
62
-	__decompressor_size_pgh = ( __decompressor_size / 16 );
63
-	__offset_stack_pgh = ( __offset_stack / 16 );
64
-}
65
-

Loading…
Annulla
Salva