12345678910111213141516171819 |
- /* on x86 old clang doesn't support .code16
- newer clang supports it but creates 6-byte jumps instead of 3-byte ones
- which makes us go over boot sector size.
- Starting with 3.9 clang emits 3-byte jumps but still creates 8-bytes movl
- instead of 5-bytes, so code overflows into data. */
- .code16
- jmp far
- .org 4
- jmp nearer
- .org 6
- movl nearer, %ebx
- .org 11
- .space 100
- nearer:
- .space 200
- far:
- .byte 0
|