Commit Graph

59499 Commits

Author SHA1 Message Date
Mattias Gaertner
8e7a51065f pas2js: fixed try exit(value) finally read Result end
git-svn-id: trunk@45714 -
2020-06-29 21:08:44 +00:00
florian
d41f4c7c4e * correctly handle sign/zero extensions for optimization "var3", resolves #37254
git-svn-id: trunk@45713 -
2020-06-29 20:36:54 +00:00
Károly Balogh
cab80d1218 amiga-likes: add headers for timer.device/GetSysTime()
git-svn-id: trunk@45712 -
2020-06-28 22:23:36 +00:00
Károly Balogh
df42716665 m68k-amiga: added four new exec legacy support functions, these exec calls will be used in some DOS and AThreads rework
git-svn-id: trunk@45711 -
2020-06-28 22:05:05 +00:00
florian
c29a0d029b * reverted some stuff accidently committed in r45704
git-svn-id: trunk@45710 -
2020-06-28 20:33:10 +00:00
Mattias Gaertner
dbc0a689f0 pas2js: Pascal descendent from JS function: inherited calls ancestor function
git-svn-id: trunk@45709 -
2020-06-28 16:18:26 +00:00
Mattias Gaertner
27bb90fcc8 pas2js: Pascal descendent from JS function: inherited calls ancestor function
git-svn-id: trunk@45708 -
2020-06-28 15:55:31 +00:00
svenbarth
52678562e3 * correctly handle selection between Single and Double overloads for Currency
+ added test

git-svn-id: trunk@45707 -
2020-06-27 22:33:36 +00:00
svenbarth
eaa2a2006c * fix for Mantis #37272: also allow the empty set for dynamic array parameters; Delphi probably started to allow that together with array constructors.
+ added tests

git-svn-id: trunk@45706 -
2020-06-27 22:33:31 +00:00
florian
4bacec0ee3 * building for arm fixed
git-svn-id: trunk@45704 -
2020-06-27 19:59:27 +00:00
Mattias Gaertner
1adf6c9428 pas2js: descend pascal class from jsfunction
git-svn-id: trunk@45701 -
2020-06-27 07:15:23 +00:00
Mattias Gaertner
8d2e9b2f75 pas2js: descend pascal class from jsfunction
git-svn-id: trunk@45700 -
2020-06-27 07:02:42 +00:00
florian
225b06e84a * Xtensa: patch by Christo Crause: add IDF_PATH variable, read from the appropriate environment variable, part of #37242
git-svn-id: trunk@45698 -
2020-06-26 20:16:44 +00:00
Mattias Gaertner
bbd0dc3726 pas2js: extend external: class function NewInstance: check $class and set pascal class properties
git-svn-id: trunk@45697 -
2020-06-26 16:54:16 +00:00
florian
d62d6af7ec * Xtensa: patch by Christo Crause: fix controller date for esp8266, part of #37242
git-svn-id: trunk@45696 -
2020-06-25 20:50:43 +00:00
svenbarth
d401639b24 * fix for Mantis #37251: apply patches by Bi0T1N to implement the IsConstValue() intrinsic
+ added tests

git-svn-id: trunk@45695 -
2020-06-25 20:42:47 +00:00
svenbarth
533dc96db5 - remove FPC 3.0 compatibility IFDEF
git-svn-id: trunk@45694 -
2020-06-25 20:42:41 +00:00
svenbarth
25dc029d6d - partial fix for Mantis #37253: use SOCKADDR_STORAGE provided by the WinSock2 unit (which also has the correct size)
git-svn-id: trunk@45693 -
2020-06-25 20:42:35 +00:00
svenbarth
56fdba2c9b * partial fix for Mantis #37253: po_hascallingconvention needs to be set as well when setting tprocdef.proccalloption
git-svn-id: trunk@45692 -
2020-06-25 20:42:28 +00:00
florian
d22e24937a + Xtensa: patch by Christo Crause: support subarch lx106 in freertos Makefile, part of #37242
git-svn-id: trunk@45691 -
2020-06-24 20:30:28 +00:00
florian
caee96399e * patch by Christo Crause: support call0 abi in entry/exit code, part of #37242
git-svn-id: trunk@45685 -
2020-06-23 20:46:40 +00:00
florian
cba109c55d + Xtensa: patch by Christo Crause: support call0 abi in init final code part of #37242
git-svn-id: trunk@45684 -
2020-06-23 20:44:54 +00:00
marco
41406d161c * fix for mantis #37233 crash in getopts.getlongopts with empty shortopts argument
git-svn-id: trunk@45683 -
2020-06-23 09:01:37 +00:00
svenbarth
f94518a9ae * fix typo (no code changes)
git-svn-id: trunk@45680 -
2020-06-22 20:39:55 +00:00
florian
cb11e2568d + Xtensa: patch by Christo Crause to add optional MAC16 registers, resolves #37130
git-svn-id: trunk@45679 -
2020-06-22 19:05:13 +00:00
nickysn
e41912b076 * limit the ZX Spectrum programs address space up to $FDFC, because the RTL now
installs an interrupt handler at $FDFD

