Commit Graph

21432 Commits

Author SHA1 Message Date
florian
078a6c31c9 * explicitly reset successor if noreturn is set
git-svn-id: trunk@49487 -
(cherry picked from commit a988c0fab1)
2021-08-23 23:53:22 +02:00
florian
9f2ab5eb2f + new switches -DD and DT which allow to pass an arbitrary string which is used by %DATE%/%TIME%
git-svn-id: trunk@47132 -
(cherry picked from commit 9ea52b8578)

# Conflicts:
#	compiler/msgidx.inc
#	compiler/msgtxt.inc
2021-08-21 21:26:25 +02:00
florian
7fca3c9b1f * check if git executable really exists
(cherry picked from commit a77f5221f3)
2021-08-21 20:57:24 +02:00
Don
5e06e89678 Allow custom definition of GIT.
(cherry picked from commit f6636c9c1c)
2021-08-21 20:55:44 +02:00
florian
d1f11bb292 * always use $(GIT) to call git
(cherry picked from commit a4878d892c)

# Conflicts:
#	compiler/Makefile
2021-08-21 20:55:38 +02:00
florian
7ae51087e5 * compiler Makefile checks if SOURCE_SOURCE_DATE_EPOCH_DATE is set or if git is used, in either case the former or the latter are used for the build date reported by the compiler
git-svn-id: trunk@47133 -
(cherry picked from commit 201281ae2a)
2021-08-21 20:46:54 +02:00
florian
055283f9cb * set register size correctly for popcnt(<byte>), resolves #37400
(cherry picked from commit ed158f1e52)

# Conflicts:
#	.gitattributes
2021-08-21 16:36:43 +02:00
florian
f58f92f005 * fix change information for popcnt
(cherry picked from commit a45123a87b)
2021-08-19 23:05:07 +02:00
florian
1fd49868c7 * properly check if -unpushed should be appended in revision.inc
(cherry picked from commit 3e3f99c328)
2021-08-18 10:57:27 +02:00
florian
d48e34a81d + include -unpushed in revision.inc if not all changes are pushed to the remote
(cherry picked from commit 4c1eb4e454)
2021-08-17 23:01:40 +02:00
florian
c69fde258c * if sub nodes of a commutative node contain conditionally executed nodes, these sub nodes might not be swapped
as this might result in some nodes not being executed, like temp. create nodes with init. code, see e.g. issue #34653, resolves #34653
(cherry picked from commit e24449bcfd)

# Conflicts:
#	.gitattributes
2021-08-16 23:11:06 +02:00
florian
1127761f49 * do not swap left/right code generation for assignment nodes if
conditional expressions are involved, resolves #38129
(cherry picked from commit cc64d9eb4e)

# Conflicts:
#	.gitattributes
2021-08-16 23:08:20 +02:00
florian
2e7736064e * use git describe to create a revision.inc if a .git dir is found
(cherry picked from commit 0ff3f04700)

# Conflicts:
#	compiler/Makefile
2021-08-16 21:37:51 +02:00
pierre
d1a642100a Add PPUDUMP variable to be able to specify explicit version of ppudump program, defaulting to ppudump executable in SEARCHPATH
git-svn-id: trunk@42580 -
(cherry picked from commit 754b1bd930)
2021-08-16 21:36:28 +02:00
Don
fce62a84a8 Remove "r" from FPC revision.
(cherry picked from commit d147533c94)
2021-08-13 22:40:57 +02:00
florian
8d6a8e5492 + support SHLX and SHRX in TX86AsmOptimizer.RegLoadedWithNewValue, resolves #39178
(cherry picked from commit 86ac03e07e)

# Conflicts:
#	.gitattributes
2021-08-09 23:12:01 +02:00
florian
6847e7bfa8 * CMOV does not read the second operand
git-svn-id: trunk@49578 -
(cherry picked from commit 9377d9a029)
2021-08-08 17:10:11 +02:00
pierre
2ade09bdf8 Merge commit #45733 to fixes branch:
------------------------------------------------------------------------
r45733 | pierre | 2020-07-06 13:39:42 +0200 (Mon, 06 Jul 2020) | 1 line

 Fix cycle with -CriotR option on aarch64-linux
------------------------------------------------------------------------
--- Merging r45733 into '.':
U    compiler/constexp.pas
--- Recording mergeinfo for merge of r45733 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49606 -
2021-07-13 09:44:53 +00:00
pierre
397629dd39 ------------------------------------------------------------------------
r47234 | pierre | 2020-10-28 12:37:57 +0000 (Wed, 28 Oct 2020) | 1 line

 Update -T help output after introduction of iOS targets
