florian
2c26c35eb6
* updated copyright year to 2015
...
+ added "and others" if translation was not updated yet
git-svn-id: trunk@29383 -
2015-01-04 15:26:29 +00:00
florian
29d4037a9c
* make integer division instruction (div/idiv) on x86 dependent on the
...
resulttype of the div node set by the type checking pass, this is
also how the generic code generator handles it, resolves #27173
git-svn-id: trunk@29382 -
2015-01-04 13:08:57 +00:00
pierre
cc537a2e76
Try to avoid uncorrect optimization
...
git-svn-id: trunk@29373 -
2015-01-02 23:00:22 +00:00
Károly Balogh
7a91d5f495
m68k: oops, unbroke the build with softfpu
...
git-svn-id: trunk@29372 -
2015-01-02 16:00:53 +00:00
Károly Balogh
d000b1bc7c
m68k: basic 68881 fpu support. probably still broken at umpzillion places, and mostly untested, but at least it builds the RTL and all packages successfully with -Cp68020 -Cf68881 instead of dying with random internalerrors() and now even emits actual FPU opcodes.
...
git-svn-id: trunk@29370 -
2015-01-02 05:29:45 +00:00
florian
f813703cf3
* fixes several issues with loop unrolling
...
git-svn-id: trunk@29362 -
2014-12-31 15:45:06 +00:00
sergei
da8346079f
* mips-linux: Enabled tf_safecall_exceptions (it just works, no reason to keep disabled) and also tf_pic_uses_got (so that checks elsewhere in compiler set pi_needs_got flag; actual functionality is not changed because currently MIPS just forces pi_needs_got unconditionally).
...
git-svn-id: trunk@29360 -
2014-12-29 23:26:40 +00:00
sergei
b46ce6b70e
* Fixed condition to output div/divu having R0 as first operand as non-macros.
...
git-svn-id: trunk@29359 -
2014-12-29 23:19:01 +00:00
florian
0a19825e25
* elf_x86_64 -> elf_x86_64_sol2, should resolve #27199
...
git-svn-id: trunk@29358 -
2014-12-29 17:57:45 +00:00
sergei
57094d495b
+ MIPS: implement inline full 64-bit multiplication, for cases when overflow checking is off and CPU is set to mips32r2.
...
git-svn-id: trunk@29354 -
2014-12-28 22:03:15 +00:00
florian
1178fdc98f
* force objects and records only into memory if their address is passed, hint from Jonas, improves code after r29139
...
git-svn-id: trunk@29344 -
2014-12-27 16:42:34 +00:00
svenbarth
5848637db3
Fix generation of class names for specializations.
...
symdef.pas, tstoreddef:
* is_specialization: fix exit condition to correctly recognize specializations
+ added test
git-svn-id: trunk@29328 -
2014-12-26 18:14:52 +00:00
sergei
d2187257e7
- removed unused type and variable
...
git-svn-id: trunk@29323 -
2014-12-25 10:25:21 +00:00
Tomas Hajny
ee82b6ea0b
* do not mention OS/2 and EMX on option list for x86_64
...
git-svn-id: trunk@29318 -
2014-12-23 23:08:43 +00:00
florian
c34bffd56a
* $SUBARCH => $FPCSUBARCH
...
git-svn-id: trunk@29316 -
2014-12-23 20:48:35 +00:00
nickysn
b193073e32
+ support the $fpcmemorymodel macro in fpc.cfg
...
git-svn-id: trunk@29315 -
2014-12-23 18:55:57 +00:00
svenbarth
b38fb606cc
Fix for Mantis #27185 .
...
ngenutil.pas:
* AddToStructInits: also process the class constructors/destructors of nested types
+ added test
git-svn-id: trunk@29308 -
2014-12-21 14:01:32 +00:00
Jonas Maebe
a7d36de9ae
* associate debug information for local variables with the second instead of
...
first java bytecode of a method, because when using javac for code
completion (as done by NetBeans), it assumes that all variable debug info
associated with the first byte code is for parameters. Furthermore, this
code in javac contains a range error when a lot of extra "parameters" are
declared this way, so it used to crash in some cases.
git-svn-id: trunk@29301 -
2014-12-16 20:52:46 +00:00
pierre
905c47ef84
Fix error with .ref pseudo-op. with assembler labels that still had dollar signs on AIX assembler
...
git-svn-id: trunk@29300 -
2014-12-15 09:10:50 +00:00
florian
677d30182a
* improve error location reporting, resolves #26279
...
git-svn-id: trunk@29296 -
2014-12-14 21:18:28 +00:00
florian
4289dd667d
* managed types cause a different warning/hint when they are
...
used uninitialized, so users can turn off these messages if they want, resolves #24601 and #26403
git-svn-id: trunk@29295 -
2014-12-14 20:48:54 +00:00
florian
c9ba9665dd
* set nf_internal for if nodes generated by assert, prevent warning for assert(true); resolves #26467
...
git-svn-id: trunk@29293 -
2014-12-14 19:41:22 +00:00
florian
f630fb94b5
* do not warn when internally generated if nodes are simplified
...
git-svn-id: trunk@29292 -
2014-12-14 19:40:17 +00:00
florian
f1eb00a450
* do not issue a hint about uninitialized var-parameters, resolves #25916
...
git-svn-id: trunk@29289 -
2014-12-14 17:54:37 +00:00
florian
bb01872821
+ handle -CPPACKENUM and -CPPACKRECORD, resolves #27153
...
git-svn-id: trunk@29283 -
2014-12-13 21:08:18 +00:00
florian
d540d56908
* unified internal errors
...
git-svn-id: trunk@29280 -
2014-12-13 11:46:59 +00:00
joost
5b7f168d2c
* Set the full path to the fpc-binary in the fppkg-configuration file
...
git-svn-id: trunk@29279 -
2014-12-13 11:24:21 +00:00
michael
a127bfa51d
* Fixed tex marker
...
git-svn-id: trunk@29276 -
2014-12-12 20:02:09 +00:00
svenbarth
77df68b2d9
Fix basically a regression since the reworking of Delphi compatible generics. The typenames of specialization now (again) contains the type names of the parameters. Additionally they are nicely formatted (TypeName<UnitName1.TypeName1[,...]>. If the full string should be longer than 255 characters an ellipsis will be added accordingly instead of the remaining parameters.
...
symdef.pas, tabstractrecorddef:
+ new private field rttistring to hold the string generated by RttiName
* instead of generating the RTTI name each time on the fly it is generated only once and additionally contains (symbollically) the amount of type parameters for generics and all type parameters for specializations including their units
git-svn-id: trunk@29275 -
2014-12-12 17:25:15 +00:00
svenbarth
7b216d7fa6
Fix for Mantis #27120 .
...
pdecobj.pas, parse_object_members:
* also allow class fields for helper types
+ added tests
git-svn-id: trunk@29270 -
2014-12-12 13:57:43 +00:00
florian
dd967eb136
* handle records in iso mode properly if no tag-field is given
...
git-svn-id: trunk@29259 -
2014-12-11 19:21:13 +00:00
nickysn
c39128708e
+ implemented inc/dec for huge pointers
...
git-svn-id: trunk@29251 -
2014-12-10 23:52:46 +00:00
sergei
8f4430e795
* tcg.translate_register: check that reg.allocator is not nil before calling its method (in case of "assembler nostackframe" function returning an x87 float compiler tries to translate NR_ST which is used for function result).
...
* tcg.a_reg_dealloc: ignore NR_NO, prevents creating useless deallocations of NR_DEFAULTFLAGS on MIPS targets which have NR_DEFAULTFLAGS=NR_NO.
git-svn-id: trunk@29242 -
2014-12-10 07:13:14 +00:00
svenbarth
e2c546b26f
Regenerate msg*.inc files
...
git-svn-id: trunk@29239 -
2014-12-09 21:20:05 +00:00
svenbarth
e614914016
Fix a grammatical error in warning asmr_w_global_access_without_got
...
git-svn-id: trunk@29238 -
2014-12-09 21:19:21 +00:00
marco
2578514853
* first dragonfly patch (existing most). Mantis #27091
...
git-svn-id: trunk@29213 -
2014-12-07 20:27:02 +00:00
florian
25e19f27a0
+ write name of missing feature in error message
...
git-svn-id: trunk@29211 -
2014-12-07 18:20:56 +00:00
nickysn
a9e1419ee3
* extracted the pass 1 handling of inc/dec to a virtual method first_IncDec
...
git-svn-id: trunk@29210 -
2014-12-06 21:14:31 +00:00
Jeppe Johansen
3bc1db9612
Fixed breakage in the ARM peephole optimizer indirectly brought to light by r29189.
...
git-svn-id: trunk@29191 -
2014-12-01 14:39:40 +00:00
Jeppe Johansen
d04e988ff1
Make sure optimizer don't generate invalid assembler forms (LDRD and STRD).
...
git-svn-id: trunk@29189 -
2014-11-30 17:34:37 +00:00
svenbarth
9611c3df52
Fix for Mantis #25606 .
...
pexpr.pas, postfixoperators:
* try_type_helper: also allow type helpers for block type bt_const
+ added test
git-svn-id: trunk@29176 -
2014-11-28 22:06:10 +00:00
svenbarth
9f138fd659
Fix for Mantis #26022 .
...
globals.pas:
* enable type helpers by default for mode Delphi and DelphiUnicode
git-svn-id: trunk@29173 -
2014-11-28 16:39:12 +00:00
svenbarth
fa1bc0757d
Fix for Mantis #26922 .
...
pgenutil.pas, specialization_init:
* don't push the localsymtable if the unit does not have one available
+ added test (needs manual execution though... :/ )
git-svn-id: trunk@29172 -
2014-11-28 16:35:28 +00:00
pierre
3506767e8d
Generate mimnimal DWARF debug information for non-multithreaded thread variables
...
git-svn-id: trunk@29150 -
2014-11-26 09:59:13 +00:00
florian
ce96980f39
* updates to German message files by Karl-Michael Schindler, resolves #27061
...
git-svn-id: trunk@29148 -
2014-11-25 19:07:23 +00:00
pierre
5c48eb2d96
Fix problem in handling of tf_pic_default
...
git-svn-id: trunk@29140 -
2014-11-23 22:05:42 +00:00
florian
854fa1d4b9
* force advanced records into memory when they are used as self, resolves #26075
...
git-svn-id: trunk@29139 -
2014-11-23 22:05:40 +00:00
pierre
016666c70f
Use pic code by default for x86_64-openbsd
...
git-svn-id: trunk@29138 -
2014-11-23 22:04:30 +00:00
pierre
82b99d09bd
Add tf_smartlink_sections for i386-bsd target
...
git-svn-id: trunk@29137 -
2014-11-23 22:01:25 +00:00
svenbarth
2288df9fcf
Fix for Mantis #27073 . The -vx option is not only for Win32, but in fact for information about tool invocation on all platforms.
...
git-svn-id: trunk@29129 -
2014-11-23 20:46:45 +00:00