Commit Graph

50569 Commits

Author SHA1 Message Date
Mattias Gaertner
4f11e61033 fcl-passrc: external names can be char
git-svn-id: trunk@35842 -
2017-04-18 21:37:23 +00:00
nickysn
e708a76f70 * some i386 optimizations for 64-bit SHL/SHR/SAR in tcg64f386.a_op64_const_reg:
* only use SHx/RCx when optimizing for size
  * use ADD reglo,reglo + ADC reghi,reghi for SHL by 1 on i386 and i486

git-svn-id: trunk@35841 -
2017-04-18 21:30:31 +00:00
Mattias Gaertner
e47747380e pastojs: local vars $mod and self, no createCallBack for procs, nested inherited
git-svn-id: trunk@35840 -
2017-04-18 20:31:50 +00:00
Mattias Gaertner
5cf503f57d fcl-passrc: nested inherited, emit hints for call overload error
git-svn-id: trunk@35839 -
2017-04-18 20:30:55 +00:00
nickysn
0264c4cace + implemented OP_SHR/OP_SHL/OP_SAR correctly in tcg64f386.a_op64_const_ref for
const values larger than 31

git-svn-id: trunk@35838 -
2017-04-18 16:02:48 +00:00
nickysn
16af6f03fb + support OP_SHR/OP_SHL/OP_SAR/OP_ROL/OP_ROR in tcgx86.a_op_reg_ref
git-svn-id: trunk@35837 -
2017-04-18 15:14:28 +00:00
nickysn
d7b8d8dd54 * don't emit the "SUB ECX,32" instruction on i386, when doing a 64-bit shift by
reg, with a value >=32. The instruction is redundant, because the SHL/SHR
  instructions already AND mask the shift count by 31.

git-svn-id: trunk@35836 -
2017-04-18 15:09:20 +00:00
nickysn
d7c8a081a1 + enable using the cg64 ops OP_SHR/OP_SHL/OP_SAR on i386 for implementing the
64-bit in_sar/shl/shr_assign_x_y inline nodes

git-svn-id: trunk@35835 -
2017-04-18 14:36:41 +00:00
nickysn
03dfa07ebc + implemented OP_SHR/OP_SHL/OP_SAR in i386's tcg64f386.a_op64_reg_ref
git-svn-id: trunk@35834 -
2017-04-18 14:34:20 +00:00
pierre
17b2671213 Regenerate all Makefile's after changes related to FPCDIR checks
git-svn-id: trunk@35833 -
2017-04-18 14:15:47 +00:00
nickysn
3d28878210 + added taicpu.op_reg_reg_ref() constructor for x86, in order to support the
shld/shrd [ref],reg,CL instructions

git-svn-id: trunk@35832 -
2017-04-18 12:47:57 +00:00
nickysn
10d7603dce + implemented OP_SHR/OP_SHL/OP_SAR support in tcg64f386.a_op64_reg_reg
git-svn-id: trunk@35831 -
2017-04-18 12:24:46 +00:00
nickysn
7e8c89435f * avoid the AND instruction in the i386 shr64/shl64 code, by using TEST+JZ,
instead of CMP+JL

