florian
87321a0e67
* fix one test failure for unixes
2023-01-21 21:35:18 +01:00
florian
d4d4498fc0
* building on darwin (and most likely other BSDs) fixed
2023-01-21 21:19:24 +01:00
Michaël Van Canneyt
77ade8b74f
* Improve TPath initialization
2023-01-21 20:41:24 +01:00
Michaël Van Canneyt
770c21c0dd
* Fix compile error for i386-linux
2023-01-21 20:21:29 +01:00
Michael Van Canneyt
0b5eaa50fb
* Sysutils compatibility unit
2023-01-21 13:45:04 +01:00
Michael Van Canneyt
d1b2fe1659
* Date/Time info for files (Delphi compatibility)
2023-01-21 13:45:04 +01:00
florian
a06c034189
* cleanup of outdated defines
2023-01-20 23:31:04 +01:00
Jonas Maebe
8b3544192e
AIX: fix inverted fpu exception masking
...
Resolves #40105
2023-01-20 21:59:57 +01:00
Jonas Maebe
00a5d30300
LLVM: remove use of getelementptr in make_simple_ref_ptr
...
We cannot safely infer whether it needs to be indirect or not there,
it should be done at a higher level if appropriate.
2023-01-20 21:07:18 +01:00
Jonas Maebe
51fdbb5524
macOS: set max var/constalign to 64
...
For all non-ppc(64) targets. Fixes test/talignrec1.
2023-01-20 21:07:18 +01:00
Jonas Maebe
29bae2297f
tcginnode.pass_generate_code: use tlhcgobj.g_undefined_ok
...
Also override the code that uses this for LLVM with a variant that does not
need it for LLVM versions that do not support the freeze instruction.
2023-01-20 21:07:18 +01:00
Jonas Maebe
ab581c5c30
LLVM: override thlcgobj.g_undefined_ok
...
Uses the freeze instruction available in LLVM 10.0+. If we don't freeze undef/
poison values before using them in a calculation (even if that calculation is
something like "and 0", which masks the result completely), the result will
still be undef/poison and will keep propagating.
2023-01-20 21:07:18 +01:00
Jonas Maebe
ee0ad3ff86
thlcgobj.g_undefined_ok: new method
...
Specify that a register's contents may be undefined because of previous
operations (e.g. shifting by more bits than the register has, whose result
depends on the target architecture), but that the code generator will
later on ensure that if this is the case, that result will be overwritten/
masked.
2023-01-20 21:07:18 +01:00
Jonas Maebe
0b6942de8a
llvm:a fix opaque ptr IR for Objective-C protocol
...
Also for interfacecom functions and properties. Fixes test/tobjc9 and
test/tobjc9b with LLVM 15.0+
2023-01-20 21:07:18 +01:00
florian
218da184e6
* patch by Rika: Improve generic CompareByte, resolves #40120
2023-01-19 22:44:25 +01:00
Michael Van Canneyt
06a7610a35
* Stream writer
2023-01-19 12:21:56 +01:00
Michael Van Canneyt
32884082e3
* Checks for directory and special directories
2023-01-19 12:21:56 +01:00
florian
55deefbab5
* do not crash on illegal with statement, resolves #40118
2023-01-18 23:03:28 +01:00
florian
5598ffc210
* x86_64: warn only on negative offsets if rsp is involed, second part of #40113
...
+ tests
2023-01-17 23:09:42 +01:00
Michaël Van Canneyt
b5763eb412
* Added some debugging aids
2023-01-17 14:32:38 +01:00
Michaël Van Canneyt
eb1905a607
* Correct exception handling
2023-01-16 14:02:15 +01:00
Michaël Van Canneyt
98404eab49
* Fix alias typed documentation
2023-01-16 14:02:15 +01:00
Michaël Van Canneyt
dcd7758e4c
* Debug statement
2023-01-16 14:02:15 +01:00
florian
8b08486fa1
* do not warn on lea e/rsp with negative address offset, part of #40113
...
+ tests
2023-01-15 23:06:05 +01:00
mattias
fdea66d217
rtl: added TBinaryObjectReader.BeginComponent
2023-01-15 10:56:58 +01:00
florian
46ab62fbb9
* alternative declaration for SDL_CreateThread added to keep old code working, resolves #40112
2023-01-14 20:59:26 +01:00
Pierre Muller
5cedecbe25
Avoid float_raise call in FPC_SOFT_FPUX80 code
2023-01-14 11:41:20 +00:00
Pierre Muller
977ca19dc0
Set current_filepos in Internal assembler class also if DEBUG macro is set
2023-01-14 11:41:20 +00:00
florian
a9dca32689
* undid accidentely activated define
2023-01-13 22:34:57 +01:00
mattias
8e63c2a6b2
Merge branch 'main' of https://gitlab.com/freepascal.org/fpc/source into main
2023-01-13 10:56:29 +01:00
florian
e77ec69de4
* avoid internal error in case of an illegal generic declaration
2023-01-12 23:05:51 +01:00
florian
51bb01734b
* patch by Alfred Glänzer: Prevent install of unnecessary files during cross-install, resolves #40101
2023-01-11 22:17:27 +01:00
J. Gareth "Curious Kit" Moreton
b997e41366
* New tests that evaluate CMOVcc using a reference even if IfRefSafe returns False because the previous condition reads it
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
891723111c
* New test for extended CMOVcc optimisations
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
df80d4e612
* x86: CMOV optimisations now check optimizecputype rather than cputype
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
4d57dee8d9
* x86: Extension to CanBeCMOV that permits a potentially unsafe reference if it appears in the previous comparison
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
b108608b29
* x86: New CMP optimisation that mimics some of the CMOV optimisations and removes unnecessary conditions.
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
bab60d819f
* x86: Refactored CMOV optimisations and permitted the use of constants in some cases.
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
5f3749dc49
* x86: Introduced TrySwapMovOp method, and redesigned TrySwapMovCmp
...
to use it while also trying to move one more instruction back
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
6af886c2b9
* Removed foolish inline from StripLabelFast
2023-01-10 22:23:58 +00:00
J. Gareth "Curious Kit" Moreton
5cdef8050b
* Fixed bug in register preservation tracking
2023-01-10 22:23:58 +00:00
wsherman
6453af40d8
*fix compile warnings and hints in googleapiconv and googlediscoverytopas
...
- Fix compiler warnings and hints and unused local variables
- Change deprecated ClassHeader to ClassComment
- Fix comment in helper script
2023-01-09 23:48:05 -08:00
wsherman
cf50f8ede0
* More fixes and cleanups in restbase.pp (googleapiconv)
...
- Move test functions out of class to local procedures and into
{$IFDEF DUMPARRAY} and change the parameters to match the rtl versions:
function GetDynArrayProp(P: PPropInfo) : Pointer; virtual;
procedure SetDynArrayProp(P: PPropInfo; AValue : Pointer); virtual;
- Add dyn arrays support to the ClearProperties method
- In SetArrayProperty, fix previous commit (fba7595b
) because the
array properties were not being set and make the dyn array handling
code more typesafe.
- In SetObjectProperty use TObjectArray instead of Pointer to make the
dyn array handling code more typesafe.
- In ClearChildren use ClearProperty to do the work and simplify the code.
- Fix some compiler warnings and hints.
2023-01-09 23:48:05 -08:00
florian
f4d9082028
* copyright for 2023 updated
2023-01-09 22:54:46 +01:00
Rika Ichinose
30e3d93d57
Make generic Index* faster and denser.
2023-01-09 21:26:00 +00:00
Karoly Balogh
3cea1706e9
m68k: more work on instruction validation for the internal assembler
2023-01-09 12:01:10 +01:00
Karoly Balogh
69761839c0
m68k: removed the unused S_IQ opsize
2023-01-09 12:01:10 +01:00
Pierre Muller
0641ea33d1
Both _STAT_VER_KERNEL and _STAT_VER_LINUX are equal to zero for aarch64-linux
2023-01-09 10:29:38 +01:00
Michaël Van Canneyt
00e3cdddce
* Add NetAddrIsPrivate function from Ondrej Pokorny
2023-01-09 09:37:23 +01:00
Ondrej Pokorny
f43912a383
add SSL functions
2023-01-09 07:17:04 +00:00