..
aarch64
+ in_min/max_dword/longint support for aarch64
2021-12-19 16:16:44 +01:00
arm
* seperator => separator
2022-01-02 13:12:33 +01:00
armgen
* avoid to create a stack frame on aarch64 if possible
2021-11-02 22:23:24 +01:00
avr
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
generic
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
html
i386
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
i8086
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
jvm
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
llvm
Fix compilation for x86_64 llvm variant
2021-06-05 06:47:46 +00:00
m68k
* fix m68k IE after e9acd759
, patch by Yuriy Sydorov
2021-12-13 16:14:59 +01:00
mips
+ sanity checks in mips and sparc register allocator
2021-12-17 21:25:17 +01:00
msg
* better error message
2021-11-11 22:52:21 +01:00
powerpc
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
powerpc64
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
ppcgen
Linux/PPC64: fix missing TOC loads
2021-11-28 18:32:32 +01:00
riscv
Fix check that third parameter of ADDI hp1 instruction is a constant
2021-06-02 19:58:38 +00:00
riscv32
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
riscv64
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
sparc
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
sparc64
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
sparcgen
+ sanity checks in mips and sparc register allocator
2021-12-17 21:25:17 +01:00
systems
Always call DoExec to generate linker scripts. Even if cs_link_nolink is set, the ldgen scipt needs to be called in the generated ppas script.
2021-11-29 22:42:49 +01:00
utils
* seperator => separator
2022-01-02 13:12:33 +01:00
wasm32
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
x86
MOV/CMP optimisation is now in both Pass 1 and Pass 2 to catch more
2021-12-31 14:28:35 +00:00
x86_64
Added missing MOVSXD check to PostPeepHoleOptsCpu
2021-12-09 02:15:55 +00:00
xtensa
* Xtensa: optimize constant multiplications
2021-07-18 21:40:43 +00:00
z80
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
aasmbase.pas
+ introduced the use of asm labels for WebAssembly. Resolve them in
2021-10-20 09:39:44 +03:00
aasmcfi.pas
aasmcnst.pas
* patch by Sergey Larin: Reducing and aligning the size of TAnsiRec, TUnicodeRec for CPU64, resolves #38018 :
2021-10-17 11:13:29 +02:00
aasmdata.pas
aasmdef.pas
aasmsym.pas
aasmtai.pas
+ support reading of .p2align with op code and/or max. bytes in the gas assembler reader
2021-10-18 22:12:27 +02:00
aggas.pas
* x86_64-linux doesn't need .data.rel.ro either
2021-09-28 23:13:35 +02:00
aopt.pas
* do not remove register deallocations/allocation pairs if the register is written
2021-04-06 19:16:17 +00:00
aoptbase.pas
aoptda.pas
aoptobj.pas
Bug fix to XMM block move optimisation
2021-09-26 14:09:29 +00:00
aoptutils.pas
* patch by J. Gareth Moreton: x86 JccMovJmpMov2MovSetcc improvement, resolves #38761
2021-05-26 21:03:56 +00:00
assemble.pas
* patch by Rika to pass some strings by reference, resolves #39338
2021-11-09 22:41:52 +01:00
blockutl.pas
browcol.pas
catch.pas
ccharset.pas
cclasses.pas
* partially applied patch by J. Gareth "Kit" Moreton to inline parts of cclasses, resolves #39344
2021-10-06 21:24:18 +02:00
cepiktimer.pas
cfidwarf.pas
* don't generate high-level CFI statements when the selected assembler
2021-04-08 19:50:27 +00:00
cfileutl.pas
cg64f32.pas
- Bug fix to new ADD/SUB optimisation where conditions are concerned
2021-11-17 20:18:57 +00:00
cgbase.pas
- clean up
2021-05-24 09:26:44 +00:00
cgexcept.pas
* fix LLVM after r48828
2021-02-27 22:07:58 +00:00
cghlcpu.pas
cgobj.pas
* unified internal error
2021-08-31 21:32:50 +02:00
cgutils.pas
* Removed unused tlocation.registers[].
2021-11-02 16:46:08 +02:00
cmsgs.pas
comphook.pas
+ print full file path if -vb is passed even if no line number is known, resolves #39419
2021-10-26 21:37:28 +02:00
compiler.pas
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
compinnr.pas
+ implemented memory.grow and memory.size intrinsics and implemented SysOSAlloc
2021-01-21 23:13:49 +00:00
comprsrc.pas
comptty.pas
+ enable colored output on darwin, resolves #38693
2021-04-01 16:32:52 +00:00
constexp.pas
- obsolete defines removed
2021-04-11 18:18:30 +00:00
COPYING.txt
cprofile.pas
crefs.pas
cresstr.pas
* cleanup of 2.7.0 defines
2021-10-31 13:20:28 +01:00
cscript.pas
Add fForceUseForwardSlash to TLinkRes class, used for vlink linker on hosts using backslashes
2021-04-17 22:17:46 +00:00
cstreams.pas
* patch by Rika to pass some strings by reference, resolves #39338
2021-11-09 22:41:52 +01:00
cutils.pas
* patch by Rika: another improvement of cutils.newalignment, part of #39496
2021-12-25 19:37:27 +01:00
dbgbase.pas
dbgcodeview.pas
* Fixed value of the LF_PAD13 enum element.
2021-01-24 14:29:39 +00:00
dbgdwarf.pas
* patch by Dean Mustakino to avoid generation of debug info for generics, resolves #38827
2021-10-11 18:45:41 +02:00
dbgstabs.pas
Second trial to fix commit 48688
2021-02-17 09:46:37 +00:00
dbgstabx.pas
defcmp.pas
defutil.pas
* fixed passing of singleton record parameters, containing a float in WebAssembly
2021-10-14 10:53:55 +03:00
dirparse.pas
dwarfbase.pas
elfbase.pas
entfile.pas
* synchronized with trunk
2021-03-08 00:52:43 +00:00
export.pas
expunix.pas
finput.pas
fmodule.pas
* Fix for issue #39379 by bart broersma
2021-09-29 17:21:57 +02:00
fpcdefs.inc
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
fpchash.pas
o based on a patch by Rika, resolves #39401 :
2021-10-10 10:09:22 +02:00
fpcp.pas
fpkg.pas
fppu.pas
+ added the current WebAssembly exceptions mode to the .ppu module flags and
2021-10-08 23:50:28 +03:00
gendef.pas
globals.pas
* seperator => separator
2022-01-02 13:12:33 +01:00
globstat.pas
globtype.pas
* seperator => separator
2022-01-02 13:12:33 +01:00
hlcg2ll.pas
hlcgobj.pas
* seperator => separator
2022-01-02 13:12:33 +01:00
htypechk.pas
Avoid invalid typecast error when using -CR option
2021-03-15 13:25:59 +00:00
impdef.pas
import.pas
ldscript.pas
link.pas
* Increased the bounds of TBooleanArray to prevent a range check error while linking Lazarus.
2021-12-12 15:50:12 +02:00
macho.pas
machoutils.pas
Makefile
All Makefile's regenerated
2021-11-25 22:13:32 +00:00
Makefile.fpc
* to avoid that -Xg causes a failure during comparing ppc3.exe and ppc386.exe on windows, during the last compiler compilation step, the
2021-09-08 21:06:30 +02:00
MPWMake
Remove unused, obsolete -dBROWSERLOG option
2021-04-22 15:26:15 +00:00
msgidx.inc
* better error message
2021-11-11 22:52:21 +01:00
msgtxt.inc
* better error message
2021-11-11 22:52:21 +01:00
nadd.pas
* last commit was not correct, fixed
2021-11-27 00:28:57 +01:00
nbas.pas
Revert " * patch by J. Gareth Moreton: Nothing (NOP) node optimisation, resolves #38194 "
2021-09-25 21:02:29 +02:00
ncal.pas
* set expectloc properly for x87 on x86
2021-09-24 22:27:44 +02:00
ncgadd.pas
ncgbas.pas
* Added support for the old Turbo Pascal INLINE(data/data/...) statement.
2021-08-16 00:40:34 +03:00
ncgcal.pas
+ added call to g_maybe_checkforexceptions after generating call to fpc_iocheck
2021-10-05 18:02:11 +03:00
ncgcnv.pas
* Patch by J. Gareth "Kit" Moreton (issue #39343 ). Added missing allocation
2021-09-07 19:50:28 +03:00
ncgcon.pas
ncgflw.pas
* Removed obsolete OLDREGVARS ifdefs.
2021-11-02 17:08:08 +02:00
ncghlmat.pas
ncginl.pas
* do not omit location_force_reg on second operand of sar/ro* if
2021-03-01 20:21:42 +00:00
ncgld.pas
* fixed WebAssembly method pointer assignment
2021-10-03 02:27:19 +03:00
ncgmat.pas
- Bug fix to new ADD/SUB optimisation where conditions are concerned
2021-11-17 20:18:57 +00:00
ncgmem.pas
* fix range checking for zero based strings, resolves #39323
2021-09-05 21:03:31 +02:00
ncgnstfl.pas
ncgnstld.pas
ncgnstmm.pas
ncgobjc.pas
ncgopt.pas
ncgrtti.pas
* use an anonymous symbol for the record operator table as its typing is different for each incarnation anyway
2021-12-26 16:36:16 +01:00
ncgset.pas
* Removed obsolete OLDREGVARS ifdefs.
2021-11-02 17:08:08 +02:00
ncgutil.pas
ncgvmt.pas
* compilation hopefully fixed
2021-11-28 00:03:30 +01:00
ncnv.pas
* moved warning about suspicious comp assignment to type check pass, catches also
2021-04-21 19:51:22 +00:00
ncon.pas
* sizeof(array) and length(array) must return sizeUint in case the array
2021-08-16 21:54:46 +03:00
nflw.pas
+ in_min/max_dword/longint support for aarch64
2021-12-19 16:16:44 +01:00
ngenutil.pas
* seperator => separator
2022-01-02 13:12:33 +01:00
ngtcon.pas
Typed constants: no internalerror on failure
2021-10-03 21:46:23 +02:00
ninl.pas
* when converting a*a into sqr(a), set the result type correctly
2021-11-07 21:54:25 +01:00
nld.pas
* Before r35961 (back in 2017) some simple assignment optimizations, such as "x:=x+y" to "inc(x,y)", were performed when -O2 in tassignmentnode.simplify. In r35961 these optimizations were moved to a separate pass which is enabled only when -O3 by cs_opt_use_load_modify_store. This separate pass can benefit from other optimization. But worse code is generated with -O2 since then.
2021-08-13 13:53:40 +03:00
nmat.pas
+ apply unary minus optimizations also to /
2021-09-23 22:44:16 +02:00
nmem.pas
* removed accidently committed printnode
2021-01-31 13:19:55 +00:00
nobj.pas
nobjc.pas
node.pas
* Removed unused and confusing tnode.parent and tnode.concattolist().
2021-11-02 16:55:59 +02:00
nopt.pas
nset.pas
* WebAssembly code generation for 'case' nodes changed to use labels
2021-10-22 17:31:04 +03:00
nutils.pas
+ optimize (a and b) or (c and not(b)) into c xor ((c xor a) and b)
2021-02-28 18:20:46 +00:00
objcasm.pas
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
objcdef.pas
objcgutl.pas
objcutil.pas
ogbase.pas
internalerror if the section we're about to keep has no exesection assigned
2021-10-20 14:37:27 +02:00
ogcoff.pas
Set string length before calling move to avoid problems with global data analysis on systems using C library
2021-04-27 14:52:22 +00:00
ogelf.pas
Fix gotpcrel relocation for TESTQ x86_64 instruction
2021-04-23 21:52:24 +00:00
oglx.pas
ogmacho.pas
ogmap.pas
ognlm.pas
ogomf.pas
* fix x86 compilation after my last commit
2021-10-10 10:21:21 +02:00
ogrel.pas
ogwasm.pas
* emit a weak symbol for the exception tag, since that's what the LLVM linker
2021-09-28 02:52:40 +03:00
omfbase.pas
optbase.pas
optconstprop.pas
optcse.pas
+ store references to global variables in registers if benefical (currrently used for aarch64 only)
2021-12-11 22:46:27 +01:00
optdead.pas
optdeadstore.pas
* fixes to deadstore optimization
2021-04-03 21:28:09 +00:00
optdfa.pas
+ TDFABuilder.redodfainfo
2021-10-22 22:39:39 +02:00
options.pas
* Amiga-likes: set some sensible heapsize defaults, for OSHeap support
2021-12-26 17:22:11 +01:00
optloadmodifystore.pas
* Before r35961 (back in 2017) some simple assignment optimizations, such as "x:=x+y" to "inc(x,y)", were performed when -O2 in tassignmentnode.simplify. In r35961 these optimizations were moved to a separate pass which is enabled only when -O3 by cs_opt_use_load_modify_store. This separate pass can benefit from other optimization. But worse code is generated with -O2 since then.
2021-08-13 13:53:40 +03:00
optloop.pas
* Strength reduction optimization: - Use a temp for complex loop start values to prevent double evaluation.
2021-10-08 18:04:03 +03:00
opttail.pas
optutils.pas
* explicitly reset successor if noreturn is set
2021-06-06 20:33:09 +00:00
optvirt.pas
owar.pas
owbase.pas
owomflib.pas
parabase.pas
paramgr.pas
* cleanup of VER3_0 defines
2021-11-17 22:19:57 +01:00
parser.pas
* initialize current_settings as early as possible so cs_debugswitch is set correctly if needed
2021-02-14 21:25:01 +00:00
pass_1.pas
Make sure nf_usercode_entry get transferred inside firstpass procedure
2021-04-27 14:20:09 +00:00
pass_2.pas
pbase.pas
pcp.pas
o based on a patch by Rika, resolves #39401 :
2021-10-10 10:09:22 +02:00
pdecl.pas
* some warnings fixed
2021-09-18 19:24:53 +02:00
pdecobj.pas
* better error recovery, resolves #39485
2021-12-16 22:27:38 +01:00
pdecsub.pas
* 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)
2021-04-18 14:01:09 +00:00
pdecvar.pas
Record variant discriminators: check types
2021-10-31 21:13:35 +01:00
pexports.pas
pexpr.pas
* patch by Rika to pass some strings by reference, resolves #39338
2021-11-09 22:41:52 +01:00
pgentype.pas
pgenutil.pas
* patch by Rika to pass some strings by reference, resolves #39338
2021-11-09 22:41:52 +01:00
pinline.pas
* patch by Rika to pass some strings by reference, resolves #39338
2021-11-09 22:41:52 +01:00
pkgutil.pas
pmodules.pas
Keep esp32 and esp8266 version specific tweaks separate.
2021-11-29 22:42:49 +01:00
pp.lpi
pp.pas
pparautl.pas
* set self to nil in current_module.deflist for registered defs in the
2021-05-30 21:27:57 +00:00
ppc68k.lpi
ppc8086.lpi
ppcaarch64.lpi
ppcarm.lpi
ppcavr.lpi
ppcjvm.lpi
ppcmips64el.lpi
ppcmips.lpi
ppcmipsel.lpi
ppcppc64.lpi
ppcppc64le.lpi
ppcppc.lpi
ppcriscv32.lpi
ppcriscv64.lpi
ppcsparc64.lpi
ppcsparc.lpi
ppcwasm32.lpi
+ enable the WebAssembly internal assembler and object writer
2021-09-26 20:46:47 +03:00
ppcx64.lpi
bugfix 0037785 cvtsi2ss and cvtsi2sd in x86_64 { att}
2021-02-22 15:59:58 +00:00
ppcx64llvm.lpi
ppcxtensa.lpi
ppcz80.lpi
ppheap.pas
ppu.pas
o based on a patch by Rika, resolves #39401 :
2021-10-10 10:09:22 +02:00
procdefutil.pas
procinfo.pas
psabiehpi.pas
* fix LLVM after r48828
2021-02-27 22:07:58 +00:00
pstatmnt.pas
* In TP-style INLINE, allowed the > modifier for global vars and relaxed range checks.
2021-08-16 17:36:12 +03:00
psub.pas
* avoid to create a stack frame on aarch64 if possible
2021-11-02 22:23:24 +01:00
psystem.pas
ptconst.pas
ptype.pas
raatt.pas
+ support reading of .p2align with op code and/or max. bytes in the gas assembler reader
2021-10-18 22:12:27 +02:00
rabase.pas
rasm.pas
rautils.pas
* more helpful message if an unknown field is accessed in the assembler reader, resolves #38475
2021-02-11 20:51:53 +00:00
README.txt
rescmn.pas
rgbase.pas
rgobj.pas
* Fixed random AVs when targeting the AVX FPU.
2021-12-12 18:19:35 +02:00
scandir.pas
+ support $lgeacyifend directive, resolves #37676
2021-11-01 23:24:42 +01:00
scanner.pas
* seperator => separator
2022-01-02 13:12:33 +01:00
switches.pas
symbase.pas
symconst.pas
* use an anonymous symbol for the record operator table as its typing is different for each incarnation anyway
2021-12-26 16:36:16 +01:00
symcreat.pas
symdef.pas
* Removed obsolete OLDREGVARS ifdefs.
2021-11-02 17:08:08 +02:00
symsym.pas
* some warnings fixed
2021-09-18 19:24:53 +02:00
symtable.pas
* patch by Rika to pass some strings by reference, resolves #39338
2021-11-09 22:41:52 +01:00
symtype.pas
* improvements to the prevention of dangling pointers in tmodule.deflist,
2021-06-01 15:02:26 +00:00
symutil.pas
syscinfo.pas
systems.inc
+ started working on the WebAssembly internal assembler
2021-09-19 16:17:09 +03:00
systems.pas
+ added system_wasm32_embedded to systems_embedded
2021-10-02 23:14:24 +03:00
tgobj.pas
* make tgobj.pas less verbose in extdebug mode, use separate define DEBUG_FREETEMP for the really
2021-12-15 23:05:18 +01:00
tokens.pas
* Added support for the old Turbo Pascal INLINE(data/data/...) statement.
2021-08-16 00:40:34 +03:00
triplet.pas
verbose.pas
Fixed Unreachable code warning when building on a 32-bit platform with DEBUG_NODE_XML
2021-12-02 20:32:05 +00:00
version.pas
Remove "r" from FPC revision.
2021-08-13 11:18:42 +01:00
wasmbase.pas
+ added support for exception tags and for the 'throw' and 'catch' instructions
2021-09-27 21:44:09 +03:00
widestr.pas
wpo.pas
wpobase.pas
wpoinfo.pas