florian
7a65b5c7a0
+ added some AT91SAM7 controllers
...
* improved linker script for arm-embedded
git-svn-id: trunk@13292 -
2009-06-18 21:55:12 +00:00
Jonas Maebe
f5a24d0f5b
* fix from r13288
...
git-svn-id: trunk@13289 -
2009-06-18 09:34:04 +00:00
Jonas Maebe
b05992b8a2
* stabs -> Stabs
...
* dwarf/Dwarf -> DWARF
git-svn-id: trunk@13287 -
2009-06-18 09:10:35 +00:00
florian
22745d74a8
o Message file update by Karl-Michael Schindler
...
* Updates of error message files, mainly the two German files and a small typo correction of the English
git-svn-id: trunk@13286 -
2009-06-17 21:30:18 +00:00
florian
f342e825ab
* store scanner directive stack when starting compilation of another module
...
* reset scanner directive stack position when starting new compilation, resolves #13998
git-svn-id: trunk@13285 -
2009-06-17 21:24:26 +00:00
joost
75eaa2cddf
* Renamed DW_AT_stride to DW_AT_byte_stride, DWARF-3 compatible
...
* Use DW_AT_byte_stride when possible, because gdb does not support DW_AT_stride_size
* Add stride to dynamic-array definitions
git-svn-id: trunk@13280 -
2009-06-15 14:47:28 +00:00
florian
70a262acbb
* regenerated
...
git-svn-id: trunk@13258 -
2009-06-11 16:16:05 +00:00
florian
d15e6bbe2a
+ -vs is shown in the help screen, resolves #13958
...
* -v options slightly reordered so they are easier to read
git-svn-id: trunk@13257 -
2009-06-11 16:15:31 +00:00
Jonas Maebe
5c4f80d6bc
* when optimizing temp assignments by simply replacing one temp with
...
another, it's not enough that the temp sizes are the same, because
the assignment may only apply to part of them. In such cases,
perform a regular copy (mantis #13948 )
git-svn-id: trunk@13255 -
2009-06-10 19:14:40 +00:00
Jonas Maebe
7bff50becd
* give an error message when the specified wpo feedback input file
...
is a directory
* always quote wpo feedback file name in messages
git-svn-id: trunk@13242 -
2009-06-06 12:39:09 +00:00
Jonas Maebe
e13a708002
* fixed compiler crash when using a bitpacked array whose size was
...
close to high(longint) bytes
git-svn-id: trunk@13241 -
2009-06-06 12:33:18 +00:00
Jonas Maebe
d27673bbe4
* do not load wpo info from ppu files when we are not generating
...
a wpo feedback file (saves time and memory)
git-svn-id: trunk@13240 -
2009-06-06 09:08:08 +00:00
Jonas Maebe
b9601f10fb
* part of r13238, forgot to commit
...
git-svn-id: trunk@13239 -
2009-06-06 09:07:07 +00:00
Jonas Maebe
41acad1d11
+ keep track of called virtual methods per unit. -Owoptvtms will now replace
...
vmt entries of virtual methods that can never be called with references
to FPC_ABSTRACTERROR. Some virtual methods are always considered to be
reachable: published methods, and methods used as getter/setter for a
published property.
git-svn-id: trunk@13238 -
2009-06-06 08:24:36 +00:00
Jonas Maebe
0daaaf5d3b
* fixed compilation after r13217 (some 2.2.x-isms)
...
git-svn-id: trunk@13220 -
2009-06-01 08:08:16 +00:00
Jonas Maebe
66c14c8a88
* don't mark classes used in "is"- or "as"-expressions as potentially
...
instantiated (for wpo)
* also replace vmt-entries for classes for which we don't have any
information at all with FPC_ABSTRACTERROR (since that means they
certainly are not instantiated), except for their published and
virtual class methods
* fixed check for published methods in wpo
git-svn-id: trunk@13219 -
2009-05-31 13:52:40 +00:00
Jonas Maebe
380e957a79
* init wpo collectors before parsing the interface of units
...
* also register classes assigned to classref typed constants as potentially
instantiated
git-svn-id: trunk@13218 -
2009-05-31 13:37:15 +00:00
Legolas
d2dabe9a33
* updated nds/gba linker scripts and reverted some changes for 2.2.4a release
...
- Removed unused/outdated stuff from libndsfpc
+ Added new examples for libndsfpc
+ Added working (I hope so...) makefile.fpc for all libndsfpc/libgbafpc examples
git-svn-id: trunk@13217 -
2009-05-31 12:15:24 +00:00
Jonas Maebe
7e908cb1e3
* forbid "nil +/- ordinal" expressions (Delphi-compatible, and the
...
expression is meaningless since nil is not a valid address)
git-svn-id: trunk@13205 -
2009-05-27 17:50:55 +00:00
Jonas Maebe
15b0711ca0
* various optimizations by Dave Richards (mantis #12440 )
...
git-svn-id: trunk@13204 -
2009-05-27 17:26:50 +00:00
Jonas Maebe
dc00a747f4
* make references PIC-safe before pushing them as parameter (mantis #13829 )
...
git-svn-id: trunk@13198 -
2009-05-26 16:22:41 +00:00
Jonas Maebe
966ebbf157
* fixed missing reference counting in case a refcounted type was implicitly
...
type casted to a non-refcounted type, e.g. dynarray to pointer in Delphi
mode (mantis #13820 )
git-svn-id: trunk@13195 -
2009-05-25 19:41:14 +00:00
Jonas Maebe
17a7903e60
* fixed evaluating "nil +/- int_const" expressions (mantis #13815 )
...
git-svn-id: trunk@13194 -
2009-05-25 18:34:04 +00:00
Jonas Maebe
bbfd8812c9
* small fixes from Karl-Michael Schindler (mantis #13048 )
...
git-svn-id: trunk@13165 -
2009-05-17 14:50:44 +00:00
Jonas Maebe
84cdb246fa
* copyright in comments updated (from mantis #13048 )
...
git-svn-id: trunk@13164 -
2009-05-17 14:42:17 +00:00
Jonas Maebe
b59d1f724b
* support {$i *.ext} to include source files with the same base name, but
...
with a different extension than the current source file (mantis #13696 )
git-svn-id: trunk@13163 -
2009-05-17 14:33:20 +00:00
yury
9a0808d0fb
* Set default image base for win64 dlls to $110000000.
...
git-svn-id: trunk@13160 -
2009-05-17 12:47:26 +00:00
yury
bf00b3e94b
* Replaced some ifdef x86_64 by ifdef cpu64bitaddr, since it is more correct.
...
git-svn-id: trunk@13159 -
2009-05-17 12:43:58 +00:00
Jonas Maebe
4106ce540f
* fixed compilation with -Cr after r13147
...
* changed type of minstacksize, maxstacksize and imagebase from aword
(= size of integer registers of the target platform) into puint
(= size of address space of target platform)
git-svn-id: trunk@13155 -
2009-05-17 10:07:54 +00:00
Jonas Maebe
3a8b29be91
+ test conversion from class to differently sized enum and to differently
...
sized integer (succeed for Delphi, fail for objfpc)
* fixed compiler so it only allows typecasting a class/interface to a
differently sized integer in Delphi mode
git-svn-id: trunk@13152 -
2009-05-16 11:07:09 +00:00
Jonas Maebe
47c28c2db3
* pass -no_dead_strip_inits_and_terms to the linker, since we use these for
...
dynamic library initialization (this automatically enables dead code
stripping/smart linking in all cases though, independent of -XX/CX;
on the other hand, there is no real reason not to use it anymore on
Mac OS X, since support was introduced in Xcode 1.5 for
Mac OS X 10.3.9 and that's also the earliest version we support
for running FPC on)
git-svn-id: trunk@13151 -
2009-05-16 10:42:23 +00:00
Jonas Maebe
d3cec25dce
* small indentation fix
...
git-svn-id: trunk@13150 -
2009-05-16 10:31:35 +00:00
yury
78b2618db6
* Fixed setting of image base using {$IMAGEBASE X} directive.
...
* Cleanup of relative code.
git-svn-id: trunk@13147 -
2009-05-15 23:12:02 +00:00
yury
ede93974bc
* Fixed writing of external debug info when reloc section should be created.
...
git-svn-id: trunk@13146 -
2009-05-15 22:30:52 +00:00
yury
187a145358
* Fixed build for ARM targets.
...
git-svn-id: trunk@13142 -
2009-05-14 08:47:18 +00:00
yury
c6253d5bd7
* Added missing override directive in trgcpu.add_constraints method for x86_64 CPU. It was missing for years and I am not sure that this code is really needed. Please review.
...
git-svn-id: trunk@13141 -
2009-05-13 11:37:09 +00:00
yury
41d50e4723
* Fixed dead code warning.
...
git-svn-id: trunk@13140 -
2009-05-13 11:27:48 +00:00
yury
f726e1691b
* Fixed warnings and notes.
...
git-svn-id: trunk@13139 -
2009-05-13 11:26:01 +00:00
yury
e23a304254
* Set default images base to $100000000 for win64 executables as done by MS linkers. It helps to detect portability errors early.
...
git-svn-id: trunk@13138 -
2009-05-13 10:56:33 +00:00
yury
82ad6b4de9
* Define FPC_HAS_RIP_RELATIVE to indicate that x86_64 internal assembler supports RIP relative symbol addressing.
...
git-svn-id: trunk@13136 -
2009-05-13 10:44:01 +00:00
yury
92ad06f1e8
* Always use RIP relative symbol addressing for x86_64 Windows targets. Bug #13657 .
...
* Support for simple form of RIP relative addressing by x86_64 assembler writer. Example: movl rax,SomeSymbol(%rip)
git-svn-id: trunk@13135 -
2009-05-13 10:07:44 +00:00
Jonas Maebe
927dfc526a
* search include files specified using relative path also in the include
...
search paths (mantis #13461 )
git-svn-id: trunk@13125 -
2009-05-10 13:42:41 +00:00
Jonas Maebe
74042f791d
* completed making debugstart/end labels local for darwin as started
...
in r13111
git-svn-id: trunk@13112 -
2009-05-07 18:12:30 +00:00
Jonas Maebe
9a8ac8cecc
* make the dwarf debugstart/end labels local for Darwin, because the darwin
...
linker does not like two global labels both pointing at the end of a
section (causes "atom sorting error" warnings), and this happened for
units without any code after r13098
git-svn-id: trunk@13111 -
2009-05-07 16:42:46 +00:00
yury
c4439e4e39
* Properly write 64-bit relocations into .reloc section.
...
* Warning when 64-bit object file contains 32-bit absolute relocations. In such case an executable image can be loaded into lower 4Gb of address space only.
git-svn-id: trunk@13110 -
2009-05-07 10:46:56 +00:00
Jonas Maebe
c1e327c8c4
* insert register allocation/deallocation information for the exception
...
handling code (g_exception_reason_load() now automatically allocates
the cpu register that it loads). This fixes the bug reported in
http://lists.freepascal.org/lists/fpc-devel/2009-May/016773.html
on i386 with -O2)
git-svn-id: trunk@13105 -
2009-05-06 19:11:54 +00:00
yury
5cd83b26d9
* More proper check for executable image size limits.
...
* Proper handling of 64-bit COFF relocations.
* Use jumps with 32-bit relative addressing in imports on win64.
* This fixes are related to bug #13657 . The bug is not fully fixed yet...
git-svn-id: trunk@13104 -
2009-05-06 18:07:07 +00:00
yury
16e19aaef3
* Some cleanup.
...
git-svn-id: trunk@13099 -
2009-05-04 18:45:08 +00:00
yury
9c9462cd5a
* Insert DW_AT_low_pc and DW_AT_high_pc attributes for modules on Windows also. It solves debugging problems on Windows with dwarf debug info.
...
git-svn-id: trunk@13098 -
2009-05-04 18:36:08 +00:00
yury
9acecc0863
* Do not switch to external assembler if dwarf debug info is used.
...
git-svn-id: trunk@13097 -
2009-05-04 11:20:49 +00:00