Mattias Gaertner
17f6a4aacd
fcl-passrc: pasanalyzer: fixed enumtype, mark typeinfo param as published
...
git-svn-id: trunk@35798 -
2017-04-15 10:11:41 +00:00
joost
75e8cbd187
* Added ability to pass options to other packages + test
...
git-svn-id: trunk@35797 -
2017-04-14 23:00:52 +00:00
joost
a799d6465b
* Added test for source-dependencies
...
* Removed miced-case package-name. Better keep the basic tests simple
git-svn-id: trunk@35796 -
2017-04-14 20:24:45 +00:00
Mattias Gaertner
4f1755b174
pastojs:
...
- const aliasname = enumvalue
- RTTI
- base types
- unit $rtti
- enum type tkEnumeration
- set type tkSet
- procedure type tkProcVar, tkMethod
- class type tkClass
- fields,
- methods,
- properties no params, no index, no defaultvalue
- class forward
- class-of type tkClassRef
- dyn array type tkDynArray
- static array type tkArray
- record type tkRecord
- no typeinfo for local types
- built-in function typeinfo(): Pointer/TTypeInfo/...
- WPO skip not used typeinfo
- pointer
- compare with and assign nil
git-svn-id: trunk@35795 -
2017-04-14 15:58:03 +00:00
Mattias Gaertner
3343a936d9
fcl-passrc: updated tests
...
git-svn-id: trunk@35794 -
2017-04-14 15:53:33 +00:00
Mattias Gaertner
a0482df6df
fcl-passrc: useanalyzer: mark needed typeinfo
...
git-svn-id: trunk@35793 -
2017-04-14 15:52:31 +00:00
marco
5a8578cfaa
* dword -> dword_ptr in sendmessagetimeout (3x), mantis #31661
...
git-svn-id: trunk@35792 -
2017-04-14 15:52:03 +00:00
Mattias Gaertner
a42fa05288
fcl-passrc: resolver: built-in function typeinfo
...
git-svn-id: trunk@35791 -
2017-04-14 15:51:47 +00:00
Mattias Gaertner
642ea28368
fcl-passrc: split procedure modifiers into proc modifiers and proctype modifiers, pmVarargs is now ptmVarargs
...
git-svn-id: trunk@35790 -
2017-04-14 15:50:56 +00:00
Mattias Gaertner
9f5906e115
fcl-js: added TJSArrayLiteral.AddElement TJSNewMemberExpression.AddArg TJSCallExpression.AddArg
...
git-svn-id: trunk@35789 -
2017-04-14 15:48:09 +00:00
joost
3d16dfbc0b
* Set the global- and local-prefix from older config versions correctly
...
git-svn-id: trunk@35788 -
2017-04-13 18:53:24 +00:00
nickysn
b14f277e8f
+ use rtl helpers for 64-bit shl/shr/sar/rol/ror modify in place operations, on
...
platforms that don't have native 64-bit implementation of the corresponding
64-bit shift/rotate operation
git-svn-id: trunk@35787 -
2017-04-13 15:24:32 +00:00
nickysn
a1ad705646
+ allocate and free flags before and after the shl+rcl/shr+rcr/sar+rcr sequences
...
git-svn-id: trunk@35786 -
2017-04-13 11:58:51 +00:00
nickysn
cddb48bad4
+ i386 implementation of a_op64_const_reg for OP_SHR,OP_SHL and OP_SAR; needed
...
by the in_shl/shr/sar_assign_x_y inline nodes
git-svn-id: trunk@35785 -
2017-04-13 11:54:19 +00:00
nickysn
6a710964f2
+ i386 implementation of a_op64_const_ref for OP_SHR,OP_SHL and OP_SAR; needed
...
by the in_shl/shr/sar_assign_x_y inline nodes
git-svn-id: trunk@35784 -
2017-04-13 10:38:33 +00:00
nickysn
599b9e73de
* determine correctly whether operand size is 32 or 64 bits for
...
sar/shl/shr/rol/ror in tcginlinenode.second_AndOrXorShiftRot_assign
git-svn-id: trunk@35783 -
2017-04-12 13:36:42 +00:00
Mattias Gaertner
d8dbeb10b9
fcl-passrc: no writeln, bug #31656
...
git-svn-id: trunk@35782 -
2017-04-12 13:13:14 +00:00
nickysn
b6d05dba9e
* mark the sar/shl/shr/rol/ror_assign nodes as having side effects
...
git-svn-id: trunk@35781 -
2017-04-12 12:17:08 +00:00
nickysn
f514657e45
+ implemented the sar/shl/shr/rol/ror inline modify-in-place nodes; the actual
...
optimization of "i:=i shl/shr k", etc statements is not performed yet
git-svn-id: trunk@35780 -
2017-04-12 00:41:15 +00:00
yury
252f9ef153
* pas2jni: Support for class references.
...
- Fixed inclusion of unneeded pointer types.
git-svn-id: trunk@35779 -
2017-04-11 18:34:58 +00:00
joost
13b73244b3
* Added tests for r35776 and r35777
...
git-svn-id: trunk@35778 -
2017-04-11 16:59:58 +00:00
joost
f38f4d637f
* Handle directories that do no contain an installed package
...
git-svn-id: trunk@35777 -
2017-04-11 16:57:54 +00:00
joost
61739262c7
* Give a clear error when the source of a package is not available
...
git-svn-id: trunk@35776 -
2017-04-11 16:42:37 +00:00
joost
2aa623964e
* Fix the location where the .cod-files are installed on unices.
...
git-svn-id: trunk@35775 -
2017-04-11 16:30:52 +00:00
nickysn
7b40bdaa6e
+ treat the new modify-in-place inline nodes as having side effects in
...
check_for_sideeffect()
git-svn-id: trunk@35774 -
2017-04-11 14:59:38 +00:00
nickysn
5bb77905cd
* fixed the missing warnings for unused variables at -O3, when one of the new
...
modify-in-place inline nodes are used
git-svn-id: trunk@35773 -
2017-04-11 14:25:57 +00:00
nickysn
4697a653a4
+ perform the "i:=i +/-/and/or/xor k" optimization when there are two typecasts
...
inserted. This makes the optimization work for more integer types.
git-svn-id: trunk@35772 -
2017-04-11 11:25:40 +00:00
joost
31bff45d19
* Test for r35770
...
git-svn-id: trunk@35771 -
2017-04-11 09:39:35 +00:00
joost
977a82b866
* Do not stop on invalid package-files, but show a warning + test
...
git-svn-id: trunk@35770 -
2017-04-10 22:06:24 +00:00
joost
a9d4b17638
* Solved possible AV
...
git-svn-id: trunk@35769 -
2017-04-10 21:13:44 +00:00
joost
e5be5bd460
* When no TestPath is given, use the default. The ExpandFileName avoided this
...
git-svn-id: trunk@35768 -
2017-04-10 21:00:51 +00:00
joost
d1d1c5a7bd
Added notification to trace where packages are found
...
git-svn-id: trunk@35767 -
2017-04-10 20:58:36 +00:00
joost
7412276722
* Removed dead code
...
git-svn-id: trunk@35766 -
2017-04-10 20:54:02 +00:00
joost
1119207fe3
* Added test-framework for fppkg
...
git-svn-id: trunk@35765 -
2017-04-10 15:47:30 +00:00
nickysn
8d885ffde6
+ write the inlinenumber of inline nodes in the node tree
...
git-svn-id: trunk@35764 -
2017-04-10 14:54:50 +00:00
nickysn
d8406c4227
+ perform the "i:=-i" / "i:=not i" optimization even when there are typecasts
...
inserted; this makes the optimization work for all integer types
git-svn-id: trunk@35763 -
2017-04-10 14:06:19 +00:00
nickysn
98be270adb
* fixed a memory leak in the "i:=-i" / "i:=not i" optimization
...
git-svn-id: trunk@35762 -
2017-04-10 13:27:29 +00:00
nickysn
876c0c5fd5
+ added helper function are_equal_ints()
...
git-svn-id: trunk@35761 -
2017-04-10 13:22:50 +00:00
nickysn
e78f0aafcd
- remove whitespace, was inserted by accident
...
git-svn-id: trunk@35760 -
2017-04-10 11:55:26 +00:00
joost
7b3275e2cd
* Added missing slash in fppkg.cfg-template
...
git-svn-id: trunk@35759 -
2017-04-09 17:57:42 +00:00
nickysn
3616627d0b
* at -O3 optimization level, convert "i:=not i" and "i:=-i" to the new
...
in_not_assign_x and in_neg_assign_x inline nodes, which may generate better
code on certain cpus (such as x86)
git-svn-id: trunk@35758 -
2017-04-09 14:55:15 +00:00
nickysn
9187825e3a
* fixed tnegnotassign1.pp on powerpc and other RISC cpus
...
git-svn-id: trunk@35757 -
2017-04-09 14:28:13 +00:00
joost
11b163ee18
* Resolved infinitive loop on an exception during the one-time-setup of a testsuite
...
git-svn-id: trunk@35756 -
2017-04-08 14:43:21 +00:00
joost
1888f8747f
* Resolved some compiler-warnings
...
git-svn-id: trunk@35755 -
2017-04-07 22:43:41 +00:00
joost
cb402adf32
* Fixed mem-leaks
...
git-svn-id: trunk@35754 -
2017-04-07 22:41:02 +00:00
joost
39b780c3e3
* Fixed mem-leak
...
git-svn-id: trunk@35753 -
2017-04-07 22:23:29 +00:00
marco
f218076c8a
* fix for #31645 . Probably 16-bits mnemonics now really generate 16-bits opcodes,
...
so now really use 32-bit mnemonics for pushf/pusha and pop variants.
git-svn-id: trunk@35752 -
2017-04-07 22:08:58 +00:00
nickysn
c6680a32d7
* also support LOC_CREGISTER and LOC_CREFERENCE in in_not_assign_x and in_neg_assign_x
...
git-svn-id: trunk@35751 -
2017-04-07 21:33:56 +00:00
nickysn
6b43705437
* fixed compiler internal error when the in_not_assign_x/in_neg_assign_x are
...
applied to a LOC_REGISTER variable
git-svn-id: trunk@35750 -
2017-04-07 19:16:00 +00:00
nickysn
256dc546ac
+ implemented the in_neg_assign_x and in_not_assign_x inline nodes, which will
...
be used (TBD in a future commit) for optimizing x:=-x and x:=not x on CPUs
that support performing these operations directly in memory (such as x86)
git-svn-id: trunk@35749 -
2017-04-07 16:02:40 +00:00