nickysn
|
39c54bf077
* handle ait_varloc in the nasm writer. This allows compiling the system unit
|
11 years ago |
nickysn
|
2d45ea43af
* use the 'wait' prefix (on the same line as the instruction), instead of
|
11 years ago |
nickysn
|
0020a2ed10
+ when targeting the i8087, emit FWAIT prefix manually for the 8087 instructions
|
11 years ago |
nickysn
|
9f979eb5c6
* put the i8086-msdos dwarf debug sections in USE32 class=DWARF segments because
|
11 years ago |
nickysn
|
e6a4435330
+ support the aitconst_XXbit_unaligned const types in the NASM asm writer. This
|
11 years ago |
nickysn
|
661e11ecb8
* on i8086 added section .fpc to the group 'dgroup'. This fixes a bug that caused the bss section to not be left out from the executable in tiny model, which caused, ironically, tiny model executables to be larger than the small model executables
|
12 years ago |
nickysn
|
f9d0caa7c7
* pass the option -w-orphan-labels to nasm to avoid the spurious warnings about labels without a trailing colon and without an instruction on the same line
|
12 years ago |
nickysn
|
511b1f37c1
* write the segment of aitconst_farptr on a separate line to avoid long symbol truncation, due to line length limit; this fixes compilation of sysutils in the medium memory model
|
12 years ago |
nickysn
|
9dbbffba61
+ added trefaddr.addr_seg for referencing the segment of a symbol
|
12 years ago |
nickysn
|
e4a1230356
+ added support for far pointer constants in the assembly output
|
12 years ago |
nickysn
|
604b7c9deb
+ added cg.a_call_ref_near and a_call_ref_far
|
12 years ago |
nickysn
|
3631198b34
+ declare the text segment with class=code in the nasm header for far code memory models also
|
12 years ago |
nickysn
|
9a6c242f97
+ emit proper far calls/jmps for addr_far in the nasm assembly output
|
12 years ago |
nickysn
|
3280514d2b
* in i8086 far code models, put the code in a section called module_name+'_TEXT', so each unit gets a separate code segment
|
12 years ago |
nickysn
|
b74af9fda0
* declare the text segment with class=code on i8086-msdos
|
12 years ago |
nickysn
|
2279e51a95
+ added trefaddr.addr_far for emitting far calls
|
12 years ago |
nickysn
|
b409d600ee
+ implemented the tiny memory model for i8086-msdos; we now produce working dos .com files as well
|
12 years ago |
nickysn
|
e243b6b869
* never use the 66h prefix when pushing/popping segment registers on i8086, as the stack is aligned on 2 bytes there
|
12 years ago |
nickysn
|
c2e3fb5918
+ emit proper interrupt procedure entry/exit code on i8086
|
12 years ago |
nickysn
|
db5573b395
* fixed the nasm assembly output for SAR/SAL with a memory reference
|
12 years ago |
florian
|
2ec15deaba
* more readable register allocation comments
|
12 years ago |
nickysn
|
b9084a22ca
* in the nasm writer only declare labels as global if they have labsym.bind=AB_GLOBAL; this fixes compilation of i8086-msdos programs that use multiple units
|
12 years ago |
nickysn
|
fe275c4f47
* set nasm cpu type according to the current cpu level set by -Cp
|
12 years ago |
nickysn
|
99d3b453a4
* got rid of the i8086 nasm warning 'segment attributes specified on redeclaration of segment'
|
12 years ago |
nickysn
|
fef3732884
* i8086 compilation fixes
|
12 years ago |
nickysn
|
c3aaa37c0c
* fixed a bug which caused non commutative fpu instructions to be wrong when using an intel-style external assembler and compiling a smartlinked unit
|
12 years ago |
nickysn
|
324b4a8a0a
* declare the .bss sections with class=bss, so wlink treats them as bss sections and leaves them out of the executable
|
12 years ago |
nickysn
|
e16e08b2b6
+ added CPU 286 nasm directive to the i8086 assembly output in order to catch 386+ instructions; the RTL now compiles without generating any 386+ instructions
|
12 years ago |
nickysn
|
eefc9eed90
* do not use 'NEAR' conditional jumps on the i8086, because they are 386+
|
12 years ago |
nickysn
|
1646f53d59
* fixed the 'unresolved externals' linker error when smartlinking msdos executables
|
12 years ago |