Commit Graph

7083 Commits

Author SHA1 Message Date
florian
77cc2f4ced * decrease macro nesting counter early when expanding empty macro
to avoid errors about too depth macro nesting, resolves #38802

git-svn-id: trunk@49265 -
2021-04-25 19:49:26 +00:00
pierre
17e3c31b7e Fix gotpcrel relocation for TESTQ x86_64 instruction
git-svn-id: trunk@49252 -
2021-04-23 21:52:24 +00:00
florian
dbee3bcc0d * fixed MSecsToTimeStamp by Lagunov Aleksey, resolves #38631
git-svn-id: trunk@49247 -
2021-04-22 20:14:00 +00:00
florian
29a5d3267c * moved warning about suspicious comp assignment to type check pass, catches also
assignments of constants

git-svn-id: trunk@49242 -
2021-04-21 19:51:22 +00:00
Jonas Maebe
7c9fb4b4af * AArch64: fix storing a 32 bit value in the lower 32 bits of a 64 bit
subsetreg (mantis #38766)

git-svn-id: trunk@49236 -
2021-04-19 20:52:12 +00:00
svenbarth
f9957f30a5 * fix for Mantis #38771: the owner of the procdef might be Nil in case of a specialization (that virtual can't be used on generics is caught later on)
+ added test

git-svn-id: trunk@49228 -
2021-04-18 14:01:09 +00:00
florian
9969da24e1 * { ... } is no a longer valid comment in aarch64 assembler
git-svn-id: trunk@49215 -
2021-04-17 11:14:37 +00:00
Jonas Maebe
bb977b398d * AArch64: fix spilling integer registers to stack offsets that cannot be
encoded directly into the spilling instructions (second part of
    mantis #38053)

git-svn-id: trunk@49207 -
2021-04-14 20:56:32 +00:00
florian
695665c393 + optimized multiplication for "symmetric" bit patterns on arm
git-svn-id: trunk@49199 -
2021-04-13 21:16:56 +00:00
florian
f1e748512b * fix test for case sensitive and case preserving file systems
git-svn-id: trunk@49183 -
2021-04-11 17:30:22 +00:00
florian
c1f85ac3a1 + initial implementation of path dependent IsFileNameCaseSensitive/IsFileNameCasePreserving functions for darwin
git-svn-id: trunk@49164 -
2021-04-10 13:29:59 +00:00
Jonas Maebe
ff3f812d97 * fix conversion of true/false macro definitions to boolean values
(mantis #38492)
   o since the macro lookups are recursive, "mac" will usually be nil
     afterwards (unless we found an undefined macro)

git-svn-id: trunk@49160 -
2021-04-10 10:56:02 +00:00
Jonas Maebe
500e29e5e2 * regenerated with FreeBSD/AArch64 support
git-svn-id: trunk@49159 -
2021-04-10 08:19:40 +00:00
florian
09628e56cb * even if currency is handled by torddef, it is a real number, so using / is perfectly right, resolves #38718
git-svn-id: trunk@49154 -
2021-04-09 20:38:46 +00:00
florian
b09669dffe * allow also CSUBSETREG in tx86inlinenode.second_IncludeExclude, resolves #38733
git-svn-id: trunk@49151 -
2021-04-09 20:09:19 +00:00
florian
503fc85dff * patch by J. Gareth Moreton: handle register allocations correctly in MovMov2Mov 3, resolves #38703
git-svn-id: trunk@49128 -
2021-04-06 15:50:28 +00:00
florian
e4cc8af8fc * Makefiles regenerated
git-svn-id: trunk@49124 -
2021-04-05 15:39:07 +00:00
florian
f0023a3b04 * Aarch64: patch by J. Gareth Moreton: fix constant writing, resolves #38695
+ test

git-svn-id: trunk@49104 -
2021-04-02 16:44:43 +00:00
svenbarth
2885d3ab56 * fix for Mantis #37426: don't allow an instance function of a type helper to be used on the type instead of a concrete value
+ added test

git-svn-id: trunk@49102 -
2021-04-02 15:25:01 +00:00
florian
cc64d9eb4e * do not swap left/right code generation for assignment nodes if
conditional expressions are involved, resolves #38129

git-svn-id: trunk@49095 -
2021-03-31 20:53:18 +00:00
florian
47557e0ad2 * cpubase.cgsize2subreg should handle all valid sizes, resolves #38557
git-svn-id: trunk@49087 -
2021-03-30 16:44:19 +00:00
florian
b4eb1780ad * added test, issue is fixed by r48758 already
git-svn-id: trunk@49075 -
2021-03-28 21:10:13 +00:00
florian
47eb7cec0c * test needs objfpc mode else i is 16 bit only
git-svn-id: trunk@49074 -
2021-03-28 21:09:35 +00:00
florian
6218254e53 * allow also 8 byte string constants in assembler, resolves #28640
git-svn-id: trunk@49066 -
2021-03-27 17:13:14 +00:00
Jonas Maebe
308aee42a0 * the offset parameter of reference_reset* must be asizeint rather than
longint (mantis #38636)

git-svn-id: trunk@49065 -
2021-03-27 15:31:33 +00:00
svenbarth
ca7c775e36 * fix for Mantis #38642: for enumerations with jumps Delphi behaves as follows:
- GetTypeKind returns tkEnumeration (FPC previously generated a compile error here)
  - GetTypeInfo on a generic parameters returns Nil for such types (FPC previously generated a compile error here)
  - GetTypeInfo otherwise generates a compile error (as before)

git-svn-id: trunk@49064 -
2021-03-27 09:35:07 +00:00
florian
8ed2ea3672 * createlst and gparmake need to be used with the source os extension (actually, we should call it host extension)
git-svn-id: trunk@49019 -
2021-03-20 10:16:38 +00:00
ondrej
2a61397d37 unix: fix timezone info for timers after the last transition
git-svn-id: trunk@49005 -
2021-03-19 08:11:10 +00:00
marcus
c4dfb2c8bd fpts2junit: remove ../ at start for the classname
git-svn-id: trunk@48987 -
2021-03-15 19:08:17 +00:00
florian
649bfecf62 + compiled C object files, generated by riscv32-unknown-linux-gnu-gcc (GCC) 10.2.0 with -O3
git-svn-id: trunk@48973 -
2021-03-14 21:34:51 +00:00
florian
2b47425f08 + tx64tryfinallynode.dogetcopy properly implemented, resolves #37305
git-svn-id: trunk@48972 -
2021-03-14 21:23:05 +00:00
michael
f5389cbc28 * test for bin2hex
git-svn-id: trunk@48968 -
2021-03-14 15:31:52 +00:00
nickysn
fc32428639 * merged the wasm branch. Adds support for the wasm32 (WebAssembly 32-bit)
target.

git-svn-id: trunk@48955 -
2021-03-14 00:48:18 +00:00
nickysn
ea8f068817 * regenerated makefiles after sync with trunk
git-svn-id: branches/wasm@48951 -
2021-03-13 21:52:13 +00:00
nickysn
e42330a7ad * synchronized with trunk
git-svn-id: branches/wasm@48949 -
2021-03-13 21:47:24 +00:00
pierre
e8fbe6696b Update Makefile's after commits 48929/48930
git-svn-id: trunk@48940 -
2021-03-12 13:23:41 +00:00
florian
3c43677952 * re-build c objects with a fixed C compiler regarding floating point parameter passing: riscv64-linux-gnu-gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 with -O3
git-svn-id: trunk@48939 -
2021-03-11 21:55:41 +00:00
florian
c603477ec4 * fix test for RiscV
git-svn-id: trunk@48914 -
2021-03-08 17:12:19 +00:00
nickysn
f8052134e3 * synchronized with trunk
git-svn-id: branches/wasm@48906 -
2021-03-08 00:52:43 +00:00
florian
6166084f08 + new test
git-svn-id: trunk@48895 -
2021-03-07 09:16:10 +00:00
pierre
f620f61d3b Update to objects compiled using GNU gcc 5.5.0 for sparc-solaris
git-svn-id: trunk@48891 -
2021-03-06 22:06:23 +00:00
florian
ba0f08018f * fix test so it really uses random values for the boolean, thanks Jonas for the hint!
git-svn-id: trunk@48887 -
2021-03-06 15:16:29 +00:00
florian
62bd0068b6 * do not apply the (a and b) or (c and not(b)) into c xor ((c xor a) and b) optimziation if short boolean evaluation is used, should resolve #38576
* improved test

git-svn-id: trunk@48884 -
2021-03-06 14:48:15 +00:00
pierre
01a351f804 Fix for bug report 38549 about wrong code generation
for mips/mipsel and riscv32/riscv64 CPUs for 
  set operators '<=' and '>='.
  New tests for this bug report.
  tw38549.pp, main source, also included 
  by tw38549a.pp, tw38549b.pp, tw38459c.pp and tw38459d.pp
  with explicit {$packset X}, with X=1,2,4, or 8 added.

git-svn-id: trunk@48874 -
2021-03-03 22:15:20 +00:00
nickysn
940738a3a1 * synchronized with trunk
git-svn-id: branches/wasm@48846 -
2021-03-01 13:21:24 +00:00
florian
e0a1bc6675 + optimize (a and b) or (c and not(b)) into c xor ((c xor a) and b)
+ test

git-svn-id: trunk@48841 -
2021-02-28 18:20:46 +00:00
Jonas Maebe
9c831677ff * support Objective-C classes and protocols with -gw3 (mantis #36250)
git-svn-id: trunk@48834 -
2021-02-27 21:44:53 +00:00
pierre
58171b4308 Extend list of CPUs defining slowcpu conditional in tmt1 and tw8177 sources
git-svn-id: trunk@48816 -
2021-02-26 23:39:14 +00:00
pierre
63a3c25493 Add wposuffix to keep different logs for each pass when passes is > 1
git-svn-id: trunk@48800 -
2021-02-24 10:36:45 +00:00
pierre
f85d7d2591 Fix tw28713 for big endian CPUs
git-svn-id: trunk@48795 -
2021-02-23 22:04:18 +00:00