git-svn-id: trunk@45678 -
2020-06-22 14:13:54 +00:00
nickysn
1ae70c6825 * switch to interrupt mode 2 and install a custom maskable interrupt handler in
the ZX Spectrum startup code, because the ROM handler requires the IY register
  to always have a specific value, but the FPC code generator uses the IY
  register for various purposes, which causes random crashes and glitches when
  the timer interrupt occurs.

git-svn-id: trunk@45677 -
2020-06-22 14:00:33 +00:00
marco
b624b2a5f5 * fix #0037235 high(empty open array )= -1
git-svn-id: trunk@45676 -
2020-06-22 10:34:49 +00:00
yury
e63c03125a * Reworked tprocdef.is_implemented to fix a bug with the parentfp optimization. The bug was detected when using the llvm backend.
+ Added a test.

git-svn-id: trunk@45675 -
2020-06-21 19:52:14 +00:00
florian
221d8d84ae * Xtensa: MatchInstruction requires a postfix parameter
git-svn-id: trunk@45674 -
2020-06-21 19:16:27 +00:00
Jonas Maebe
3cb341eabc * ensure that dispose(managed_ptr) does not result in multiple evaluations of
the managed_ptr expression

git-svn-id: trunk@45673 -
2020-06-21 15:10:38 +00:00
florian
a7c0fa0def o patch for Xtensa by Christo Crause, resolves #37099
+ Added postfix parsing in tattreader.GetToken
    - Removed all postfixed versions of OpCodes from the instruction list
    + Added all missing OpCodes from Xtensa ISA
    * Changed branch OpCode to A_B, similar to ARM
    + Added missing branch condition flags BCI and BSI
    * Updated existing compiler code that referred to the old postfixed instructions
    + Added prefix and postfix handling in TxtensaInstrWriter.WriteInstruction
    * Updated TCPUAddNode.second_addfloat to specify .S postfix
    * Updated tcpuunaryminusnode.second_float to specify .S postfix
    + Implemented prefix and postfix identification in txtensaattreader.is_asmopcode
    * Adapted branch condition extraction to respect postfixes
    * Changed itcpugas to call findreg_by_name_table from raatt.pas (same as issue #0037121, difficult to test these changes without including a fix for the register name search problem)

git-svn-id: trunk@45672 -
2020-06-21 14:51:40 +00:00
Jonas Maebe
cc7b6d0b05 * regenerated message files
git-svn-id: trunk@45671 -
2020-06-21 12:26:55 +00:00
Jonas Maebe
a423bf6402 * fix -Agas-darwin to say Aas-darwin for x86-64, and also add it for i386
(mantis #37230)

git-svn-id: trunk@45670 -
2020-06-21 12:26:52 +00:00
nickysn
27943baa2f + support z80 in the fpc launcher utility
git-svn-id: trunk@45669 -
2020-06-20 23:30:50 +00:00
florian
78698beaad * compilation fixed
git-svn-id: trunk@45668 -
2020-06-20 20:22:21 +00:00
florian
80111a0a60 * make local variables in assembler blocks working again after r44933
* test for #37218

git-svn-id: trunk@45667 -
2020-06-20 20:17:53 +00:00
yury
4e1e35aef5 * Added optimization option cs_opt_unused_para. It is enabled for -O2 and higher. The parentfp optimization is tied to cs_opt_unused_para.
git-svn-id: trunk@45666 -
2020-06-20 18:47:42 +00:00
yury
7bffafdf8b * Improved the parentfp optimization to properly handle cases when a nested routine calls other nested routines.
git-svn-id: trunk@45665 -
2020-06-20 18:34:26 +00:00
yury
c15b6f4516 * Fixed the parentfp optimization for some cases when nested procvars are used.
git-svn-id: trunk@45664 -
2020-06-20 18:28:07 +00:00
Károly Balogh
cc23515927 z80: vasm doesn't support the JRJP pseudo instruction, so change it to JP during write
git-svn-id: trunk@45663 -
2020-06-20 16:51:15 +00:00
yury
11fd466394 * Optimize parentfp when optimization level 1 and higher to be debugger friendly.
git-svn-id: trunk@45661 -
2020-06-20 11:14:43 +00:00
Mattias Gaertner
120eb6b8a2 pas2js: fixed system.inc()
git-svn-id: trunk@45660 -
2020-06-20 09:34:44 +00:00
florian
a2303bd899 * fixed copy&paste error of r45658
git-svn-id: trunk@45659 -
2020-06-19 19:55:14 +00:00
florian
2e36783d0e * better check for short boolean evaluation in firstcomplex
git-svn-id: trunk@45658 -
2020-06-18 20:32:55 +00:00
michael
7e89141993 * Fix bug #37223
git-svn-id: trunk@45657 -
2020-06-18 07:39:56 +00:00
florian
8738b4b47f + might_have_sideeffects checks also if the tempinitcode of a tempref node might have side effects
git-svn-id: trunk@45656 -
2020-06-17 20:33:04 +00:00
florian
62c417c8bf * temporarily fix #37034 by disabling the problematic optimization until the real cause is fixed
git-svn-id: trunk@45655 -
2020-06-15 19:57:39 +00:00
florian
c6c996f506 * write length/code page when writing the string type
git-svn-id: trunk@45654 -
2020-06-15 19:50:49 +00:00
Mattias Gaertner
1ff1921d14 pas2js: clean up
git-svn-id: trunk@45653 -
2020-06-14 17:43:50 +00:00