------------------------------------------------------------------------
--- Merging r47234 into '.':
U    compiler/msg/errore.msg
U    compiler/msgidx.inc
U    compiler/msgtxt.inc
--- Recording mergeinfo for merge of r47234 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49533 -
2021-06-23 14:13:05 +00:00
pierre
1d3acf10c7 r48111 | pierre | 2021-01-08 12:05:29 +0100 (Fri, 08 Jan 2021) | 1 line
Add setting of all optimization debug macros with single DEBUG_ALL_OPT macro
------------------------------------------------------------------------
--- Merging r48111 into '.':
U    compiler/fpcdefs.inc
--- Recording mergeinfo for merge of r48111 into '.':
 U   .
------------------------------------------------------------------------
r48112 | pierre | 2021-01-08 12:13:43 +0100 (Fri, 08 Jan 2021) | 1 line

 Fix compilation with -dALLOCREGDEBUG
------------------------------------------------------------------------
--- Merging r48112 into '.':
U    compiler/aoptobj.pas
--- Recording mergeinfo for merge of r48112 into '.':
 G   .

git-svn-id: branches/fixes_3_2@49497 -
2021-06-11 16:08:33 +00:00
pierre
a092e59200 ------------------------------------------------------------------------
r48140 | pierre | 2021-01-11 22:17:09 +0000 (Mon, 11 Jan 2021) | 1 line

 Correct check of stringtype inside use_tag_prefix function
------------------------------------------------------------------------
--- Merging r48140 into '.':
U    compiler/dbgstabs.pas
--- Recording mergeinfo for merge of r48140 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49447 -
2021-06-01 20:59:46 +00:00
pierre
2930a975fa ------------------------------------------------------------------------
r42206 | pierre | 2019-06-10 13:55:59 +0000 (Mon, 10 Jun 2019) | 1 line

 Fix error in commit #42199
------------------------------------------------------------------------
--- Merging r42206 into '.':
U    compiler/dbgstabx.pas
--- Recording mergeinfo for merge of r42206 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49423 -
2021-05-31 21:27:48 +00:00
pierre
180f6541bd ------------------------------------------------------------------------
r42199 | pierre | 2019-06-09 20:59:06 +0000 (Sun, 09 Jun 2019) | 1 line

 Use use_tag_types everywhere to get consistent results for 'Tt' versus 't' for stabs for string definitions
------------------------------------------------------------------------
--- Merging r42199 into '.':
U    compiler/dbgstabs.pas
U    compiler/dbgstabx.pas
--- Recording mergeinfo for merge of r42199 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49422 -
2021-05-31 21:03:29 +00:00
pierre
9cd5a5b916 ------------------------------------------------------------------------
r40155 | jonas | 2018-11-01 20:39:38 +0000 (Thu, 01 Nov 2018) | 1 line

  * fixed compilation with -O3 (one false positive, one real error)
------------------------------------------------------------------------
--- Merging r40155 into '.':
   C compiler/riscv { not present in fixes branch }
U    compiler/sparcgen/ncpumat.pas
--- Recording mergeinfo for merge of r40155 into '.':
 U   .
Summary of conflicts:
  Tree conflicts: 1

git-svn-id: branches/fixes_3_2@49419 -
2021-05-31 13:37:44 +00:00
pierre
1ed2a3e055 ------------------------------------------------------------------------
r40821 | pierre | 2019-01-09 22:48:08 +0000 (Wed, 09 Jan 2019) | 1 line

 Avoid warnings with -O4 option
------------------------------------------------------------------------
--- Merging r40821 into '.':
U    compiler/ogomf.pas
--- Recording mergeinfo for merge of r40821 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49418 -
2021-05-31 13:01:23 +00:00
marco
74aff88586 --- Merging r49045 into '.':
C    Makefile
C    Makefile.fpc
--- Recording mergeinfo for merge of r49045 into '.':
 U   .
Summary of conflicts:
  Text conflicts: 2

# revisions: 49045
r49045 | jonas | 2021-03-24 15:33:09 +0100 (Wed, 24 Mar 2021) | 1 line
Changed paths:
   M /trunk/Makefile
   M /trunk/Makefile.fpc

  * support building with FPC 3.2.2

