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