J. Gareth "Curious Kit" Moreton
|
c7c657a9ec
|
* Added two more tests based on bugs found by Marģers during development
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
5cb2f823d2
|
* New pure tests that evaluate analysis of while and repeat loops, including infinite loops
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
d469e3e68d
|
* New pure tests that evaluate finite while loops and a conditional Exit statement
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
c24182df86
|
* New pure tests that evaluate Break in for-loops
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
243e9155fd
|
* New pure function tests showcasing its use on the FNV-1a hash function, and a negative version that shows {$Q+} in action.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
878b51e24f
|
* Floating-point and internal function pure tests
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
3cbbd64a20
|
* Made numerous routines in the Math unit pure
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
adccaf9448
|
* Mathematical intrinsics are now pure
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
6cd6566528
|
* New test based on webtbs/tw38337 that helps catch internal error 200307043
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
d39c7e3974
|
* Fixed issue with stripped typeconvs causing problems with inline functions (internal error 200307043)
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
57f8450f94
|
* Added 2 basic tests for pure functions
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
9c215fba02
|
* A number of conversion functions in System and SysUtils are now pure
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
f15284c3ed
|
* Some internal compiler functions made pure
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
253f7a0b1d
|
* FPC_HAS_PURE is now a default system macro
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
1241242ed8
|
* Added support for pure functions
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
df73ef4f64
|
* Added pure-related warning messages.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
84eb9490cf
|
* Added nested statement optimisation (where statement.left is a statement) to clean up pure analysis
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
2734225935
|
* New blocknode optimisation that removes goto nodes that come right before the label they jump to
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
f817167760
|
* do_optconstpropagate adapted for pure function analysis
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
b971a5f852
|
* Block nodes are now more heavily simplified
when doing it for pure functions.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
32d448f91c
|
* Overrode "pure_simplify" for TAddNode so it can combine constants without raising overflow errors.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
6bd80aa0d2
|
* Added framework for an optional, pure-specific simplify method.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
3370a8eb6b
|
* doinlinesimplify now returns a Boolean result... true if something changed, false otherwise.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
c9e3e96767
|
* do_optcse and do_consttovar now return rootnode rather than nil
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
19802bf597
|
* Type conversion nodes are now stripped if the
source and target types are equal, unmanaged
and not generic/undefined.
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
8b1e5a0589
|
* New "is_undefined" def checker function
|
2025-04-02 21:56:00 +00:00 |
|
J. Gareth "Curious Kit" Moreton
|
9ca8215248
|
* XML node dump now includes "totypedef" in
TTypeConvNode info if different to resultdef
|
2025-04-02 21:56:00 +00:00 |
|
florian
|
fb126e32f9
|
* RtlUnwind destroys register, so save and restore them afterwards
|
2025-04-02 22:34:21 +02:00 |
|
Michaël Van Canneyt
|
9e9153b2d3
|
* forgot to commit
|
2025-04-02 16:27:34 +02:00 |
|
Michaël Van Canneyt
|
736fc12e55
|
* Allow wasm guest & host to be notified of wasm memory growth
|
2025-04-02 11:21:03 +02:00 |
|
florian
|
62236ec2bb
|
* proper naming
|
2025-04-01 22:53:56 +02:00 |
|
florian
|
425ef662cc
|
* patch by Pierre to fix spilling and jump handling of pseudo-instructions
|
2025-03-31 22:53:40 +02:00 |
|
Pierre Muller
|
282f4aa060
|
Add definitions of ALUSInt and ALUUInt types in java/jsystemh_types.inc
|
2025-03-31 13:36:13 +00:00 |
|
florian
|
b1151ef4ea
|
+ missing instruction
|
2025-03-30 20:07:00 +02:00 |
|
Rika Ichinose
|
6ab6be4793
|
Faster Val().
|
2025-03-30 19:36:42 +02:00 |
|
J. Gareth "Curious Kit" Moreton
|
de51e6a32a
|
* x86_64: Extension to MovMov2Mov optimisations to allow more MOVL to MOVQ zero-extensions
|
2025-03-30 17:04:56 +02:00 |
|
Ondrej Pokorny
|
ec5b4d458e
|
decrease restarts_to_go only if restart is enabled (solves runtime error if compiled with range checks)
|
2025-03-30 08:16:41 +00:00 |
|
Ondrej Pokorny
|
0d988f2c96
|
JPEG: support custom CMYK conversions and reading custom APPn headers
|
2025-03-30 08:16:41 +00:00 |
|
florian
|
84a852bc13
|
* more aggressive cse on thread vars
|
2025-03-29 22:31:13 +01:00 |
|
Rika Ichinose
|
ce6db34224
|
Shortcut Compare*(a, a) before entering the aligned loop.
|
2025-03-29 22:07:03 +01:00 |
|
Rika Ichinose
|
8093b1ba0c
|
Unbias 32-bit random.
|
2025-03-29 21:55:08 +01:00 |
|
florian
|
c07da2a654
|
* typo
|
2025-03-29 18:52:16 +01:00 |
|
florian
|
548e91f104
|
* fix rol/ror instruction usage and spilling on RiscV
|
2025-03-28 22:26:59 +01:00 |
|
Pierre Muller
|
6debe90b07
|
Disable libjack package for beos OS
|
2025-03-28 15:40:23 +00:00 |
|
Pierre Muller
|
a093c6e59a
|
Add dependencies for units of utils/fpcres package
|
2025-03-28 05:46:00 +00:00 |
|
florian
|
f8f54dcbcf
|
+ RiscV has internal rol/r support
|
2025-03-27 22:33:30 +01:00 |
|
florian
|
f65994ddcb
|
+ RiscV: flags for crypotography extensions
|
2025-03-26 22:44:26 +01:00 |
|
Michaël Van Canneyt
|
1ef1481488
|
* Print unit name, flush output in status messages
|
2025-03-26 11:43:20 +01:00 |
|
florian
|
065ddfd8d4
|
+ RiscV: ROL/ROR code generation support
|
2025-03-25 22:40:26 +01:00 |
|
Pierre Muller
|
a74a4aca03
|
Avoid range check error in TObjData.writebytes overloads using dynamic arrays
|
2025-03-25 12:09:06 +01:00 |
|