Commit Graph

54787 Commits

Author SHA1 Message Date
yury
78a26e53f8 * Fixed warnings.
git-svn-id: trunk@40187 -
2018-11-02 19:04:52 +00:00
yury
a077e0dd90 * Fixed comparison.
git-svn-id: trunk@40186 -
2018-11-02 19:04:26 +00:00
yury
30d64cec68 * Removed unused local vars.
git-svn-id: trunk@40185 -
2018-11-02 18:51:19 +00:00
yury
a026252508 * Commented out unused "size" local var.
git-svn-id: trunk@40184 -
2018-11-02 18:47:34 +00:00
yury
4357caaad8 * Removed unused local vars.
git-svn-id: trunk@40183 -
2018-11-02 18:44:29 +00:00
yury
2dc64e5fae * Reverted r40181 because the "not inlined" notes are issued not due to access to private fields, but due to string conversion. It need to be fixed by overloaded versions of some methods.
git-svn-id: trunk@40182 -
2018-11-02 18:21:26 +00:00
yury
fa2d82f879 * Removed 'inline' from public methods of TFPObjectList and TFPHashObjectList since they use private fields and can not be inlined when called from other units.
git-svn-id: trunk@40181 -
2018-11-02 16:55:33 +00:00
yury
1b151df89f * Make SetLength() to emit hint "Local variable "s" of a managed type does not seem to be initialized" instead of the warning. This change is needed because when calling a regular procedure with a ver parameter of a managed type the hint is generated. Now SetLength() behaves the same.
git-svn-id: trunk@40180 -
2018-11-02 16:19:18 +00:00
yury
bfbe50bc04 * pas2jni: Added option: -N - Do not generate a Java code for auto-loading of the shared library.
* pas2jni: Do not generate TClass helper code if no classes are used at all.

git-svn-id: trunk@40179 -
2018-11-02 15:18:26 +00:00
Mattias Gaertner
2aab88ee4e pastojs: fixed range check of o.aArray[index]
git-svn-id: trunk@40177 -
2018-11-02 00:20:48 +00:00
Mattias Gaertner
3979f9922a pastojs: fixed range check of o.aString[index]
git-svn-id: trunk@40175 -
2018-11-02 00:06:29 +00:00
Mattias Gaertner
f116d51fd9 pastojs: load include file from cache
git-svn-id: trunk@40173 -
2018-11-01 23:41:06 +00:00
Mattias Gaertner
571094912b fcl-passrc: fixed error position on include file not found
git-svn-id: trunk@40171 -
2018-11-01 23:23:34 +00:00
pierre
2a9ce2ed6c Disable three operand overload of MatchOpType for avr and jvm targets, which only have 2 operands max
git-svn-id: trunk@40170 -
2018-11-01 23:04:18 +00:00
Mattias Gaertner
c39cc4475f pastojs: fixed assigning class var of descended classes
git-svn-id: trunk@40168 -
2018-11-01 22:40:57 +00:00
Mattias Gaertner
3f50c51225 fcl-passrc: added TPasResolver.IsClassField
git-svn-id: trunk@40166 -
2018-11-01 22:36:46 +00:00
Mattias Gaertner
2070df21ac fcl-passrc: debug check
git-svn-id: trunk@40165 -
2018-11-01 22:36:24 +00:00
Mattias Gaertner
2f5d081b5d nodepas2js: clean up
git-svn-id: trunk@40164 -
2018-11-01 22:35:17 +00:00
pierre
e49025a086 More -CriotR fixes:
* entfile.pas: Change PPU header falgs filed from longint to dword.
  * ngtcon.pas: Change local variable startoffset type to aword.
  * omfbase.pas: Avoid calling move with a nil string s indexed as s[1],
    to avoid a range check error.
  * owomflib.pas: Disable range check explicitly in hash computation.
  * utils/ppuutils/ppudump.pp: Adapt to flags type change in entfile.pas

git-svn-id: trunk@40163 -
2018-11-01 21:58:54 +00:00
florian
59d5d6ec95 + factored out TX86AsmOptimizer.PrePeepholeOptIMUL, used now by x86-64 and i386
* generalized and simplified the code

git-svn-id: trunk@40162 -
2018-11-01 20:49:20 +00:00
florian
47c9bca7f2 * number of cycles slightly increased for better measurements
git-svn-id: trunk@40161 -
2018-11-01 20:49:19 +00:00
florian
2a016889de * skip align directives after unconditional jumps
git-svn-id: trunk@40160 -
2018-11-01 20:49:18 +00:00
florian
a092da723a + new fields for more precise control of alignment
+ support of new alignment control values for GNU AS writer
+ support of new alignment control values for binary writer
* better alignment settings on i386-win32
* improved inserted align directives for if nodes

