Jonas Maebe
c71cb9dc69
* fixed null termination of cmdline (based on patch by C Western,
...
mantis #22742 ) -- that function seems like a good candidate to
put in a shared include file though
git-svn-id: trunk@22270 -
2012-08-30 21:30:31 +00:00
Jonas Maebe
8a4c12ab36
* include -Oofastmath in -O4
...
git-svn-id: trunk@22268 -
2012-08-30 08:00:33 +00:00
Jonas Maebe
01b5e2b6f6
* use the parsed node type for checking the validity of default parameter
...
values instead of a default based on the resulting constsym (more robust)
git-svn-id: trunk@22267 -
2012-08-29 16:09:13 +00:00
Jonas Maebe
ad054831bb
* save/restore itype and implementsgetter fields of timplementedinterface
...
to/from ppu, because it can be required while resolving type casts
(mantis #22741 )
git-svn-id: trunk@22266 -
2012-08-29 16:07:55 +00:00
pierre
c501e6db5f
Partial fix for bug report 22744
...
git-svn-id: trunk@22265 -
2012-08-29 14:35:06 +00:00
pierre
3c96d89a6b
Add test for bug regarding {$pop} next to a statement
...
git-svn-id: trunk@22264 -
2012-08-29 14:30:14 +00:00
pierre
f1687fe8a6
Do not include CPUMIPS32 in extradefines for mips/mipsel systems as it is added in options unit
...
Do not include MIPSEL in extradefines for system_mipsel_linux as this forbids cross-compilation
git-svn-id: trunk@22263 -
2012-08-28 13:51:29 +00:00
michael
441e059f32
* Changed ooChanged to ooChange, to be more consistent with tense in other values
...
git-svn-id: trunk@22262 -
2012-08-28 12:32:15 +00:00
michael
8d9f8e19c3
* remove use of ooCustom to avoid polluting custom use
...
git-svn-id: trunk@22261 -
2012-08-28 12:30:06 +00:00
michael
8a64893df6
* Forgot to commit
...
git-svn-id: trunk@22260 -
2012-08-28 07:20:42 +00:00
Mattias Gaertner
32d1c5444d
fpreadtiff: undo wrong fix
...
git-svn-id: trunk@22259 -
2012-08-27 20:16:38 +00:00
michael
445ec2672a
* TCollection.Exchange also needs to notify
...
git-svn-id: trunk@22258 -
2012-08-27 19:35:54 +00:00
michael
43be53351e
* Added observer support
...
git-svn-id: trunk@22257 -
2012-08-27 19:28:14 +00:00
Mattias Gaertner
e40505a998
fpreadtiff: fixed reading last byte of chunk
...
git-svn-id: trunk@22256 -
2012-08-27 16:54:43 +00:00
Jonas Maebe
33f5de990d
* fixed indentation
...
git-svn-id: trunk@22255 -
2012-08-26 21:04:51 +00:00
Jonas Maebe
f5de7e34d3
* only remove the calculation of unused parameters of inline routines if
...
they don't have explicit side-effects, and if -Oodeadvalues (part of -O4)
is active (because it can result in the removal of range check errors,
segmentation faults, etc)
git-svn-id: trunk@22254 -
2012-08-26 21:04:46 +00:00
Jonas Maebe
eeda54b7eb
* fixed copy-paste error in -O4 description
...
git-svn-id: trunk@22253 -
2012-08-26 21:04:40 +00:00
Jonas Maebe
2dbe48a76c
* extra "addr" parameters for get_caller_addr/frame (patch by
...
Jeppe Johansen, mantis #22727 )
git-svn-id: trunk@22252 -
2012-08-26 19:07:36 +00:00
Jonas Maebe
a080669771
* disabled arrayconstructorn,arrayconstructorrangen as cseinvariants
...
(fixes lazarus compilation)
git-svn-id: trunk@22251 -
2012-08-26 17:59:21 +00:00
Jonas Maebe
68d9e95120
* if the size of an operand is not explicitly forced in intel assembler
...
(e.g. via "dword ptr"), let the size of accessed fields in memory
expressions override the default size (mantis #18019 )
git-svn-id: trunk@22250 -
2012-08-26 17:05:31 +00:00
Jonas Maebe
198625af47
* fixed memory statistics after try_concat_free_chunk_forward() concatenated
...
some blocks, but the result was still not large enough to satisfy a
reallocmem call (mantis #14315 )
git-svn-id: trunk@22249 -
2012-08-26 15:29:44 +00:00
Jonas Maebe
193c7af57f
* print literal e/E in formatfloat if not followed by +/- (remaining part of
...
mantis #22290 )
git-svn-id: trunk@22248 -
2012-08-26 14:51:32 +00:00
Jonas Maebe
e073bf3008
* set destination codepage in DefaultUnicode2AnsiMove
...
git-svn-id: trunk@22247 -
2012-08-26 14:51:26 +00:00
Jonas Maebe
2be5c8b9af
* same change as in r22240 for darwin/ppc(64)
...
git-svn-id: trunk@22246 -
2012-08-26 08:58:48 +00:00
Jonas Maebe
d4eb2d7336
* fixed the conversion of 'UTF-8' to the corresponding code page number
...
(there's a dummy entry with code page 0 for UTF-8 in the table for
when 0 is searched, but when going from string to number that
entry has to be skipped so the real UTF-8 entry is used)
git-svn-id: trunk@22245 -
2012-08-26 08:58:42 +00:00
Jonas Maebe
17c495595c
* made variable public so got warning gets triggered
...
git-svn-id: trunk@22244 -
2012-08-25 21:32:38 +00:00
Jonas Maebe
4d0e4e1b56
* treat "[var + rip]" in intel assembler mode as addr_pic_no_got on x86-64
...
(mantis #22665 )
+ support "[var wrt ..gotpcrel]" nasm/yasm syntax in intel assembler mode
for GOT-relative accesses on x86-64, + give an error when trying to do
this on win64 (it doesn't have a GOT)
* moved code that give a warning when using GOT-relative accesses to
static data on x86-64 from the AT&T reader to rax86 so it's also
active for the Intel assembler reader
+ added warning when not using GOT-relative accesses (but plain
RIP-relative instead) to global data on non-Win64 x86-64
git-svn-id: trunk@22243 -
2012-08-25 15:12:49 +00:00
Jonas Maebe
2c43e084f0
* disabled "[reg].offset globalvar" pic syntax in intel assembler mode for
...
x86-64, because it does not specify whether the code should be got-based
or not
git-svn-id: trunk@22242 -
2012-08-25 15:12:44 +00:00
Jonas Maebe
289486346b
* factored out code to decide when an asmsym for a staticvarsym has to be
...
global, and no longer make it global for all symbols when smartlinking
is enabled on systems that use section-based smartlinking
git-svn-id: trunk@22241 -
2012-08-25 15:12:39 +00:00
Jonas Maebe
35c70a6c96
* copy the darwin got register to a new register when using it, so it
...
cannot get modified
git-svn-id: trunk@22240 -
2012-08-25 15:12:34 +00:00
Jonas Maebe
ab9d68ae3e
* always use RIP-relative addressing in x86-64 assembler code
...
* abort if there's a warning (warnings for wrong/dangerous pic
will be added in a later commit)
git-svn-id: trunk@22239 -
2012-08-25 15:12:24 +00:00
Mattias Gaertner
be41f296a0
fpreadtiff: fixed checking for code 4096 before add instead of after last add, bug #22558
...
git-svn-id: trunk@22238 -
2012-08-25 09:18:10 +00:00
florian
d327960994
* Don't build utils by default when cross building. FPC's build system is not made
...
for building installation packages for another host system as the current one
so it makes no sense to build utils for the target system. When cross compiling, the
goal is to build files to be able to develop on the current system for the target.
Building of utils can be forced by passing BUILDFULLNATIVE=1 to make
git-svn-id: trunk@22237 -
2012-08-24 21:18:06 +00:00
florian
a365ae3631
+ define BUILDFULLNATIVE and BUILDNATIVE for native builds
...
git-svn-id: trunk@22236 -
2012-08-24 21:15:28 +00:00
Jonas Maebe
da32d99b7e
* declare Sptr() and get_frame() as "nostackframe"
...
git-svn-id: trunk@22235 -
2012-08-24 18:49:33 +00:00
Jonas Maebe
f7dbe6d7a6
* use a different register constant for EIP and RIP (fixes external
...
assembler writers on x86-64 after r22181, the shift in positions
caused every occurrence of RIP to become EIP in the assembler code)
git-svn-id: trunk@22234 -
2012-08-24 18:49:17 +00:00
Jonas Maebe
eeb98ae2f8
* write objectdef fieldtypes in appenddef_object() instead of in
...
beforeappenddef() to prevent endless loops in certain circular
class reference situations (mantis #22527 )
git-svn-id: trunk@22233 -
2012-08-24 16:52:46 +00:00
joost
e17d1c9b37
* Support Interbase 7 and Firebird 3 boolean fields
...
* Minor optimization using local VSQLVar variable
Patch by Lacak2, mantis 22698
git-svn-id: trunk@22232 -
2012-08-24 15:56:37 +00:00
masta
d8af83d252
Introduce a version of MatchInstruction for multiple instructions
...
It is the same as the normal MatchInstruction function but supports to
be called with a set of TAsmOps instead of a single op.
git-svn-id: trunk@22231 -
2012-08-24 15:54:36 +00:00
florian
6b73bc45c5
* check constant for being a valid offset
...
git-svn-id: trunk@22230 -
2012-08-24 09:16:47 +00:00
florian
58a85e79ce
* set index register correctly * index register might not be changed
...
git-svn-id: trunk@22229 -
2012-08-24 09:16:38 +00:00
florian
245d8286d5
+ LookForPostindexedPattern
...
git-svn-id: trunk@22228 -
2012-08-24 09:16:26 +00:00
pierre
acfcb3d853
* Define slowcpu conditional for mips cpu, cuts execution time from 4 mins down to 20 secs
...
git-svn-id: trunk@22227 -
2012-08-24 07:47:00 +00:00
masta
012da673a8
Use MatchInstruction in OpCmp2OpS
...
MatchInstruction keeps the code a bit more readable and compact.
git-svn-id: trunk@22226 -
2012-08-23 23:08:26 +00:00
pierre
9ad6285fe2
* Fix 64-bit OP_ADD and OP_SUB operations (no overflow support yet)
...
git-svn-id: trunk@22225 -
2012-08-23 22:05:41 +00:00
florian
a016bc5ced
* white space change
...
git-svn-id: trunk@22224 -
2012-08-23 21:04:31 +00:00
florian
f2ccd6e400
* when doing the AddSubLdr2Ldr optimization check also if the source register of the add is modified before the load
...
git-svn-id: trunk@22223 -
2012-08-23 21:04:21 +00:00
florian
4e2de05667
* don't apply the AddSubLdr2Ldr optimization if the base register in the reference is used/modified during the ldr/str
...
git-svn-id: trunk@22222 -
2012-08-23 21:04:11 +00:00
florian
d89b742109
* apply Add/SubLdr2Ldr only if no condition flags are involved
...
git-svn-id: trunk@22221 -
2012-08-23 21:04:02 +00:00
florian
73d540e7b5
* unsigned byte ldr/str allow also an offset of max. +/-4095
...
git-svn-id: trunk@22220 -
2012-08-23 21:03:52 +00:00