..
aarch64
Decrease amount of code duplication regarding handling of safecall and record constructors.
2013-01-25 20:39:28 +00:00
alpha
arm
* fix armv7m compiler
2013-03-03 21:59:34 +00:00
avr
+ patch by Justin Smyth to support the lpc1343, resolves #23844
2013-02-14 20:38:53 +00:00
generic
html
i386
+ Merge the targetandroid branch. Support for arm and i386 android targets.
2013-02-13 12:00:15 +00:00
i8086
* i8086 multiplication fixes; 16-bit multiplication now works; 32-bit still doesn't
2013-03-11 22:31:17 +00:00
ia64
jvm
* fixed automatic setter generation if only a setter and no getter prefix
2013-02-02 15:21:58 +00:00
m68k
- Removed ConcatPasString procedure, it duplicates ConcatString (it the past they probably used to differ, but today both preserve null characters).
2013-02-25 22:09:39 +00:00
mips
MIPS: reworked PIC/call code:
2013-03-05 19:31:20 +00:00
msg
* updates of german message files by Karl-Michael Schindler
2013-02-14 18:54:26 +00:00
powerpc
- removed ppc-specific tcgpara.composite field, it's no longer used or
2013-02-06 15:37:50 +00:00
powerpc64
high level code generator: const types changed from aint to tcgint to avoid problems on < 32-bit cpus; ppcjvm should also be updated, but isn't yet
2013-03-09 22:16:03 +00:00
ppcgen
* pass the procdef to getintparaloc instead of only the proccalloption, so
2013-01-06 15:05:40 +00:00
sparc
compiler: change ret_in_param to accept tabstractprocdef instead of tproccalloption to allow check more options (required for record constructor implementation)
2013-01-16 01:14:23 +00:00
systems
wlink support added and made the default
2013-03-10 21:41:59 +00:00
utils
Small optimization for the search of operator overloads. Add a flag "sto_has_generic" to all symtables that contain an operator overload (the flag propagates up the owning symtables) and check this flag when searching for units with operators.
2013-03-04 16:02:18 +00:00
vis
x86
+ trgintcpu.add_cpu_interferences for i8086 so references are properly build
2013-03-10 18:51:42 +00:00
x86_64
* set the subregsize of OS_M64 SSE registers to R_SUBQ so we can
2013-03-06 12:42:46 +00:00
aasmbase.pas
aasmdata.pas
* Add missing checks for android target.
2013-01-21 12:08:25 +00:00
aasmsym.pas
aasmtai.pas
+ shifterop for ARM64
2012-11-01 20:11:15 +00:00
aggas.pas
* Add missing checks for android target.
2013-01-21 12:08:25 +00:00
agjasmin.pas
* initialise dollarsign field of jasmin tasminfo
2012-10-21 17:56:16 +00:00
aopt.pas
aoptbase.pas
aoptcs.pas
aoptda.pas
aoptobj.pas
asmutils.pas
* Changed section for ansi/wide/unicodestring constants, resourcestrings (content only) and dataconstnodes from sec_rodata to sec_rodata_norel, because they never contain relocations.
2012-11-18 17:00:18 +00:00
assemble.pas
Fix cycle/build with -al
2013-02-19 10:11:39 +00:00
browcol.pas
Avoid range check error in IDE by changing value of sfHasMemInfo constant to fit with longint value
2012-11-07 16:22:57 +00:00
bsdcompile
catch.pas
ccharset.pas
cclasses.pas
- Removed a number of unused variables, reduces noise at compilation.
2012-10-30 11:55:59 +00:00
cfidwarf.pas
cfileutl.pas
* make ansistring unique before starting to change it using a pchar
2012-11-24 13:15:54 +00:00
cg64f32.pas
cg64f32.pas, tcg64f32.a_load64_*_cgpara:
2012-11-04 19:12:57 +00:00
cgbase.pas
- Revert {$J-} accidentally committed in r23555.
2013-02-01 16:49:46 +00:00
cghlcpu.pas
cgobj.pas
* intial armv6m support, it is not working yet, constant pool insertation and conditional branch fixup is not working yet
2013-03-03 12:20:10 +00:00
cgutils.pas
tlocation.value (for LOC_CONSTANTs) changed to TCGInt to avoid trouble on < 32-bit cpus
2013-03-09 20:57:19 +00:00
cmsgs.pas
comphook.pas
Increase status.errorcount only inside GenerateError procedure, to simplify debugging
2013-01-16 09:45:57 +00:00
compiler.pas
applied fix from trunk for building with fpc 2.6.x on unix
2013-03-09 18:35:24 +00:00
compinnr.inc
+ pseudo procedure aligned: tells the compiler to assume that the given parameter is naturally aligned, counterpart of unaligned
2013-01-04 19:13:24 +00:00
comprsrc.pas
constexp.pas
- 2.0 overlefts removed
2012-11-18 17:07:57 +00:00
COPYING.txt
cp437.pas
cp646.pas
cp850.pas
cp866.pas
cp1251.pas
cp1252.pp
cp1253.pp
+ Added Greek code page 1253 to the compiler to have support for the third modern code page (in addition to cp1251 and cp1252). It is needed to be able to define "type AnsiString(1253)" in tests. Previously I used cp1252 for tests with Euro symbol conversions. But for unknown reason cp1252 does not have the Euro symbol with code $80 on Unix systems (libiconv bug?). In other hand cp1253 has the Euro symbol with code $80 as expected.
2013-02-14 11:29:47 +00:00
cp8859_1.pas
cp8859_5.pas
cpid.pas
crefs.pas
cresstr.pas
* Changed section for ansi/wide/unicodestring constants, resourcestrings (content only) and dataconstnodes from sec_rodata to sec_rodata_norel, because they never contain relocations.
2012-11-18 17:00:18 +00:00
cstreams.pas
cutils.pas
cwindirs.pp
dbgbase.pas
dbgdwarf.pas
Fix bug introduced by myself for win32 dwarf info generation Bug #23365 and 23330
2012-11-22 13:49:21 +00:00
dbgstabs.pas
compiler: change ret_in_param to accept tabstractprocdef instead of tproccalloption to allow check more options (required for record constructor implementation)
2013-01-16 01:14:23 +00:00
dbgstabx.pas
defcmp.pas
Fix the fix for Mantis #21538 . The check never really worked up to now...
2012-12-15 21:43:52 +00:00
defutil.pas
+ is_dynamicstring
2012-11-04 21:48:53 +00:00
elfbase.pas
* Made TElfExeOutput.CreatePLT method protected virtual, so CPU-specific handling can be provided by descendants.
2013-01-07 15:22:04 +00:00
export.pas
expunix.pas
* Add missing checks for android target.
2013-01-21 12:08:25 +00:00
finput.pas
fmodule.pas
fpccrc.pas
fpcdefs.inc
some more generic i8086 defines added
2013-03-07 22:46:00 +00:00
fppu.pas
compiler: remove unused variables and unneeded assignments
2013-01-21 01:24:36 +00:00
gendef.pas
globals.pas
cpu_i8086 and system_i8086_msdos added to the systems.inc enums
2013-03-07 22:38:35 +00:00
globstat.pas
globtype.pas
+ make empty proc. removal switchable by removeemptyprocs
2013-02-14 21:40:04 +00:00
hlcg2ll.pas
high level code generator: const types changed from aint to tcgint to avoid problems on < 32-bit cpus; ppcjvm should also be updated, but isn't yet
2013-03-09 22:16:03 +00:00
hlcgobj.pas
high level code generator: const types changed from aint to tcgint to avoid problems on < 32-bit cpus; ppcjvm should also be updated, but isn't yet
2013-03-09 22:16:03 +00:00
htypechk.pas
Small optimization for the search of operator overloads. Add a flag "sto_has_generic" to all symtables that contain an operator overload (the flag propagates up the owning symtables) and check this flag when searching for units with operators.
2013-03-04 16:02:18 +00:00
impdef.pas
import.pas
ldscript.pas
link.pas
+ chmod 755 on executable files produced by internal linker. I missed this "small" detail for half a year because all development was going on a NTFS drive where everything is executable.
2013-01-13 17:18:11 +00:00
macho.pas
machoutils.pas
Makefile
* Updated makefile.
2013-02-13 20:28:25 +00:00
Makefile.fpc
+ instruction table generator for arm64
2012-11-01 16:11:19 +00:00
MPWMake
msgidx.inc
Disallow "protected" and "strict protected" in extended records (Delphi compatible).
2013-02-11 18:46:47 +00:00
msgtxt.inc
Disallow "protected" and "strict protected" in extended records (Delphi compatible).
2013-02-11 18:46:47 +00:00
nadd.pas
16-bit and 8-bit ALU fixes for int types in taddnode.pass_typecheck_internal
2013-03-09 01:12:48 +00:00
nbas.pas
ncal.pas
+ make empty proc. removal switchable by removeemptyprocs
2013-02-14 21:40:04 +00:00
ncgadd.pas
ncgbas.pas
* report resolveref errors on the correct line number
2012-12-15 22:54:22 +00:00
ncgcal.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
ncgcnv.pas
* type casting could force pointers into sub registers, so handle them when converting the pointer to an array
2013-02-10 20:50:12 +00:00
ncgcon.pas
* intial armv6m support, it is not working yet, constant pool insertation and conditional branch fixup is not working yet
2013-03-03 12:20:10 +00:00
ncgflw.pas
* pass the procdef to getintparaloc instead of only the proccalloption, so
2013-01-06 15:05:40 +00:00
ncginl.pas
+ pseudo procedure aligned: tells the compiler to assume that the given parameter is naturally aligned, counterpart of unaligned
2013-01-04 19:13:24 +00:00
ncgld.pas
* Add missing checks for android target.
2013-01-21 12:08:25 +00:00
ncgmat.pas
* cpu16bitalu fixes in tcgshlshrnode.second_integer
2013-03-11 16:13:25 +00:00
ncgmem.pas
* type casting could force class variables into sub registers, so handle them in subscript nodes as well
2013-02-10 10:06:36 +00:00
ncgnstld.pas
ncgnstmm.pas
ncgobjc.pas
ncgopt.pas
ncgrtti.pas
ncgset.pas
ncgutil.pas
* gen_load_cgpara_loc, MIPS-specific: added missing calls to unget_para, and disabled part that loads upper and lower halves of Double values from integer registers. It produces invalid code, but that's hidden by MIPS code generator copying all parameters to stack (so this code is never executed).
2013-02-15 22:05:24 +00:00
ncnv.pas
compiler: convert unicode constants which are > 127 to AnsiString (except UTF8String) in runtime to prevent conversion to wrong codepage (read issue #0021195 )
2013-02-14 09:01:07 +00:00
ncon.pas
* fix trealconstnode.dogetcopy and trealconstnode.docompare, taking care of all fields, resolves #23486
2012-12-28 14:16:09 +00:00
nflw.pas
* let type conversion nodes handle type checking for if/while/repeat
2013-01-26 21:28:22 +00:00
ngenutil.pas
compiler: remove unused variables and unneeded assignments
2013-01-21 01:24:36 +00:00
ngtcon.pas
ninl.pas
+ pseudo procedure aligned: tells the compiler to assume that the given parameter is naturally aligned, counterpart of unaligned
2013-01-04 19:13:24 +00:00
nld.pas
nmat.pas
fixed bug in tunaryplusnode.pass_typecheck introduced in my previous commit r23737
2013-03-09 14:05:09 +00:00
nmem.pas
compiler: calculate offset of record fields in taddrnode also for bitpacked structures (Jonas comment in bug #0019357 )
2013-01-18 01:56:55 +00:00
nobj.pas
+ make empty proc. removal switchable by removeemptyprocs
2013-02-14 21:40:04 +00:00
nobjc.pas
node.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
nopt.pas
nset.pas
compiler: remove unused variables and unneeded assignments
2013-01-21 01:24:36 +00:00
nstate.pas
nutils.pas
* fixed check for bitpacked accesses (mantis #24007 )
2013-03-07 15:44:41 +00:00
objcdef.pas
objcgutl.pas
objcutil.pas
ogbase.pas
* TExeOutput.FixupRelocations method made virtual.
2013-03-03 20:01:54 +00:00
ogcoff.pas
+ PECOFF targets: support more than 65535 relocations per object section, resolves #23752 . DJCOFF targets: give a fatal error, since this object file format does not support extended relocations.
2013-01-26 16:15:59 +00:00
ogelf.pas
+ MIPS: doing progress with linker, implemented processing of local symbols in PIC code and stuff needed to link shared libraries.
2013-03-04 20:48:33 +00:00
oglx.pas
ogmacho.pas
ogmap.pas
ognlm.pas
* Don't calculate data position of each object section. Instead, write out a copy of exesection's memory image, i.e. every objsection is placed at the same offset from its owning exesection both on disk and in memory. This approach is simpler and works regardless of alignment requirements, while existing one could work only if SectionDataAlign<=SectionMemAlign.
2013-01-02 10:10:23 +00:00
optbase.pas
optcse.pas
compiler: remove unused variables and unneeded assignments
2013-01-21 01:24:36 +00:00
optdead.pas
optdfa.pas
options.pas
some more generic i8086 defines added
2013-03-07 22:46:00 +00:00
optloop.pas
opttail.pas
optutils.pas
optvirt.pas
owar.pas
owbase.pas
parabase.pas
- removed ppc-specific tcgpara.composite field, it's no longer used or
2013-02-06 15:37:50 +00:00
paramgr.pas
- removed ppc-specific tcgpara.composite field, it's no longer used or
2013-02-06 15:37:50 +00:00
parser.pas
Increase status.errorcount only inside GenerateError procedure, to simplify debugging
2013-01-16 09:45:57 +00:00
pass_1.pas
pass_2.pas
pbase.pas
pdecl.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
pdecobj.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
pdecsub.pas
Small optimization for the search of operator overloads. Add a flag "sto_has_generic" to all symtables that contain an operator overload (the flag propagates up the owning symtables) and check this flag when searching for units with operators.
2013-03-04 16:02:18 +00:00
pdecvar.pas
* when automatically generating (s|g)etters, make sure that the visibility of
2013-01-30 22:36:03 +00:00
pexports.pas
pexpr.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
pgenutil.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
pinline.pas
* allow type parameters variables being passed to new/dispose, resolves #23270
2012-11-09 20:46:30 +00:00
pmodules.pas
compiler: remove unused variables and unneeded assignments
2013-01-21 01:24:36 +00:00
pp.lpi
pp.pas
cpu_i8086 and system_i8086_msdos added to the systems.inc enums
2013-03-07 22:38:35 +00:00
pparautl.pas
Added support for type helpers. In non Delphi modes they use "type helper" and in mode Delphi they use "record helper". They can also be used on constants.
2013-02-06 09:49:35 +00:00
ppc68k.lpi
ppc8086.lpi
added n8086add.pas (copy of n386add.pas), TODO: adapt to i8086
2013-03-09 23:17:23 +00:00
ppcaarch64.lpi
+ lazarus compiler project for aarch64
2012-12-16 12:35:02 +00:00
ppcarm.lpi
ppcavr.lpi
ppcmips.lpi
ppcmipsel.lpi
ppcppc64.lpi
ppcppc.lpi
ppcsparc.lpi
ppheap.pas
ppu.pas
- removed ppc-specific tcgpara.composite field, it's no longer used or
2013-02-06 15:37:50 +00:00
ppx86_64.lpi
procinfo.pas
+ nested exit support
2013-01-04 19:09:04 +00:00
pstatmnt.pas
compiler: change ret_in_param to accept tabstractprocdef instead of tproccalloption to allow check more options (required for record constructor implementation)
2013-01-16 01:14:23 +00:00
psub.pas
* turn off stack frame stripping for i8086 for now, it cannot do sp relative addressing
2013-03-10 18:53:49 +00:00
psystem.pas
* Define CExtended and clongdouble as double for Android.
2013-01-22 11:16:22 +00:00
ptconst.pas
ptype.pas
Disallow "protected" and "strict protected" in extended records (Delphi compatible).
2013-02-11 18:46:47 +00:00
raatt.pas
- Removed ConcatPasString procedure, it duplicates ConcatString (it the past they probably used to differ, but today both preserve null characters).
2013-02-25 22:09:39 +00:00
rabase.pas
rasm.pas
rautils.pas
- Removed ConcatPasString procedure, it duplicates ConcatString (it the past they probably used to differ, but today both preserve null characters).
2013-02-25 22:09:39 +00:00
README.txt
regvars.pas
rescmn.pas
rgbase.pas
Use TRegNameTable instead of array[tregisterindex] of string[10]
2012-10-22 10:23:21 +00:00
rgobj.pas
Also check for the type of the register when replacing it. In certain circumstances this can still lead to access to invalid memory resulting either in an access violation or invalid registers.
2012-10-19 19:35:45 +00:00
scandir.pas
compiler: set apptype using new SetAppType routine, add 'CONSOLE' define for console apptype.
2013-02-13 03:21:03 +00:00
scanner.pas
compiler: set apptype using new SetAppType routine, add 'CONSOLE' define for console apptype.
2013-02-13 03:21:03 +00:00
script.pas
switches.pas
symbase.pas
symconst.pas
some more generic i8086 defines added
2013-03-07 22:46:00 +00:00
symcreat.pas
* fixed typo in jvm record clone implementation comment
2013-01-26 21:28:30 +00:00
symdef.pas
some more generic i8086 defines added
2013-03-07 22:46:00 +00:00
symnot.pas
symsym.pas
* records with two times the size of a register can be kept in registers
2013-01-04 21:48:41 +00:00
symtable.pas
* use same symtable check in sym_is_owned_by() as in is_owned_by() to
2013-02-06 21:39:43 +00:00
symtype.pas
Add support for generic type constraints. They are currently only useful to stop specialization of a generic. The parsing of a generic is still too lax and needs to be changed in the future...
2012-12-16 13:44:58 +00:00
symutil.pas
systems.inc
all the extra i8086 units added
2013-03-08 00:04:45 +00:00
systems.pas
oops, forgot about systems.pas in the previous commit
2013-03-07 22:40:52 +00:00
tgobj.pas
tokens.pas
+ constant postfixoperator_tokens
2012-11-04 19:21:19 +00:00
verbose.pas
Increase status.errorcount only inside GenerateError procedure, to simplify debugging
2013-01-16 09:45:57 +00:00
version.pas
ifdef cpu86 replaced with ifdef cpui386
2013-03-07 22:21:27 +00:00
widestr.pas
+ Added Greek code page 1253 to the compiler to have support for the third modern code page (in addition to cp1251 and cp1252). It is needed to be able to define "type AnsiString(1253)" in tests. Previously I used cp1252 for tests with Euro symbol conversions. But for unknown reason cp1252 does not have the Euro symbol with code $80 on Unix systems (libiconv bug?). In other hand cp1253 has the Euro symbol with code $80 as expected.
2013-02-14 11:29:47 +00:00
wpo.pas
wpobase.pas
wpoinfo.pas