blob: 1be0e3a94ca6e6d950c4d7e7e698b459c11d5f60 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
.section ".reset"
.code16
.globl reset_vector
reset_vector:
.byte 0xe9
.int _start - ( . + 2 )
/* Note: The above jump is hand coded to work around bugs in binutils.
* 5 byte are used for a 3 byte instruction. This works because x86
* is little endian and allows us to use supported 32bit relocations
* instead of the weird 16 bit relocations that binutils does not
* handle consistenly between versions because they are used so rarely.
*/
. = 0x8;
.code32
jmp protected_start
.previous
|