..
aarch64
+ function needs_check_for_fpu_exceptions to unify fpu exception handling
2024-02-13 17:42:21 +01:00
arm
+ set pi_do_call on ARM as well if we check for fpu exceptions
2024-02-17 21:03:55 +01:00
armgen
* arm/a64: "OptPass2AND" and "OptPass2CMP" adapted to remove vestigial CMP and TST instructions
2024-02-11 21:39:19 +00:00
avr
AVR optimization LdsMov2Lds
2023-12-02 18:22:35 +00:00
generic
html
i386
* Flags specific to TVecNode have been moved to their own field
2024-03-02 21:31:21 +01:00
i8086
* Flags specific to TDerefNode have been moved to their own field
2024-03-02 21:31:21 +01:00
jvm
* Flags specific to TArrayConstructorNode have been moved to their own field
2024-03-02 21:31:21 +01:00
llvm
* Fixed internal error 2022041701 number clash (LLVM changed to 2022041730)
2024-01-28 09:34:14 +00:00
loongarch64
Restrict use of A_MOVE to ufromsize and utosize = OS_INT. (contributed by Jinyang He)
2024-02-18 20:18:50 +00:00
m68k
m68k: fix tw40182 test
2024-01-09 10:57:11 +01:00
mips
Fix storing of unaligned 64-bit to memory
2023-04-21 10:32:13 +01:00
msg
* Fix latex error due to unescaped dollar
2024-02-18 21:39:04 +01:00
powerpc
+ support for .debug_loc and .debuc_loclist sections
2024-01-16 23:24:37 +01:00
powerpc64
Add dwarf CFI for powerpc64 cpu
2023-11-23 21:19:52 +01:00
ppcgen
* Flags specific to TAddNode have been moved to their own field
2024-03-02 21:31:21 +01:00
riscv
+ set pi_do_call on RiscV as well if we check for fpu exceptions
2024-02-16 22:48:14 +01:00
riscv32
Change AVOID_OVERFLOW to avoid warning about inequality being always true
2023-10-26 07:47:10 +00:00
riscv64
* correct tripletcpustr, resolves #40301
2023-05-31 20:26:50 +02:00
sparc
* cleanup: cs_opt_loopunroll is a generic optimization for a long time already
2022-03-08 23:03:18 +01:00
sparc64
Fix for sparc64 specific code generation bug report #40252
2023-05-26 17:10:23 +02:00
sparcgen
Handle unaligned copy in TCGSparcGen.g_concatcopy method
2023-07-16 01:31:09 -05:00
systems
Use writeUInt32LE/writeUInt16LE method to write multi-byte integer in importlib method in t_win unit (as all supported CPUs are little endian)
2024-01-25 01:01:06 +00:00
utils
* Add internal_endian field to tppudumpfile class
2024-01-25 11:00:28 +00:00
wasm32
* Flags specific to TAddNode have been moved to their own field
2024-03-02 21:31:21 +01:00
x86
* Flags specific to TAddNode have been moved to their own field
2024-03-02 21:31:21 +01:00
x86_64
+ Skylake-X
2024-02-25 22:52:30 +01:00
xtensa
+ set pi_do_call on xtensa as well if we check for fpu exceptions
2024-02-14 23:04:25 +01:00
z80
Follow sdas documentation for .ascii limitations by using only printable chars and .byte for others
2024-02-12 14:03:02 +00:00
.gitignore
git ignore msg2inc binary
2023-07-07 11:17:33 +02:00
aasmbase.pas
+ support for .debug_loc and .debuc_loclist sections
2024-01-16 23:24:37 +01:00
aasmcfi.pas
aasmcnst.pas
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
2024-02-13 19:44:36 +01:00
aasmdata.pas
+ introduced TAsmData.WeakRefAsmSymbolByClass
2024-02-25 07:18:22 +02:00
aasmdef.pas
aasmsym.pas
aasmtai.pas
* SkipInstr now includes ait_align
2023-11-25 20:47:44 +00:00
aggas.pas
+ support for .debug_loc and .debuc_loclist sections
2024-01-16 23:24:37 +01:00
aopt.pas
aoptbase.pas
aoptda.pas
aoptobj.pas
* FindRegAllocBackward will now return nil if it hits a dealloc for the register first
2024-02-11 21:39:19 +00:00
aoptutils.pas
* New Boolean "SetAndTest" utility function
2024-02-03 20:30:46 +00:00
assemble.pas
Swap real constant in internal assembler
2024-02-19 20:19:36 +01:00
blockutl.pas
* extend tabstractprocdef.getcopyas by a parameter to control whether the copy should be registered or not
2022-05-26 21:42:59 +02:00
browcol.pas
* Remove loaded_from in tmodule. The same unit can be loaded from different places
2024-03-05 07:56:14 +00:00
catch.pas
ccharset.pas
cclasses.pas
* patch by Rika: Use Index* for pointer lists, resolves #40218
2023-03-25 21:32:29 +01:00
cepiktimer.pas
cfidwarf.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
cfileutl.pas
* Allow to disable 8.3 filename search
2023-11-12 09:55:30 +01:00
cg64f32.pas
cgbase.pas
+ implemented WebAssembly code generator support for funcref and externref data
2023-06-07 05:25:57 +03:00
cgexcept.pas
cghlcpu.pas
cgobj.pas
Attempt to fix tcalext3 big-endian powerpc64 failure
2023-11-20 01:05:10 +03:00
cgutils.pas
+ function needs_check_for_fpu_exceptions to unify fpu exception handling
2024-02-13 17:42:21 +01:00
cmsgs.pas
comphook.pas
Add -vj option in options unit to set V_Parallel
2023-09-09 07:49:22 +00:00
compiler.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
compinnr.pas
comprsrc.pas
* patch by Cyrax: Quote path - which is passed to Windres or alike program, resolves #36526
2022-04-08 22:42:05 +02:00
comptty.pas
constexp.pas
* revert accidently committed code
2022-02-06 20:15:00 +01:00
COPYING.txt
cprofile.pas
crefs.pas
cresstr.pas
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
2024-02-13 19:44:36 +01:00
cscript.pas
cstreams.pas
ctask.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
cutils.pas
* patch by Rika: Shorten cutils.compareansistrings, resolves #40213
2023-03-24 22:50:19 +01:00
dbgbase.pas
Add globals to implementation _USES clause to prepare move of V_XXX constants to globals unit
2023-09-09 06:54:30 +00:00
dbgcodeview.pas
dbgdwarf.pas
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
2024-02-13 19:44:36 +01:00
dbgdwarfconst.pas
* spelling fixed
2023-03-26 15:55:37 +02:00
dbgstabs.pas
* spelling fixes
2022-08-04 23:01:35 +02:00
dbgstabx.pas
defcmp.pas
* protect against comparisons of nested types of generics and specializations
2024-02-09 17:14:29 +01:00
defutil.pas
* Add is_systemunit_unicode function (cchartype suymbol)
2023-07-22 08:26:22 +00:00
dirparse.pas
dwarfbase.pas
* improve dwarf cfi on avr
2022-09-28 22:47:06 +02:00
elfbase.pas
entfile.pas
Fix writing of low qword of floatx80 real type into 10-byte array on big endian systems
2024-01-25 10:13:21 +00:00
export.pas
+ support 'promising last' exports
2023-06-16 11:00:19 +03:00
expunix.pas
finput.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
fmodule.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
fpcdefs.inc
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
fpchash.pas
fpcp.pas
* search using the real package name instead of the uppercased one so that an as-is cased package will be found as well
2024-01-07 18:09:50 +01:00
fpkg.pas
fppu.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
gendef.pas
globals.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
globstat.pas
* Restore messages state
2024-03-05 07:56:14 +00:00
globtype.pas
* Define RTTI directive parameters
2024-01-02 07:09:21 +01:00
hlcg2ll.pas
* do not copy parameters onto the stack using FPU registers if the type is
2022-02-10 22:42:49 +01:00
hlcgobj.pas
+ thlcgobj.location_force_mem now supports LOC_JUMP as well, resolves #40650
2024-02-19 22:22:12 +01:00
htypechk.pas
* Flags specific to TVecNode have been moved to their own field
2024-03-02 21:31:21 +01:00
impdef.pas
import.pas
ldscript.pas
* SetString needs correctly typed argument
2023-07-25 16:06:53 +02:00
link.pas
Try to compute correct page size for wlib call
2024-01-02 14:17:23 +01:00
macho.pas
machoutils.pas
Makefile
human68k: regenerated Makefiles
2023-11-30 23:43:27 +00:00
Makefile.fpc
Avoid troubles with exported directories
2023-10-03 10:14:04 +00:00
MPWMake
msgidx.inc
* complain about turned off support of c style operators only in the parser,
2024-02-11 11:05:05 +01:00
msgtxt.inc
* complain about turned off support of c style operators only in the parser,
2024-02-11 11:05:05 +01:00
nadd.pas
* formatting
2024-03-02 21:31:21 +01:00
nbas.pas
* formatting
2024-03-02 21:31:21 +01:00
ncal.pas
* Flags specific to TArrayConstructorNode have been moved to their own field
2024-03-02 21:31:21 +01:00
ncgadd.pas
* Flags specific to TAddNode have been moved to their own field
2024-03-02 21:31:21 +01:00
ncgbas.pas
* Flags specific to TAsmNode have been moved to their own field
2024-03-02 21:31:21 +01:00
ncgcal.pas
Short version of the mips code genration bug
2022-10-29 21:34:00 +01:00
ncgcnv.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
ncgcon.pas
* patch by Rike: Use reverse_longword instead of manually reversing longword, resolves #39720
2022-05-13 22:38:03 +02:00
ncgflw.pas
+ introduced thlcgobj.a_jmp_always_pascal_goto - same as .a_jmp_always, but generated by a pascal goto statement
2023-10-22 04:12:59 +03:00
ncghlmat.pas
ncginl.pas
* High() and Length() for dynamic arrays deal with sizesinttype instead of ossinttype (on AVR the former is 16-bit while the later is 8-bit thus this is an important distinction)
2022-01-18 23:39:31 +01:00
ncgld.pas
* Flags specific to TArrayConstructorNode have been moved to their own field
2024-03-02 21:31:21 +01:00
ncgmat.pas
ncgmem.pas
* Flags specific to TDerefNode have been moved to their own field
2024-03-02 21:31:21 +01:00
ncgnstfl.pas
ncgnstld.pas
ncgnstmm.pas
ncgobjc.pas
ncgopt.pas
ncgrtti.pas
* Atributes for class/record methods
2024-03-02 14:15:22 +01:00
ncgset.pas
* fixed bug that caused 'c in ['a'..'z']' to fail on the WebAssembly target, when code is compiled with {$packset 1}
2024-01-10 03:11:13 +02:00
ncgutil.pas
hlcgobj: new getlocal and recordnewsymloc methods
2022-06-04 22:26:40 +02:00
ncgvmt.pas
* ensure that the legacy method table has the correct alignment on platforms that require it (e.g. SPARC64)
2024-01-07 18:09:51 +01:00
ncnv.pas
* formatting
2024-03-02 21:31:21 +01:00
ncon.pas
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
2024-02-13 19:44:36 +01:00
nflw.pas
* fix #40500 : do a for-in on a string variable using low(strvar) to high(strvar) so that zero based strings are handled correctly
2023-11-07 20:28:15 +01:00
ngenutil.pas
LLVM: fix double init/fini of local managed variables accessed from nested functions
2023-09-14 15:38:21 +02:00
ngtcon.pas
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
2024-02-13 19:44:36 +01:00
ninl.pas
* patch by Sergey Larin: Compile dynarr := nil (and, preferably, SetLength(dynarr, 0)) as fpc_dynarray_clear, resolves #40309
2024-03-04 22:44:23 +01:00
nld.pas
* formatting
2024-03-02 21:31:21 +01:00
nmat.pas
* formatting
2024-03-02 21:31:21 +01:00
nmem.pas
* formatting
2024-03-02 21:31:21 +01:00
nobj.pas
* make the VMT symbol and type def of the corresponding class or object instead of having them be global
2022-05-26 21:42:51 +02:00
nobjc.pas
node.pas
* Flags specific to TInlineNode have been moved to their own field
2024-03-02 21:31:21 +01:00
nopt.pas
* Flags specific to TArrayConstructorNode have been moved to their own field
2024-03-02 21:31:21 +01:00
nset.pas
* decide more sophisticately if a temp. var is needed for fixing #40618
2024-02-02 22:00:22 +01:00
nutils.pas
* Flags specific to TAddNode have been moved to their own field
2024-03-02 21:31:21 +01:00
objcasm.pas
objcdef.pas
objcdef: remove duplicate variant start check
2022-06-06 23:12:53 +02:00
objcgutl.pas
Add aarch64-iphonesim target
2023-03-27 18:45:00 +00:00
objcutil.pas
objc: use compile-time macOS version checks
2022-09-16 11:21:05 +02:00
ogbase.pas
Add writeInt8/writeUInt8 methods to fix some cross-endian generation issues
2024-02-19 20:19:35 +01:00
ogcoff.pas
Also swap word/dword in case of cross-endian compilation
2024-01-20 21:35:24 +01:00
ogelf.pas
* cosmetics
2024-02-19 22:27:06 +01:00
oglx.pas
ogmacho.pas
ogmap.pas
* SetString needs correctly typed argument
2023-07-25 16:06:53 +02:00
ognlm.pas
ogomf.pas
* use NtoLE instead of LEtoN in OMF DoRelocationFixup when converting from native to little endian. No functional changes, just better readability.
2023-11-02 14:28:48 +02:00
ogrel.pas
+ support for .debug_loc and .debuc_loclist sections
2024-01-16 23:24:37 +01:00
ogwasm.pas
+ support for .debug_loc and .debuc_loclist sections
2024-01-16 23:24:37 +01:00
omfbase.pas
+ support for .debug_loc and .debuc_loclist sections
2024-01-16 23:24:37 +01:00
optbase.pas
* patch by Rika: Don’t pretend optinfo^.index can be aword(−1), resolves #40405
2024-03-03 22:49:28 +01:00
optconstprop.pas
* propertly check equality with the for-counter when propagating constants, resolves #39915
2022-09-24 20:39:43 +02:00
optcse.pas
* formatting
2024-03-02 21:31:21 +01:00
optdead.pas
optdeadstore.pas
* patch by Rika: Don’t pretend optinfo^.index can be aword(−1), resolves #40405
2024-03-03 22:49:28 +01:00
optdfa.pas
* patch by Rika: Don’t pretend optinfo^.index can be aword(−1), resolves #40405
2024-03-03 22:49:28 +01:00
options.pas
do not display the changing assembler note, if the internal and the external assemblers are the same, or there's no internal assembler defined
2024-01-08 14:19:20 +01:00
optloadmodifystore.pas
optloop.pas
opttail.pas
optutils.pas
* patch by Rika: Use Index* for pointer lists, resolves #40218
2023-03-25 21:32:29 +01:00
optvirt.pas
WPO: handle classes defined in localsymtables
2024-02-19 21:26:42 +01:00
owar.pas
owbase.pas
owomflib.pas
Add globals to implementation _USES clause to prepare move of V_XXX constants to globals unit
2023-09-09 06:54:30 +00:00
parabase.pas
TCGParaLocation: remove alignment gap
2022-06-04 22:26:40 +02:00
paramgr.pas
parser.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
pass_1.pas
* Clarity over blocknode and VMT flags. nf_usercode_entry doesn't need to be cascaded in "firstpass" as TBlockNode.Simplify already does this
2024-03-02 21:31:21 +01:00
pass_2.pas
* New 'do not execute' flag for notes and respective internal error triggering
2023-02-21 20:44:02 +00:00
pbase.pas
* Forbid use of string alias in system unit
2023-07-22 08:26:22 +00:00
pcp.pas
pdecl.pas
* allow type = type ... ; syntax only for previously declared types, avoids also internal error for #40566
2024-02-20 23:14:31 +01:00
pdecobj.pas
* Atributes for class/record methods
2024-03-02 14:15:22 +01:00
pdecsub.pas
m68k: basic DOS syscall generation for human68k
2023-11-30 23:43:27 +00:00
pdecvar.pas
* Attributes must be assigned only to elements before the first colon
2024-02-29 10:22:19 +01:00
pexports.pas
+ print an error message, in case 'promising' exports are used on non-WebAssembly platform
2023-06-16 15:44:58 +03:00
pexpr.pas
* Flags specific to TArrayConstructorNode have been moved to their own field
2024-03-02 21:31:21 +01:00
pgentype.pas
+ add support for forward declarations of generic classes and interfaces (any implicit pointer type really); fixes #34128
2022-02-18 17:54:23 +01:00
pgenutil.pas
* improve pretty printing of symbols
2024-02-19 20:41:08 +01:00
pinline.pas
* Flags specific to TDerefNode have been moved to their own field
2024-03-02 21:31:21 +01:00
pkgutil.pas
pmodules.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
pp.lpi
pp.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
pparautl.pas
Be sure not to add a symbol with empty name as an alias for function return variable
2024-02-23 16:00:05 +00:00
ppc68k.lpi
ppc8086.lpi
ppcaarch64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcarm.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcavr.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcjvm.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcloongarch64.lpi
+ lazarus project for a loongarch64 compiler
2024-02-15 22:47:31 +01:00
ppcmips64el.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcmips.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcmipsel.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcppc64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcppc64le.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcppc.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcriscv32.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcriscv64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcsparc64.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcsparc.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcwasm32.lpi
- removed the DEBUG_WASM_GOTO define from the .lpi file
2024-01-14 00:21:40 +02:00
ppcx64.lpi
* Unicode resource strings
2023-07-25 16:06:53 +02:00
ppcx64llvm.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcxtensa.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppcz80.lpi
* project files updated
2023-03-15 23:01:44 +01:00
ppheap.pas
ppu.pas
* increase ppu long version as the format changed
2024-03-02 21:31:21 +01:00
procdefutil.pas
* allow a nested function that calls itself can be converted to a function reference
2023-12-30 14:47:38 +01:00
procinfo.pas
* also keep track of captured def (necessary when functions are captured)
2023-12-29 20:26:45 +01:00
psabiehpi.pas
pstatmnt.pas
* formatting
2024-03-02 21:31:21 +01:00
psub.pas
* Reduced the number of expensive calls to "GetUserCode" in DFA
2024-03-03 00:10:41 +00:00
psystem.pas
* Define char as AnsiChar
2023-07-22 08:26:22 +00:00
ptconst.pas
ptype.pas
* Atributes for class/record methods
2024-03-02 14:15:22 +01:00
raatt.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
rabase.pas
rasm.pas
rautils.pas
* do not warn on lea e/rsp with negative address offset, part of #40113
2023-01-15 23:06:05 +01:00
README.txt
rescmn.pas
rgbase.pas
rgobj.pas
Rename fields of tspillregsinfo record to avoid having same field names as treginfo record
2023-09-26 18:18:04 +00:00
scandir.pas
* Introduce task (Single main-level task at the moment, no change in behaviour).
2024-03-05 07:56:14 +00:00
scanner.pas
* Remove freeold from set_current_scanner
2024-03-05 07:56:14 +00:00
switches.pas
* fix #40655 : apply changes to packrecords, packenum and setalloc using the recordpending*() functions so that they are applied correctly in case of them being used directly after a {$POP}{$PUSH} sequence
2024-02-20 23:52:52 +01:00
symbase.pas
Fix for variables longer than 127 chars
2022-05-10 23:18:01 +02:00
symconst.pas
* Introduce constwresourcestring - in unicode mode, resource strings are unicode strings, and must be streamed differently
2024-02-13 19:44:36 +01:00
symcreat.pas
* Remove freeold from set_current_scanner
2024-03-05 07:56:14 +00:00
symdef.pas
* Allow use of attributes on fields and properties in records and classes
2024-02-25 19:57:39 +01:00
symsym.pas
* Fix compilation with DEBUG_NODE_XML
2024-02-17 11:04:29 +01:00
symtable.pas
* Check whether call to deref(impl) is needed during re-resolve (indexes may be -1 if not yet built)
2024-03-05 07:56:14 +00:00
symtype.pas
* improve pretty printing of symbols
2024-02-19 20:41:08 +01:00
symutil.pas
JVM: add typesym for anonymous record typed constants
2023-02-05 10:58:59 +01:00
syscinfo.pas
m68k: basic DOS syscall generation for human68k
2023-11-30 23:43:27 +00:00
systems.inc
+ added ld_int_wasi constant. Register the WASI internal linker.
2023-12-24 12:18:15 +02:00
systems.pas
human68k: this system has internal sysinit
2023-11-30 23:43:27 +00:00
tgobj.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
tokens.pas
+ also allow declaring an external as 'suspending first'
2023-06-13 09:56:44 +03:00
triplet.pas
Add aarch64-iphonesim target
2023-03-27 18:45:00 +00:00
verbose.pas
Add -vj option in options unit to set V_Parallel
2023-09-09 07:49:22 +00:00
version.pas
Add loongarch64 architecture support to compiler
2023-02-05 19:18:48 +00:00
versioncmp.pas
Missing file from b26703feaa
2022-09-16 15:22:05 +02:00
wasmbase.pas
+ introduced TWasmCustomDebugSectionType
2022-08-03 23:04:53 +03:00
widestr.pas
wpo.pas
wpobase.pas
WPO: fix dead code detection, and handle procvars
2023-03-24 21:22:18 +01:00
wpoinfo.pas