git-svn-id: trunk@35830 -
2017-04-18 11:36:48 +00:00
michael
f29bbe25a6 * Parse Reference To Procedure|function
git-svn-id: trunk@35829 -
2017-04-18 11:24:56 +00:00
Mattias Gaertner
1b07db5a08 fppas2js: fixed compilation, due to changes in resolver
git-svn-id: trunk@35828 -
2017-04-18 07:46:45 +00:00
Mattias Gaertner
1117a69f78 fcl-passrc: base types ansichar, rawbytestrring, choosing overload by distance, fail if multi overloads are lossy or use default params
git-svn-id: trunk@35827 -
2017-04-18 07:44:52 +00:00
pierre
14ec66c649 Regenerated files after 35825: Follow-up to commit 35817: Extend do not accept $(FPCDIR)/units sub-directory existence to validate FPCDIR variable value
git-svn-id: trunk@35826 -
2017-04-18 06:33:34 +00:00
pierre
94ed85fa64 Follow-up to commit 35817: Extend do not accept $(FPCDIR)/units sub-directory existence to validate FPCDIR variable value
git-svn-id: trunk@35825 -
2017-04-18 06:30:42 +00:00
Jonas Maebe
4e1f999b02 * write full path name when ppu crc checks fail/conflict (patch by
C. Western, mantis #31650)

git-svn-id: trunk@35823 -
2017-04-17 20:42:03 +00:00
michael
87b6646e02 * Demo for simple file server
git-svn-id: trunk@35822 -
2017-04-17 11:35:34 +00:00
michael
5a7a05bd3f * SimpleFileModule for use with new router
git-svn-id: trunk@35821 -
2017-04-17 11:30:58 +00:00
joost
5051a0ccc5 * Fixed AV
git-svn-id: trunk@35820 -
2017-04-17 11:16:06 +00:00
joost
74f952324f * Added test for command-line package-variants (introduced in r35814)
git-svn-id: trunk@35819 -
2017-04-17 10:15:07 +00:00
pierre
e6d5bd049f Regenerated after commit 35817: * Do not accept $(FPCDIR)/units sub-directory existence to validate FPCDIR variable value
git-svn-id: trunk@35818 -
2017-04-17 10:06:41 +00:00
pierre
19148275db * Do not accept $(FPCDIR)/units sub-directory existence to validate FPCDIR variable value
git-svn-id: trunk@35817 -
2017-04-17 10:06:11 +00:00
joost
cd13255d56 * Add a debug message to determine if a package is a source- or installed-package
git-svn-id: trunk@35816 -
2017-04-16 22:32:14 +00:00
joost
721e0d34e3 * Fixed help-message
git-svn-id: trunk@35815 -
2017-04-16 22:28:36 +00:00
joost
efd5aace57 * Added ability to add package-variants on the command-line
git-svn-id: trunk@35814 -
2017-04-16 22:21:30 +00:00
joost
0f8751c9e6 * Fixed task-description
git-svn-id: trunk@35813 -
2017-04-16 22:21:14 +00:00
joost
e5a8747f5e * Fixed false changed-dependency messages
* Raised changed-dependency-messages loglevel from debug to warning

git-svn-id: trunk@35812 -
2017-04-16 20:10:02 +00:00
Mattias Gaertner
0139308762 pastojs: typecast function result
git-svn-id: trunk@35811 -
2017-04-16 19:31:20 +00:00
Mattias Gaertner
a4ffecf988 fcl-passrc: typecast function result
git-svn-id: trunk@35810 -
2017-04-16 19:31:09 +00:00
Mattias Gaertner
9e57c2f5d2 pastojs: typecast procvar and pointer, name anonymous array type
git-svn-id: trunk@35809 -
2017-04-16 19:12:11 +00:00
Mattias Gaertner
e32782f5b3 fcl-passrc: resolver: typecast procvar and pointer
git-svn-id: trunk@35808 -
2017-04-16 19:09:47 +00:00
joost
790c9995fe * Added PackageVariant-test
git-svn-id: trunk@35807 -
2017-04-16 18:53:50 +00:00
Mattias Gaertner
4775c6d517 fcl-passrc: analyzer: fixed marking method override
git-svn-id: trunk@35806 -
2017-04-15 21:10:54 +00:00
Mattias Gaertner
f57816c116 pastojs: clean up
git-svn-id: trunk@35805 -
2017-04-15 19:23:22 +00:00
Mattias Gaertner
89bf386545 pastojs: const set of chars, in operator returns boolean on false
git-svn-id: trunk@35804 -
2017-04-15 19:17:52 +00:00
Mattias Gaertner
975b5b8007 pastojs: fixed typeinfo module path
git-svn-id: trunk@35803 -
2017-04-15 16:15:14 +00:00
Mattias Gaertner
e7eefef464 pastojs: name anonymous enumtypes
git-svn-id: trunk@35802 -
2017-04-15 14:55:28 +00:00
Mattias Gaertner
45fe33e8d8 fcl-passrc: resolver: option to name anonymous enumtypes
git-svn-id: trunk@35801 -
2017-04-15 14:55:04 +00:00
michael
6bdda7b85f * Fix bug #31665
git-svn-id: trunk@35800 -
2017-04-15 12:49:26 +00:00
Mattias Gaertner
7cc9a70dfb pastojs:
- typeinfo(varclass) is converted to varclass.$rtti
- removed workaround for external 'Object' and 'Array' [] operator

git-svn-id: trunk@35799 -
2017-04-15 10:15:02 +00:00
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