nickysn
ef341e4b1c
- removed useless 'far;' declaration
...
git-svn-id: trunk@38724 -
2018-04-10 13:21:48 +00:00
Mattias Gaertner
b21462d3b1
pastojs: fixed test vql on 32bit system
...
git-svn-id: trunk@38723 -
2018-04-10 08:54:09 +00:00
Mattias Gaertner
b780c20096
fcl-passrc: resolver: delphi mode: allow intfvar as classtype
...
git-svn-id: trunk@38722 -
2018-04-10 08:33:24 +00:00
Mattias Gaertner
e1ead17c77
pas2js: simplify
...
git-svn-id: trunk@38721 -
2018-04-09 22:36:10 +00:00
Mattias Gaertner
c17f030e34
pastojs: fixed a.call(typeinfo())
...
git-svn-id: trunk@38720 -
2018-04-09 22:34:12 +00:00
florian
5dda0f5c74
* patch by Pierre to fix warnings which prevent cross building
...
git-svn-id: trunk@38719 -
2018-04-09 19:01:02 +00:00
pierre
e7d724981c
Replace $notes off/on by $push/$notes off/$pop to avoid getting note messages if notes are not on at start of unit compilation
...
git-svn-id: trunk@38718 -
2018-04-09 09:45:19 +00:00
florian
f08d3fdf8f
* moved execution weight calculation into a separate pass, so the info is available already available before the code generation pass if needed
...
git-svn-id: trunk@38717 -
2018-04-08 20:51:27 +00:00
Jonas Maebe
cb7730a423
* fixed execution order of implicit finalization and class destructors: first
...
the latter, then the former
git-svn-id: trunk@38716 -
2018-04-08 15:41:00 +00:00
Mattias Gaertner
77cf535e21
pas2js: version 0.9.15
...
git-svn-id: trunk@38715 -
2018-04-08 15:37:03 +00:00
Mattias Gaertner
18fd5ae63d
pastojs: fixed class interfaces when ancestor has more einterfaces
...
git-svn-id: trunk@38714 -
2018-04-08 14:59:46 +00:00
Mattias Gaertner
22fa27a70b
fcl-passrc: resolver: sanity check
...
git-svn-id: trunk@38713 -
2018-04-08 14:59:04 +00:00
Mattias Gaertner
bb13e36c80
pas2js: docs: fixed typo
...
git-svn-id: trunk@38712 -
2018-04-08 13:05:14 +00:00
Mattias Gaertner
5140e1b022
pas2js: docs: interfaces JS
...
git-svn-id: trunk@38711 -
2018-04-08 12:59:12 +00:00
Mattias Gaertner
c2fe9080d6
pas2js: docs: guid
...
git-svn-id: trunk@38710 -
2018-04-08 12:20:58 +00:00
Mattias Gaertner
f6093dbae8
pas2js: 0.9.14
...
git-svn-id: trunk@38709 -
2018-04-08 12:05:55 +00:00
Mattias Gaertner
eb0992a79e
pas2js: docs about class interfaces
...
git-svn-id: trunk@38708 -
2018-04-08 09:05:48 +00:00
Mattias Gaertner
b2d4ca52c2
pastojs: filer: ignore old modeswitch ignoreinterfaces
...
git-svn-id: trunk@38707 -
2018-04-08 09:04:44 +00:00
Mattias Gaertner
c5b82873d2
fcl-passrc: resolver: fixed scopedenums for anonymous set type
...
git-svn-id: trunk@38706 -
2018-04-08 07:33:54 +00:00
Mattias Gaertner
7111f2bfdd
fcl-passrc: useanalyzer: added test for one-way dependency of class-interface to implementation method
...
git-svn-id: trunk@38705 -
2018-04-07 18:20:03 +00:00
Mattias Gaertner
93ce148b73
fcl-passrc: useanalyzer: typeinfo for interfaces
...
git-svn-id: trunk@38704 -
2018-04-06 18:20:11 +00:00
pierre
078ed0ec95
Fix range problems
...
git-svn-id: trunk@38703 -
2018-04-06 14:41:48 +00:00
Mattias Gaertner
1237e11765
pastojs: for s in arrayofstring
...
git-svn-id: trunk@38702 -
2018-04-06 13:34:17 +00:00
Mattias Gaertner
b64b45e26c
fcl-passrc: resolver: fixed for s in arrayofstring
...
git-svn-id: trunk@38701 -
2018-04-06 13:34:03 +00:00
pierre
ef36525e4b
Add missing 3.0.2 and 3.0.4 releases
...
git-svn-id: trunk@38700 -
2018-04-06 13:31:38 +00:00
Mattias Gaertner
abd1b66977
pastojs: removed modeswitch ignoreinterfaces
...
git-svn-id: trunk@38699 -
2018-04-06 11:03:19 +00:00
Mattias Gaertner
bebd127b91
fcl-passrc: removed modeswitch ignoreinterfaces
...
git-svn-id: trunk@38698 -
2018-04-06 11:03:09 +00:00
Mattias Gaertner
52b1649b8f
pas2js: utility functions for com interfaces
...
git-svn-id: trunk@38697 -
2018-04-06 10:38:37 +00:00
Mattias Gaertner
0448e4edbc
pastojs: com interfaces
...
git-svn-id: trunk@38696 -
2018-04-06 10:38:08 +00:00
Mattias Gaertner
835c1c8f1a
fcl-passrc: useanalyzer: com interfaces
...
git-svn-id: trunk@38695 -
2018-04-06 10:37:45 +00:00
florian
254aa0e9e1
* consistent naming of lData field in NEWCPLINFO
...
git-svn-id: trunk@38694 -
2018-04-06 09:59:22 +00:00
pierre
d9c8d478b2
Restrict test to i8086 cpu
...
git-svn-id: trunk@38693 -
2018-04-06 07:40:21 +00:00
florian
bd27b7635b
* also in case of constref make_not_regable with ra_addr_taken must be called, later on in pass_1 this happens anyways
...
* for in loops can generate temp. refs as loop counter, so when checking of the address of the for counter is taken, we have to check for a load node
git-svn-id: trunk@38692 -
2018-04-05 20:09:40 +00:00
nickysn
e1d0e7572e
* i8086 TP7 compatibility fixes, related to obtaining procedure addresses:
...
o The @ and Addr() operators in TP or Delphi mode can now be applied to both
near and far procedures and they always produce a CodePointer, regardless of
the call model of the procedure.
o Ofs() and Seg() can now also be applied to both near and far procedures.
o The @ and Addr() operators in non-TP/Delphi modes, as well as the procedure
name itself in TP/Delphi modes now can be applied to both near and far
procedures and produce a near or a far procvar.
git-svn-id: trunk@38691 -
2018-04-05 15:09:12 +00:00
florian
42d6e81c33
* made message about subroutines not being inlined a note instead of a hint, see also #33515
...
git-svn-id: trunk@38690 -
2018-04-05 09:51:25 +00:00
florian
0fd0e356e1
+ new flag ra_different_scope: used if a node tree is marked as non-regable if a variable is accessed from a different scope
...
git-svn-id: trunk@38689 -
2018-04-04 21:39:47 +00:00
florian
c59bd8c29a
+ calculate loop unrolling using node_count_weighted which takes care of nodes generating no code
...
* optimized unrolling calculation
git-svn-id: trunk@38688 -
2018-04-04 21:39:46 +00:00
florian
512328deee
* include loop unrolling in -O3, as it is done carefully, it is beneficial on average
...
git-svn-id: trunk@38687 -
2018-04-04 21:39:44 +00:00
florian
fff6e0ecdb
* unroll more aggressively
...
git-svn-id: trunk@38686 -
2018-04-04 21:39:42 +00:00
pierre
5368f1fbe9
Add handling of DelFiles
...
git-svn-id: trunk@38685 -
2018-04-04 21:27:36 +00:00
pierre
450f62efcc
Move GetToken function to testu unit
...
git-svn-id: trunk@38684 -
2018-04-04 21:27:07 +00:00
pierre
33de492553
* Improve support in temporary directory.
...
+ CopyNeededFiles to copy additional files to temp directory.
+ TempFileList: New variable.
* Cleanup: Use TempFileList to delete more file.
+ Add optional -Ssource_file_name directory.
git-svn-id: trunk@38683 -
2018-04-04 21:00:26 +00:00
nickysn
58ead31f49
* optimized ofs(proc) on i8086, so it only loads the offset in all memory models
...
git-svn-id: trunk@38682 -
2018-04-04 15:26:47 +00:00
nickysn
c7503ca291
+ introduced tabstractprocdef.ofs_address_type - the address type, generated for
...
ofs()
git-svn-id: trunk@38681 -
2018-04-04 15:16:42 +00:00
nickysn
6929af07b7
+ added flag tcnf_proc_2_procvar_get_offset_only
...
git-svn-id: trunk@38680 -
2018-04-04 14:48:12 +00:00
nickysn
99a1cf89b3
+ print convnodeflags in printnodeinfo
...
git-svn-id: trunk@38679 -
2018-04-04 13:20:41 +00:00
nickysn
4a3a64d8f4
+ print addrnodeflags in printnodeinfo
...
git-svn-id: trunk@38678 -
2018-04-04 12:48:52 +00:00
nickysn
dadd5568db
+ override set_labelsym_resultdef for i8086 and set a near pointer resultdef if
...
the anf_ofs flag is set
git-svn-id: trunk@38677 -
2018-04-04 12:34:21 +00:00
nickysn
109fb279f6
* moved the initialization of the resultdef for labelsyms in the typecheckpass
...
of taddrnode to a virtual method taddrnode.set_labelsym_resultdef. No
functional changes.
git-svn-id: trunk@38676 -
2018-04-04 12:09:15 +00:00
florian
c46cbc8411
* do not issue a hint of compiler procs are not inlined, resolves #33515
...
git-svn-id: trunk@38675 -
2018-04-03 21:39:47 +00:00