git-svn-id: trunk@40159 -
2018-11-01 20:49:17 +00:00
florian
64e8557180 + introduce tai_align_abstract.create_max which limits the maximal number of bytes being inserted for alignment
git-svn-id: trunk@40158 -
2018-11-01 20:49:15 +00:00
florian
cdce68451a - x86 align does not use a register anymore, code removed
git-svn-id: trunk@40157 -
2018-11-01 20:49:15 +00:00
Jonas Maebe
011968e74b * replaced "is" test with faster field value test
git-svn-id: trunk@40156 -
2018-11-01 20:39:41 +00:00
Jonas Maebe
1a9eb77698 * fixed compilation with -O3 (one false positive, one real error)
git-svn-id: trunk@40155 -
2018-11-01 20:39:38 +00:00
Mattias Gaertner
5951a3c0ce pastojs: fixed inc(classvar)
git-svn-id: trunk@40152 -
2018-11-01 15:06:59 +00:00
Mattias Gaertner
f5574bebc9 pastojs: using same val function as resolver
git-svn-id: trunk@40151 -
2018-11-01 13:58:26 +00:00
Mattias Gaertner
681016370e fcl-passrc: fixed IsCharLiteral in pas2js
git-svn-id: trunk@40150 -
2018-11-01 13:58:01 +00:00
Mattias Gaertner
f9e426c45a pas2js: clean up $shared in sets
git-svn-id: trunk@40148 -
2018-11-01 13:37:49 +00:00
Mattias Gaertner
ef3b1ee5ba pas2js: hide $shared in sets
git-svn-id: trunk@40146 -
2018-11-01 13:35:12 +00:00
Mattias Gaertner
a2f89ac1f9 pas2js: debug val() failure
git-svn-id: trunk@40144 -
2018-11-01 13:32:58 +00:00
Mattias Gaertner
05243a2de6 pas2js: hide $shared in sets
git-svn-id: trunk@40143 -
2018-11-01 13:32:19 +00:00
Jonas Maebe
0cd85d73e4 * ttryfinallynode now inherits from tbinarynode instead of tloopnode, as its
t1 field was always set to tnothingnode

git-svn-id: trunk@40142 -
2018-11-01 13:19:33 +00:00
Mattias Gaertner
cc44f64920 pastojs: fixed for e in set do
git-svn-id: trunk@40140 -
2018-11-01 12:43:39 +00:00
Mattias Gaertner
db4f11201a nodepas2js: exception handling with stacktrace
git-svn-id: trunk@40139 -
2018-11-01 12:42:40 +00:00
Mattias Gaertner
32907ada6d pastojs: fixed searching paths without trailing pathdelim
git-svn-id: trunk@40138 -
2018-11-01 12:42:05 +00:00
Mattias Gaertner
42c2859ce4 fcl-passrc: fixed hashlist for pas2js
git-svn-id: trunk@40137 -
2018-11-01 12:41:04 +00:00
Mattias Gaertner
46b1838d60 fcl-json: fixed hashlist for pas2js
git-svn-id: trunk@40136 -
2018-11-01 12:40:46 +00:00
Mattias Gaertner
b5e7566e55 fcl-js: fixed hashlist for pas2js
git-svn-id: trunk@40135 -
2018-11-01 12:40:25 +00:00
Mattias Gaertner
72bab28659 pastojs: fixed local record and enum types
git-svn-id: trunk@40133 -
2018-11-01 10:02:18 +00:00
pierre
3b49fda0a2 Only call moved if len>0, as otherwise astring local variable is nil, which leads to a range check error for astring[1]
git-svn-id: trunk@40132 -
2018-11-01 07:09:47 +00:00
pierre
96460b70b2 Remove another wrong typecast when testing that a tai is an instruction
git-svn-id: trunk@40131 -
2018-11-01 07:01:02 +00:00
Mattias Gaertner
a34b1f36e0 pastojs: fixed parsing if-then-raise-else
git-svn-id: trunk@40129 -
2018-11-01 00:19:39 +00:00
Mattias Gaertner
057534ef47 pastojs: fixed initializing static array of record
git-svn-id: trunk@40127 -
2018-10-31 23:40:45 +00:00
Mattias Gaertner
4d69aebf18 pastojs: nodejs js exception handling
git-svn-id: trunk@40126 -
2018-10-31 23:40:14 +00:00
Mattias Gaertner
5f43eb5baa fcl-passrc: fixed TPasResHashList arbitrary values
git-svn-id: trunk@40125 -
2018-10-31 23:37:55 +00:00
pierre
9c90f593ab Add global range check disable for i8086 cgcpu and x86 nx86add units
git-svn-id: trunk@40124 -
2018-10-31 23:20:29 +00:00
pierre
a015c779ff Remove unneeded typecasts in TryTOptimizeMove
git-svn-id: trunk@40123 -
2018-10-31 23:19:39 +00:00