git-svn-id: branches/fixes_3_2@49384 -
2021-05-20 20:03:52 +00:00
svenbarth
a29ee477e3 Merged revision(s) 49339 from trunk:
Add explicit zeroing of trttiparaloc record to avoid hash calculation issues
........

git-svn-id: branches/fixes_3_2@49343 -
2021-05-07 05:17:17 +00:00
svenbarth
4b7f92a367 Merged revision(s) 48972, 49057 from trunk:
+ tx64tryfinallynode.dogetcopy properly implemented, resolves #37305
........
  * patch by Do-wan Kim: fix loop unrolling for try .. finally blocks in win32,
    similiar to r48972 for win64
........

git-svn-id: branches/fixes_3_2@49316 -
2021-05-01 15:48:45 +00:00
Jonas Maebe
ea640967ee --- Merging r49312 into '.':
U    compiler/aarch64/aasmcpu.pas
--- Recording mergeinfo for merge of r49312 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49315 -
2021-05-01 15:41:39 +00:00
svenbarth
adfe9581ba Merged revision(s) 47390 from trunk:
* patch by Cyrax: forbid to use heaptrc and valgrind at the same time, resolves #36529
  * load cmem before line* units as they might allocate memory
........

git-svn-id: branches/fixes_3_2@49314 -
2021-05-01 14:09:57 +00:00
marco
94894e7f79 --- Merging r48432 into '.':
U    compiler/msg/errorct.msg
C    compiler/msg/errord.msg
U    compiler/msg/errorda.msg
C    compiler/msg/errordu.msg
U    compiler/msg/errore.msg
U    compiler/msg/errores.msg
U    compiler/msg/errorf.msg
U    compiler/msg/errorfi.msg
U    compiler/msg/errorhe.msg
U    compiler/msg/errorheu.msg
U    compiler/msg/errorid.msg
U    compiler/msg/erroriu.msg
U    compiler/msg/errorn.msg
U    compiler/msg/errorpl.msg
U    compiler/msg/errorpli.msg
U    compiler/msg/errorpt.msg
U    compiler/msg/errorptu.msg
U    compiler/msg/errorr.msg
U    compiler/msg/errorru.msg
U    compiler/msg/errorues.msg
U    compiler/msgtxt.inc
--- Recording mergeinfo for merge of r48432 into '.':
 U   .
Summary of conflicts:
  Text conflicts: 2

# revisions: 48432
r48432 | florian | 2021-01-26 23:03:17 +0100 (Tue, 26 Jan 2021) | 1 line
Changed paths:
   M /trunk/compiler/msg/errorct.msg
   M /trunk/compiler/msg/errord.msg
   M /trunk/compiler/msg/errorda.msg
   M /trunk/compiler/msg/errordu.msg
   M /trunk/compiler/msg/errore.msg
   M /trunk/compiler/msg/errores.msg
   M /trunk/compiler/msg/errorf.msg
   M /trunk/compiler/msg/errorfi.msg
   M /trunk/compiler/msg/errorhe.msg
   M /trunk/compiler/msg/errorheu.msg
   M /trunk/compiler/msg/errorid.msg
   M /trunk/compiler/msg/erroriu.msg
   M /trunk/compiler/msg/errorn.msg
   M /trunk/compiler/msg/errorpl.msg
   M /trunk/compiler/msg/errorpli.msg
   M /trunk/compiler/msg/errorpt.msg
   M /trunk/compiler/msg/errorptu.msg
   M /trunk/compiler/msg/errorr.msg
   M /trunk/compiler/msg/errorru.msg
   M /trunk/compiler/msg/errorues.msg
   M /trunk/compiler/msgtxt.inc

  * updated copyright year to 2021

git-svn-id: branches/fixes_3_2@49309 -
2021-05-01 12:09:53 +00:00
Jonas Maebe
acb59c7592 --- Merging r49236 into '.':
U    compiler/aarch64/hlcgcpu.pas
A    tests/webtbs/tw38766.pp
--- Recording mergeinfo for merge of r49236 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49237 -
2021-04-19 20:52:46 +00:00
Jonas Maebe
7ed1ba7a51 --- Merging r49206 into '.':
U    compiler/aarch64/aasmcpu.pas
--- Recording mergeinfo for merge of r49206 into '.':
 U   .
--- Merging r49207 into '.':
U    compiler/aarch64/rgcpu.pas
A    tests/webtbs/tw38053.pp
--- Recording mergeinfo for merge of r49207 into '.':
 G   .

