Mattias Gaertner
1f4868caa8
fcl-passrc: fixed parsing a(b).c<d>()
...
git-svn-id: trunk@47879 -
2020-12-29 00:26:00 +00:00
Mattias Gaertner
1d1dce1f60
fcl-passrc: fixed resolve string lit on non utf-8 system
...
git-svn-id: trunk@47872 -
2020-12-28 18:19:35 +00:00
Jonas Maebe
ea55c5f7e3
- disable the i386 assembly code for Linux/i386 as it doesn't work with a
...
fixed stack (uses hardcoded stack offsets) (mantis #38260 )
git-svn-id: trunk@47871 -
2020-12-28 16:58:58 +00:00
Mattias Gaertner
1cc31e73da
fcl-passrc: fixed typecast specialized array to specialized type
...
git-svn-id: trunk@47870 -
2020-12-28 16:51:02 +00:00
florian
93be88b270
* reverted r47862
...
git-svn-id: trunk@47869 -
2020-12-28 16:18:55 +00:00
michael
f1db695809
* Move chm writer to separate unit
...
git-svn-id: trunk@47868 -
2020-12-28 13:55:22 +00:00
marco
185f20b9ec
* fix comment typo mentioned by Bart
...
git-svn-id: trunk@47866 -
2020-12-28 10:46:35 +00:00
florian
6169bbeed5
+ $codealign directive accepts setting maxcrecord
...
git-svn-id: trunk@47862 -
2020-12-27 21:54:01 +00:00
Mattias Gaertner
968ea5c38b
fcl-passrc: check class intf impl proc type modifiers match
...
git-svn-id: trunk@47861 -
2020-12-27 20:51:52 +00:00
Jonas Maebe
6d03f2807a
* made exit codes unique
...
git-svn-id: trunk@47860 -
2020-12-27 13:19:05 +00:00
Jonas Maebe
b359080f42
* fixed round(currency) so it takes the rounding mode into account on
...
platforms where currency is "type int64"
* inline trunc(currency), trunc(comp) and round(comp) on platforms where
currency and comp are "type int64"
git-svn-id: trunk@47859 -
2020-12-27 13:19:02 +00:00
Jonas Maebe
514db355b1
* darwin/AArch64: always clear fpu exception flags regardless of the
...
triggered signal, as the kernel currently triggers SIGILL rather
than SIGFPE for FPU exceptions
git-svn-id: trunk@47858 -
2020-12-27 13:18:59 +00:00
Jonas Maebe
8ba4c4bcf0
* factored out the creation of loadnodes for special variables/parameters
...
git-svn-id: trunk@47857 -
2020-12-27 13:18:56 +00:00
Jonas Maebe
5e3e4437c4
* use new TSym.EscapedRealName property when creating new symbols with the
...
same name as existing symbols
git-svn-id: trunk@47856 -
2020-12-27 13:18:53 +00:00
Jonas Maebe
5d51a788f7
- revert r47208
...
* properly fix the internalerror it hid: only replace the local symbols
migrated to the parentfpstruct right before generating debug information,
so that internally generated self/result loads during optimisation passes
don't get confused by the replacement absolutevarsyms (those are normally
never encountered during optimisation, as regular absolutevarsyms are
replaced during parsing)
git-svn-id: trunk@47855 -
2020-12-27 13:18:50 +00:00
Jonas Maebe
3e047d3691
* generate more efficient code for trunc(currency), trunc(comp), and
...
round(comp) on platforms where currency and comp are handled using the FPU
o also fixes trunc(comp) and trunc(currency) compilation for x86 on LLVM
with -Oofastmath
* add missing removal of excess fpu precision typecasts for trunc/round
git-svn-id: trunk@47854 -
2020-12-27 13:18:47 +00:00
Jonas Maebe
c0c0acbcb9
* fixed llvm shadow symtable construction in case fields are reordered
...
(-Ooorderfields) and hence their offsets are no longer monotonically rising
* also fixed padding for variant bitpacked records in llvm shadow symtable
git-svn-id: trunk@47853 -
2020-12-27 13:18:44 +00:00
florian
98d3473a1a
* i386: disable InterlockedCompareExchange128 implementation if PIC is enabled
...
git-svn-id: trunk@47852 -
2020-12-26 21:11:12 +00:00
florian
33afecd117
+ support got modifier on labels
...
git-svn-id: trunk@47851 -
2020-12-26 18:51:45 +00:00
pierre
8b34e11da3
Add code to test Linux version, try statx syscall only if version is >= to 4.11
...
git-svn-id: trunk@47850 -
2020-12-26 17:08:56 +00:00
Károly Balogh
6190258f5d
m68k: new CPU capability - the LINK instruction supports LONG displacements (68020+)
...
git-svn-id: trunk@47849 -
2020-12-26 00:21:31 +00:00
florian
053c42da33
+ Xtensa: support large stack frames for the call0 abi
...
git-svn-id: trunk@47848 -
2020-12-25 18:18:09 +00:00
Károly Balogh
16a21eea87
m68k: the LEA+MOVEM to MOVEM optimization is not feasible on a ColdFire
...
git-svn-id: trunk@47847 -
2020-12-25 09:07:21 +00:00
florian
0fd7a5cb1f
* lines with 255 chars a little bit long, reformated them
...
git-svn-id: trunk@47845 -
2020-12-24 13:13:42 +00:00
pierre
26170815b4
Fix compilation of i8086 compiler after commit #47840
...
git-svn-id: trunk@47844 -
2020-12-24 11:26:01 +00:00
florian
6db164c993
* min/max optimization needs to check both operands of the if condition, even if no else-statement is passed, resolves #38249
...
git-svn-id: trunk@47843 -
2020-12-23 22:41:37 +00:00
florian
b03eefd5d0
* Ch_ information for vreduce* fixed
...
git-svn-id: trunk@47842 -
2020-12-23 17:58:07 +00:00
florian
3a668d9b7c
* i386 compilation fixed
...
git-svn-id: trunk@47841 -
2020-12-23 17:55:22 +00:00
florian
b713c7380b
* implemented UseAVX512 properly
...
+ make use of VREDUCE* for frac(...) if AVX512QD is a available
git-svn-id: trunk@47840 -
2020-12-23 17:25:09 +00:00
florian
b28aa5c684
* properly handle result size for avx/sse based frac function, resolves #38248
...
git-svn-id: trunk@47839 -
2020-12-23 16:10:08 +00:00
pierre
2bcd2a4a93
Appply fix from Gareth Moreton in bug report 38247
...
git-svn-id: trunk@47838 -
2020-12-23 10:19:44 +00:00
Mattias Gaertner
ed3741f06e
fcl-passrc: typecast generic template type to generic template type
...
git-svn-id: trunk@47836 -
2020-12-23 01:07:00 +00:00
Károly Balogh
01691e9ecb
* fix the m68k cross-builds by disabling part of r47824
...
git-svn-id: trunk@47835 -
2020-12-22 23:14:25 +00:00
svenbarth
cc92af8423
* apply patch by Blaise.ru to enable the correct generation of names for classes/interfaces inside local symtables; these will be required for reference function types which are in fact interfaces and classes, this does not mean that ordinary classes can be declared inside functions
...
Note: no test as the functionality is not yet used
git-svn-id: trunk@47834 -
2020-12-22 22:22:35 +00:00
florian
4f05523db9
+ RTMSupport function
...
+ if available use RTM to support InterlockedCompareExchange128 on i386
git-svn-id: trunk@47833 -
2020-12-22 22:00:08 +00:00
florian
da468719df
* patch by Christo Crause to take care of the fact that the esp8266 read function is non-blocking, resolves #38243
...
git-svn-id: trunk@47832 -
2020-12-21 21:43:06 +00:00
Mattias Gaertner
f0961c17c8
pastojs: fixed UTF-16 chars
...
git-svn-id: trunk@47831 -
2020-12-21 15:52:23 +00:00
Mattias Gaertner
fe4fda2a35
fcl-passrc: resolver: split source and target codepage
...
git-svn-id: trunk@47830 -
2020-12-21 15:50:50 +00:00
Mattias Gaertner
049af48bd8
fcl-js: writer: fixed writing invalid UTF-16
...
git-svn-id: trunk@47829 -
2020-12-21 15:48:48 +00:00
svenbarth
cbe352808a
* fix for Mantis #38238 : when creating a copy of a procdef for a procvar set the methodpointer flag also for methods of records
...
+ added test
git-svn-id: trunk@47826 -
2020-12-20 22:41:27 +00:00
florian
2a990b8167
+ patch by J. Gareth Moreton: some new x86 assembler optimizations, resolves #38130
...
git-svn-id: trunk@47824 -
2020-12-20 18:05:43 +00:00
marco
5cffbad92a
- fix \ in filenames:
...
* copy long_string to long_stringfn and long_string.
* turn off interpretive I/O (escapes) for long_stringfn
* use long_stringfn for filenames.
* filenames also get unquoted production for Delphi compatibility using new non_whitespace_string. Regex for that is a bit t.b.d, but this made it work with my examples
git-svn-id: trunk@47820 -
2020-12-19 21:47:25 +00:00
florian
b8fc193b0c
* extended test
...
git-svn-id: trunk@47818 -
2020-12-19 12:58:35 +00:00
ondrej
3f605a5b50
win rtl: load GetTimeZoneInformationForYear dynamically. Issue #38192
...
git-svn-id: trunk@47817 -
2020-12-19 11:57:58 +00:00
Mattias Gaertner
3f7d3e17cd
fcl-passrc: use fmShareDenyNone when writing pas
...
git-svn-id: trunk@47816 -
2020-12-19 11:46:53 +00:00
Mattias Gaertner
58421e40c6
pastojs: use fmShareDenyNone when writing js
...
git-svn-id: trunk@47815 -
2020-12-19 11:46:06 +00:00
Mattias Gaertner
c7d29ec118
pastojs: test #256+
...
git-svn-id: trunk@47814 -
2020-12-19 11:37:36 +00:00
florian
1d92cc43bb
* fpc_ln_real raises an exception for invalid operands if they exception is not masked
...
git-svn-id: trunk@47813 -
2020-12-18 22:36:17 +00:00
florian
072be7b0f7
* Aarch64: fix 32 bit div operations with constant denominators, resolves #38225
...
git-svn-id: trunk@47812 -
2020-12-18 21:39:35 +00:00
svenbarth
2a897f5b6b
* apply slightly adjusted patch by Blaise.ru which moves parsing of result types to a separate functions thus ensuring that File types can't be used for procedure variables (just like they already couldn't be used as a result type for normal functions)
...
+ added test
git-svn-id: trunk@47810 -
2020-12-18 13:50:39 +00:00