Commit Graph

54366 Commits

Author SHA1 Message Date
yury
bcf03a52d8 * Disabled some tests for android since they turn PIC off.
git-svn-id: trunk@39972 -
2018-10-18 13:05:45 +00:00
yury
9199d1935a * Enabled compilation of the cpu unit for arm-android and x86_64-android.
git-svn-id: trunk@39971 -
2018-10-18 13:01:36 +00:00
yury
aa6f6423b2 * tests: On x86_64-android long double is 128-bit. There is no support for 128-bit floats in FPC yet. So disable long double tests for x86_64-android for now.
git-svn-id: trunk@39970 -
2018-10-18 12:31:23 +00:00
yury
4643a0b1ff * Register external gas assembler for aarch64-android and x86_64-android.
git-svn-id: trunk@39969 -
2018-10-18 11:48:27 +00:00
Mattias Gaertner
27ec656ab7 fcl-passrc: adaptions for pas2js
git-svn-id: trunk@39968 -
2018-10-18 10:02:47 +00:00
Mattias Gaertner
91d7658844 pas2js: fixed calling $final, do not call BeforeDestruction on exception in constructor
git-svn-id: trunk@39966 -
2018-10-18 10:00:02 +00:00
svenbarth
c0c602f76d * fix tests as depending on the platform the first parameter in the RTTI data might *not* be $self
git-svn-id: trunk@39965 -
2018-10-17 20:53:51 +00:00
yury
7b150102bf + Added test object files for x86_64-android.
git-svn-id: trunk@39964 -
2018-10-17 19:39:17 +00:00
yury
e8d43c8fed * Fixed range check errors.
git-svn-id: trunk@39963 -
2018-10-17 19:12:27 +00:00
yury
7eb9b23fa5 * Reverted r39961.
git-svn-id: trunk@39962 -
2018-10-17 18:56:29 +00:00
yury
692c287c3e * Undef FPC_HAS_TYPE_EXTENDED for x86_64-android.
git-svn-id: trunk@39961 -
2018-10-17 18:46:04 +00:00
yury
d1b1655441 * x86_64-android requires sigreturn for proper signal handling.
git-svn-id: trunk@39960 -
2018-10-17 17:53:57 +00:00
yury
7ddf0a635c + Added the auto-generated list syscalls for mips64-android. It will be needed when mips64 is supported.
git-svn-id: trunk@39959 -
2018-10-17 17:16:05 +00:00
yury
a29290202f * Regenerated makefiles to support x86_64-android.
git-svn-id: trunk@39958 -
2018-10-17 17:12:20 +00:00
yury
efdac0623f * revision.inc
git-svn-id: trunk@39957 -
2018-10-17 17:10:37 +00:00
yury
e367577bf1 + added support for x86_64-android target.
git-svn-id: trunk@39956 -
2018-10-17 16:56:27 +00:00
yury
e60a5ebfe7 * Fixed overflow error for the qword version of align() when i=0.
git-svn-id: trunk@39954 -
2018-10-17 13:18:45 +00:00
yury
93d672bf16 * aarch64: Fixed loading of a function result which is returned in 4 32-bit MM registers to 2 64-bit int registers. Bug #30329.
git-svn-id: trunk@39953 -
2018-10-17 11:41:34 +00:00
yury
c306f57ecb * Reverted r39947. According to Sven, the $self parameters is not required to be first parameter in RTTI. Appropriate tests will be fixed.
git-svn-id: trunk@39952 -
2018-10-17 08:52:57 +00:00
yury
7c94d00a4a * Fixed bug #17413 (and the tw17413 test) for aarch64 by adding additional check.
git-svn-id: trunk@39951 -
2018-10-16 21:16:30 +00:00
Jonas Maebe
fbfc98a600 * changed definitino of Objective-C BOOL type to Boolean8 where
appropriate
  * changed all Boolean types in the Cocoa headers to BOOL (rest of
    mantis #34411)

git-svn-id: trunk@39950 -
2018-10-16 21:14:26 +00:00
Jonas Maebe
0b246f3dbd * converted Boolean8 to an internal type, and mapped Boolean to the
new internal pasbool1(type) (part of mantis #34411)
   o apply the _Bool x86-64 parameter passing rules only to pasbool1

git-svn-id: trunk@39949 -
2018-10-16 21:14:18 +00:00
yury
9ee1682955 * Fixed interface delegation for aarch64 (tdel1 and tdel2 tests).
It was broken by r31676 which did not take in account r29953. As a consequence $self was passed in register x1 instead of x0 when the method result is of a managed type.
  This fix enables changing order of the $self and $result parameters only for aarch64 AND llvm combination where it is actually needed.
  The issue with interface delegation still exists for aarch64-llvm and need to be fixed separately. Probably by applying llvm-specific workarounds as it was made in r29953 for regular aarch64 targets.

git-svn-id: trunk@39948 -
2018-10-16 20:32:02 +00:00
yury
84b5129f1d * Fixed writing of method's RTTI for aarch64 by explicitly writing the $self parameter first.
git-svn-id: trunk@39947 -
2018-10-16 17:24:07 +00:00
Mattias Gaertner
a70f58f68e fcl-passrc: adapted pasresolveeval for pas2js
git-svn-id: trunk@39946 -
2018-10-16 10:48:56 +00:00
pierre
4c0a213f0d Add -Tlinux and -Tembedded help lines for riscv32 and riscv64 compilers
git-svn-id: trunk@39945 -
2018-10-16 10:41:27 +00:00
Mattias Gaertner
23fe74416c pastojs: currency:=integer becomes c:=i*10000, integer(currency) becomes Math.floor(cur/10000)
git-svn-id: trunk@39944 -
2018-10-16 07:55:36 +00:00
Mattias Gaertner
3f08a6c05c fcl-passrc: resolver: int64(currency)
git-svn-id: trunk@39942 -
2018-10-16 07:27:52 +00:00
Mattias Gaertner
d9be52c759 fcl-passrc: fixed MaxPrecInt to TMaxPrecInt, using TMaxPrecInt instead of int64
git-svn-id: trunk@39940 -
2018-10-15 21:58:04 +00:00
Mattias Gaertner
c7675335a6 fcl-passrc: adapted pparser for pas2js
git-svn-id: trunk@39939 -
2018-10-15 19:33:39 +00:00
Mattias Gaertner
0e13bac228 fcl-passrc: useanalyzer: fixed p^.x:=
git-svn-id: trunk@39937 -
2018-10-15 19:32:07 +00:00
pierre
293973b306 Add missing setting of expectloc for multiplications
git-svn-id: trunk@39935 -
2018-10-14 22:18:50 +00:00
florian
eea088c5f5 * allow nil to be assigned to generic types, resolves #34037
* niln is also a constant node

git-svn-id: trunk@39934 -
2018-10-14 07:38:13 +00:00
Mattias Gaertner
5499533ddc fcl-passrc: useanalyzer: if then else ;
git-svn-id: trunk@39932 -
2018-10-13 21:01:50 +00:00
Mattias Gaertner
dd81e62f3a pastojs: if then <empty> else ;
git-svn-id: trunk@39929 -
2018-10-13 20:57:05 +00:00
Mattias Gaertner
15dfb9eed3 fcl-passrc: resolver: if then <empty> else ;
git-svn-id: trunk@39928 -
2018-10-13 20:56:48 +00:00
Mattias Gaertner
903854ad82 fcl-passrc: resolver: fixed include(FuncResultSet,enum)
git-svn-id: trunk@39926 -
2018-10-13 20:40:23 +00:00
pierre
c9c8ff1eef Set MaxLocalsSize according to address size not register size
git-svn-id: trunk@39925 -
2018-10-13 12:00:31 +00:00
pierre
5ccced201a Downgrade some warnings to notes for EXTDEBUG
git-svn-id: trunk@39924 -
2018-10-13 11:35:34 +00:00
pierre
aa89182bf5 Fix compilation with -dEXTDEBUG
git-svn-id: trunk@39923 -
2018-10-13 11:34:53 +00:00
pierre
68bcffc3e0 Fix riscv64 compiler compilation with -dEXTDEBUG
git-svn-id: trunk@39922 -
2018-10-13 09:47:29 +00:00
Mattias Gaertner
894e4823a5 fcl-passrc: pscanner: adapted for pas2js
git-svn-id: trunk@39921 -
2018-10-12 15:20:03 +00:00
Mattias Gaertner
80c12f56b7 fcl-passrc: useanalyzer: fixed WPO for record constants
git-svn-id: trunk@39919 -
2018-10-12 15:17:45 +00:00
yury
9ef7a17390 * Delete temp files after test.
git-svn-id: trunk@39918 -
2018-10-12 15:08:30 +00:00
yury
5fc2ea362f * Use syscall_nr_renameat for android.
git-svn-id: trunk@39917 -
2018-10-12 15:07:55 +00:00
yury
d0b6f427d3 * Fixed checks for exceeding limit of locals space. Prevent range and overflow errors during the checks. Introduced the MaxLocalsSize constant which provides the maximum possible size of locals space (stack frame) depending of bitness of a cpu.
git-svn-id: trunk@39916 -
2018-10-12 14:43:17 +00:00
yury
4860f3934a * Fixed overflow error when calling align() with corner case values such as align($7FFFFFFC, 4) for the longint variant.
git-svn-id: trunk@39915 -
2018-10-12 14:38:14 +00:00
pierre
a898ae856f Adapt ppudump to fix introduced in revision 39912
git-svn-id: trunk@39914 -
2018-10-12 06:05:50 +00:00
pierre
66e7c78a8f fix position of ppuload_platform for trecorddef
git-svn-id: trunk@39913 -
2018-10-11 21:02:25 +00:00
pierre
88bddc2cb0 Fix ppuload for string type for i8086, use getasizeint for all string defs but short string
git-svn-id: trunk@39912 -
2018-10-11 20:38:39 +00:00