git-svn-id: branches/fixes_3_2@49208 -
2021-04-15 19:16:05 +00:00
svenbarth
946d9ec715 Merged revision(s) 39838 from trunk:
* only i386 uses oldfpccall for interrupts, all other architectures use now stdcall, resolves #34317
........

git-svn-id: branches/fixes_3_2@49176 -
2021-04-10 22:25:40 +00:00
Jonas Maebe
6f11225621 --- Merging r49136 into '.':
U    compiler/systems/t_darwin.pas
--- Recording mergeinfo for merge of r49136 into '.':
 U   .

git-svn-id: branches/fixes_3_2@49163 -
2021-04-10 11:02:51 +00:00
marco
46533ea1e8 --- Merging r49040 into '.':
U    packages/rtl-objpas/src/inc/variants.pp
--- Recording mergeinfo for merge of r49040 into '.':
 U   .
--- Merging r49044 into '.':
U    packages/rtl-objpas/src/inc/strutils.pp
--- Recording mergeinfo for merge of r49044 into '.':
 G   .
--- Merging r49047 into '.':
U    packages/regexpr/src/regexpr.pas
--- Recording mergeinfo for merge of r49047 into '.':
 G   .
--- Merging r49101 into '.':
U    rtl/win/wininc/struct.inc
--- Recording mergeinfo for merge of r49101 into '.':
 G   .
--- Merging r49104 into '.':
C    compiler/aarch64/cgcpu.pas
A    tests/webtbs/tw38695.pp
--- Recording mergeinfo for merge of r49104 into '.':
 G   .
Summary of conflicts:
  Text conflicts: 1

# revisions: 49040,49044,49047,49101,49104
r49040 | florian | 2021-03-23 21:57:18 +0100 (Tue, 23 Mar 2021) | 1 line
Changed paths:
   M /trunk/packages/rtl-objpas/src/inc/variants.pp

  * patch by Arnaud Bouchez: initialize dummy_data properly, resolves #38653
r49044 | michael | 2021-03-24 11:40:03 +0100 (Wed, 24 Mar 2021) | 1 line
Changed paths:
   M /trunk/packages/rtl-objpas/src/inc/strutils.pp

Fix casing, bug ID #38660
r49047 | michael | 2021-03-24 18:05:26 +0100 (Wed, 24 Mar 2021) | 1 line
Changed paths:
   M /trunk/packages/regexpr/src/regexpr.pas

* Fix issue #38442
r49101 | marco | 2021-04-02 16:54:40 +0200 (Fri, 02 Apr 2021) | 1 line
Changed paths:
   M /trunk/rtl/win/wininc/struct.inc

 * split propsheetheader in  -A and -W variants.
r49104 | florian | 2021-04-02 18:44:43 +0200 (Fri, 02 Apr 2021) | 2 lines
Changed paths:
   M /trunk/compiler/aarch64/cgcpu.pas
   A /trunk/tests/webtbs/tw38695.pp

* Aarch64: patch by J. Gareth Moreton: fix constant writing, resolves #38695
  + test

git-svn-id: branches/fixes_3_2@49110 -
2021-04-03 09:12:47 +00:00
svenbarth
66fa732720 Merged revision(s) 47634, 47655 from trunk:
* fix for Mantis #38145: allow overloading of assignment operators that return ShortStrings with a specific size
+ added tests

The following rules for using these operator overloads as *implicit* overloads apply (Delphi compatible):
  - if a found assignment operator returns a default ShortString then that is used
  - if only one assignment operator to a String[x] is found then that is used
  - otherwise the assignment is not possible
The explicit assignment checks for an exact match (and falls back for an implicit assignment). This is not entirely Delphi compatible as Delphi seems to favor the first found symbol in that case, but sometimes also not... :/
........
* with the recent ShortString changes this test is no longer needed as it was added exactly to check the condition I removed, so disable it for 3.2.1 and newer (as I want to merge these changes back to fixes)
........

git-svn-id: branches/fixes_3_2@49055 -
2021-03-26 06:18:40 +00:00
Jonas Maebe
b7ffb412e4 --- Merging r48762 into '.':
C    compiler/systems/i_darwin.pas
--- Recording mergeinfo for merge of r48762 into '.':
 G   .
--- Merging r48764 into '.':
C    compiler/systems/i_darwin.pas
--- Recording mergeinfo for merge of r48764 into '.':
 G   .

