fpc/rtl/java
Frederic Kehrein ca92c49f8c * Avoid calling copy operator when moving data from temporary objects
When a function returns a managed record, a new temporary object is
created for the result, which is then copied to the real destination.
For managed records with a deep copy implementation, this can create
immense overhead. So instead this introduces a move, which basically
consists of
```pascal
procedure Move(var src, dst);
begin
  Finalize(dst); // Finalize existing data
  Move(src,dst,sizeof(dst)); // Shallow copy
  Initialize(src); // Clear source
```

* nld.pas: use MOVE when assigning the function result from the
  temporary return object
* rtl/inc/systemh.pas: Adding new macro to mark new RTTI version with MOVE
  operation
* rtl/inc/compproc.inc, rtl/inc/rtti.inc: Adding new move mechanism when
  indicated by the compiler.
2024-11-16 22:08:06 +00:00
..
jastringh.inc
jastrings.inc Remove conditionals that rely on not defined(FPC_HAS_CPSTRING). 2024-11-04 10:28:33 +00:00
java_sys.inc
java_sysh.inc
jcompproc.inc * Avoid calling copy operator when moving data from temporary objects 2024-11-16 22:08:06 +00:00
jdk15.inc
jdk15.pas * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
jdynarr.inc
jdynarrh.inc
jpvar.inc
jpvarh.inc
jrec.inc
jrech.inc
jset.inc
jseth.inc
jsstringh.inc * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
jsstrings.inc * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
jsystem.inc * the fpc_invalidpointer rtl function declared compproc to allow easier calling 2024-09-03 18:04:52 +03:00
jsystemh_types.inc Remove conditionals that rely on not defined(FPC_HAS_CPSTRING). 2024-11-04 10:28:33 +00:00
jsystemh.inc Remove conditionals that rely on not defined(FPC_HAS_CPSTRING). 2024-11-04 10:28:33 +00:00
jtcon.inc
jtconh.inc
jtvar.inc
jtvarh.inc
justringh.inc * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
justrings.inc Remove conditionals that rely on not defined(FPC_HAS_CPSTRING). 2024-11-04 10:28:33 +00:00
jwin2javacharset.inc
Makefile + added unit unix98pty. Only enabled for linux, for now, but can be enabled in the future on other unix-likes. 2024-10-19 16:11:25 +03:00
Makefile.fpc Use rtl/java version of objpas.pp source for java OS 2024-03-11 14:22:10 +00:00
objpas.inc * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
objpas.pp
objpash.inc * Char -> AnsiChar 2023-07-14 17:26:09 +02:00
rtl.cfg
rtldefs.inc
rtti.inc
rttih.inc
sysos.inc
sysosh.inc
sysres.inc
system.pp