nickysn
10a01c0127
+ import catch, throw and stack management win16 api functions
...
git-svn-id: trunk@31540 -
2015-09-05 21:41:37 +00:00
nickysn
e09f230250
+ added the pointer validation win16 apis
...
git-svn-id: trunk@31539 -
2015-09-05 21:02:43 +00:00
nickysn
4d43d8d909
+ import the win16 debug apis
...
git-svn-id: trunk@31538 -
2015-09-05 20:45:22 +00:00
nickysn
1b84fbee57
+ add win16 to systems_all_windows; this enables the win32-like mangling of the
...
dll internal symbols names on win16 as well
git-svn-id: trunk@31537 -
2015-09-05 20:06:59 +00:00
nickysn
6e09a4ff92
+ enable compilation of the uuchar, objpas and strings units for the win16 target
...
git-svn-id: trunk@31536 -
2015-09-05 19:45:52 +00:00
nickysn
72d6876225
+ initialize the PrefixSeg variable from the win16 startup code
...
git-svn-id: trunk@31535 -
2015-09-05 18:03:37 +00:00
nickysn
a062fb17b3
+ added makefiles for the win16 rtl
...
git-svn-id: trunk@31534 -
2015-09-05 15:50:19 +00:00
nickysn
8610065db4
+ started porting the win16 api units
...
git-svn-id: trunk@31533 -
2015-09-05 15:48:40 +00:00
nickysn
393d86a2e5
+ implemented writing proper win16 dll import libraries
...
git-svn-id: trunk@31532 -
2015-09-05 13:45:23 +00:00
nickysn
049171c69c
* moved the imports of InitTask, WaitEvent and InitApp to the win16 startup module
...
git-svn-id: trunk@31531 -
2015-09-05 12:43:26 +00:00
nickysn
c2c008c09a
* switch to a full blown win16 system unit
...
git-svn-id: trunk@31530 -
2015-09-05 12:39:58 +00:00
nickysn
4068a05631
+ support the 'absolute seg:ofs' variable declaration in the win16 target as well
...
git-svn-id: trunk@31529 -
2015-09-05 12:07:29 +00:00
nickysn
8bca76e645
* improved formatting and added comments to the win16 startup code
...
git-svn-id: trunk@31528 -
2015-09-05 11:48:05 +00:00
nickysn
e83f3d2978
* updated all the remaining makefiles that 'fpcmake -r' missed
...
git-svn-id: trunk@31527 -
2015-09-05 11:21:36 +00:00
nickysn
e05aec2083
+ added the win16 target to fpmake
...
git-svn-id: trunk@31526 -
2015-09-05 11:11:59 +00:00
nickysn
2e3cb70489
* regenerated makefiles after adding the win16 target
...
git-svn-id: trunk@31525 -
2015-09-05 11:02:54 +00:00
nickysn
fb0f606793
* update revision.inc
...
git-svn-id: trunk@31524 -
2015-09-05 10:52:13 +00:00
nickysn
b8b90f96a1
+ added the win16 target to fpcmake
...
git-svn-id: trunk@31523 -
2015-09-05 10:15:10 +00:00
nickysn
3145d68fdb
* fixed compilation of ppudump
...
git-svn-id: trunk@31522 -
2015-09-05 03:38:51 +00:00
nickysn
839ab714cc
+ started implementing a win16 target :)
...
git-svn-id: trunk@31521 -
2015-09-05 02:47:42 +00:00
nickysn
a1d29b8251
* always pop DS in huge memory models in asm routines that don't specify
...
'nostackframe'
git-svn-id: trunk@31520 -
2015-09-04 21:51:04 +00:00
nickysn
98ec7a2211
* eliminated the dual initialization of DS in interrupt procedures in the huge
...
memory model
git-svn-id: trunk@31519 -
2015-09-04 21:37:07 +00:00
nickysn
4c9b339c22
+ added the huge memory model option to the compiler help screen
...
git-svn-id: trunk@31518 -
2015-09-04 20:43:38 +00:00
nickysn
69042574b2
* assume external variables are in a different segment in the huge memory model
...
git-svn-id: trunk@31517 -
2015-09-04 19:39:55 +00:00
nickysn
2087290802
* i8086 huge memory model threadvar code generation fixes
...
git-svn-id: trunk@31516 -
2015-09-04 19:15:10 +00:00
nickysn
2b42c17318
+ also initialize the proper (foreign) segment when loading a global variable
...
from another unit in the huge memory model
git-svn-id: trunk@31515 -
2015-09-04 16:05:52 +00:00
svenbarth
eaab604f0c
pgenutil.pas:
...
* split generate_specialization() into two phases: generate_specialization_phase1() and generate_specialization_phase2(); the former parses the generic parameters and determines the correct generic def while the latter does the real specialization. This is needed for generic functions/methods as no full specialization needs to be done until overload selection by tcallcandidates
pgentype.pas:
+ new type tspecializationcontext
git-svn-id: trunk@31514 -
2015-09-04 15:37:54 +00:00
svenbarth
5255c936d3
symsym.pas:
...
+ add an overload of check_hints() that allows to specify the current file position
* have the previous check_hints() procedure be an inline procedure as it simply calls the new overload
git-svn-id: trunk@31513 -
2015-09-04 14:50:16 +00:00
svenbarth
af75198907
symsym.pas:
...
+ provide possibility to create syms that are not registered in the current module. These syms won't be stored in the ppu.
git-svn-id: trunk@31512 -
2015-09-04 14:43:02 +00:00
nickysn
1487236f29
+ support addr_fardataseg references in the internal asm writer
...
git-svn-id: trunk@31511 -
2015-09-04 14:33:48 +00:00
svenbarth
938c8335a9
symdef.pas:
...
* provide possibility to create defs that are not registered in the current module and also not in the symtablestack. These defs won't be stored in the ppu.
git-svn-id: trunk@31510 -
2015-09-04 14:24:27 +00:00
svenbarth
66df1cafb1
pdecsub.pas:
...
* move handling after parsing a procedure's/function's/method's name and its parameters from parse_proc_dec() into a new function parse_proc_dec_finish(), so that it can be used for generic functions/methods in the future
git-svn-id: trunk@31509 -
2015-09-04 14:03:16 +00:00
michael
f759815d04
* Patch from Inoussa to decompose canonically (to be able to implement CompareText)
...
git-svn-id: trunk@31508 -
2015-09-04 13:58:28 +00:00
svenbarth
e8fca1c9c0
* move tspecializationstate from pgenutil.pas into a new unit named pgentype.pas which contains types related to generics with as few dependencies as possible.
...
git-svn-id: trunk@31507 -
2015-09-04 13:37:06 +00:00
svenbarth
267adf4e46
scanner.pas, tscanner:
...
+ new method to check how many token replays are currently active. This is needed for example to determine the end of a generic method which may contain modifiers and such.
git-svn-id: trunk@31506 -
2015-09-04 13:27:28 +00:00
nickysn
cbaa02e7b5
+ support writing more than 1024 zeros in TObjSection.WriteZeros
...
git-svn-id: trunk@31505 -
2015-09-04 13:26:37 +00:00
svenbarth
5b216cca08
scanner.pas, tscanner:
...
* extend the state of the scanner that is saved/restored when starting/stopping a token recording so that the token recorder can be started on every kind of token.
git-svn-id: trunk@31504 -
2015-09-04 13:24:45 +00:00
nickysn
4a855b140a
+ support mixing initialized and bss data in the same object section (only in
...
case the section options contain the new option 'oso_sparse_data') in the
internal object writer (needed for the huge memory model)
git-svn-id: trunk@31503 -
2015-09-04 13:16:45 +00:00
nickysn
1264eaf8c6
* fixed "nil pointer assignment" error in huge memory model
...
git-svn-id: trunk@31502 -
2015-09-03 22:37:01 +00:00
nickysn
63f86ee6a5
+ huge memory model fixes in the i8086-msdos startup code
...
git-svn-id: trunk@31501 -
2015-09-03 22:08:53 +00:00
nickysn
0fdc62e0f7
+ initialize DS with the current unit's data segment in the function entry code
...
generated in the huge memory model
git-svn-id: trunk@31500 -
2015-09-03 21:44:16 +00:00
nickysn
2725b1160b
* name the 'FAR_DATA' class segments as module_name+'_DATA'
...
git-svn-id: trunk@31499 -
2015-09-03 19:00:55 +00:00
nickysn
97f65d350d
+ position the 'FAR_DATA' segments after the 'CODE' segments and before the
...
regular 'DATA' segments
git-svn-id: trunk@31498 -
2015-09-03 17:57:27 +00:00
nickysn
f14f4ff924
* use the 'FAR_DATA' segment class name instead of 'DATA' or 'BSS' in the huge
...
memory model
git-svn-id: trunk@31497 -
2015-09-03 17:53:15 +00:00
nickysn
cfab5d3d3e
* the omfbase.omf_segclass const array converted to function in order to be able
...
to return different names for some sections in the huge memory model
git-svn-id: trunk@31496 -
2015-09-03 17:48:07 +00:00
nickysn
8458bbfaf6
+ enabled the huge memory model command line option
...
git-svn-id: trunk@31495 -
2015-09-03 17:31:41 +00:00
nickysn
cf144a7fb7
* use a dummy non-nil pointer in FSectionsUsed and FSectionsInDGROUP, because
...
TFPHashList refuses to add an item with nil pointer data
git-svn-id: trunk@31494 -
2015-09-03 15:14:00 +00:00
nickysn
3b36e3d0b5
* declare segments as use16 or use32 in the nasm asm writer
...
git-svn-id: trunk@31493 -
2015-09-03 13:57:36 +00:00
nickysn
672ff1d863
* fixed memleak after r31487
...
git-svn-id: trunk@31492 -
2015-09-03 13:40:00 +00:00
nickysn
314b5e5eac
* fixed class name in comment
...
git-svn-id: trunk@31491 -
2015-09-03 13:36:12 +00:00