git-svn-id: branches/fixes_3_2@48772 -
2021-02-21 22:39:45 +00:00
Károly Balogh
ab4f34e3ff * Merging recent m68k FPU fixes from trunk: r42829, r48413, r48414, r48522, r48523, r48524
git-svn-id: branches/fixes_3_2@48666 -
2021-02-13 13:01:21 +00:00
Jonas Maebe
0fd8418376 --- Merging r48664 into '.':
U    compiler/Makefile
U    compiler/Makefile.fpc
--- Recording mergeinfo for merge of r48664 into '.':
 U   .

git-svn-id: branches/fixes_3_2@48665 -
2021-02-13 08:19:58 +00:00
svenbarth
f455d66a75 Merged revision(s) 47794-47795, 47826 from trunk:
* apply patch by Blaise.ru to allow record methods to be assigned to method variables as well (this is Delphi compatible)
+ added test
........
* apply patch by Blaise.ru to allow specializations for the result type of function and method variables
+ added tests
........
* 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: branches/fixes_3_2@48653 -
2021-02-11 21:30:38 +00:00
Jonas Maebe
371bb9fd58 --- Merging r48518 into '.':
C    compiler/Makefile
C    compiler/Makefile.fpc
--- Recording mergeinfo for merge of r48518 into '.':
 U   .

git-svn-id: branches/fixes_3_2@48556 -
2021-02-09 19:19:28 +00:00
marco
e91fcabc71 # revisions: 48254
git-svn-id: branches/fixes_3_2@48403 -
2021-01-24 17:21:15 +00:00
Jonas Maebe
146eb732a0 --- Merging r48401 into '.':
U    compiler/systems/t_darwin.pas
--- Recording mergeinfo for merge of r48401 into '.':
 U   .

git-svn-id: branches/fixes_3_2@48402 -
2021-01-24 17:16:21 +00:00
Jonas Maebe
8ed055e4bf --- Merging r44096 into '.':
U    compiler/nbas.pas
--- Recording mergeinfo for merge of r44096 into '.':
 U   .
--- Merging r46274 into '.':
G    compiler/nbas.pas
--- Recording mergeinfo for merge of r46274 into '.':
 G   .
--- Merging r48127 into '.':
A    tests/webtbs/tw38337.pp
--- Recording mergeinfo for merge of r48127 into '.':
 G   .

git-svn-id: branches/fixes_3_2@48128 -
2021-01-10 14:10:52 +00:00
marco
7bc877cc94 * Reverse-merged /trunk:r47746
git-svn-id: branches/fixes_3_2@48015 -
2021-01-03 15:55:57 +00:00
marco
fd02f9b727 # revisions: 44426,44562,45115,45371,45375,45511,44641,44559,47746
git-svn-id: branches/fixes_3_2@47934 -
2021-01-01 18:05:20 +00:00
pierre
a3db71325e Merge of commit #47207
------------------------------------------------------------------------
r47207 | pierre | 2020-10-26 13:40:45 +0000 (Mon, 26 Oct 2020) | 1 line

 Change CLZ support for arm32 minimal CPU to armv5t according to ARM documentation in arminst.dat
------------------------------------------------------------------------
--- Merging r47207 into '.':
U    compiler/arm/armins.dat
U    compiler/arm/armtab.inc
--- Recording mergeinfo for merge of r47207 into '.':
 U   .

git-svn-id: branches/fixes_3_2@47923 -
2020-12-31 11:18:37 +00:00
florian
06a0e48958 -- Zusammenführen von r43183 in ».«:
U    compiler/dbgdwarf.pas
-- Aufzeichnung der Informationen für Zusammenführung von r43183 in ».«:
 U   .
-- Zusammenführen von r47286 in ».«:
U    compiler/symdef.pas
-- Aufzeichnung der Informationen für Zusammenführung von r47286 in ».«:
 G   .
-- Zusammenführen von r44070 in ».«:
U    rtl/objpas/sysutils/sysstr.inc
-- Aufzeichnung der Informationen für Zusammenführung von r44070 in ».«:
 G   .

git-svn-id: branches/fixes_3_2@47912 -
2020-12-30 14:52:55 +00:00
florian
643d7c4d02 --- Merging r40738 into '.':
U    rtl/linux/Makefile.fpc
U    rtl/linux/Makefile
--- Recording mergeinfo for merge of r40738 into '.':
 U   .

git-svn-id: branches/fixes_3_2@47910 -
2020-12-30 14:33:38 +00:00