Commit Graph

27543 Commits

Author SHA1 Message Date
Jonas Maebe
2319d8c3ce * fixed WideStringToUCS4String and UCS4StringToWideString for code points
requiring surrogate pairs in utf-16 + test

git-svn-id: trunk@9391 -
2007-12-05 13:05:09 +00:00
michael
1ab5e28f75 * Fixed TFPDataDictionary.findfielddef
git-svn-id: trunk@9390 -
2007-12-04 15:05:14 +00:00
michael
4404a27428 * Initial implementation
git-svn-id: trunk@9389 -
2007-12-04 15:04:21 +00:00
michael
39e8141f89 * Patch from Giulio Bernardi to allow int64 support in TParser
git-svn-id: trunk@9388 -
2007-12-04 13:02:24 +00:00
florian
891ce34513 * preparations for unicodestring support in the rtl
git-svn-id: trunk@9386 -
2007-12-02 22:33:56 +00:00
florian
57acf67659 + constant unicodestrings
git-svn-id: trunk@9385 -
2007-12-02 20:43:08 +00:00
peter
6ed3d91989 * CompareText for shortstrings added
* optimize CompareText
  * use CompareText for case-insenstive compares in the RTL
  patches from Sergei Gorelkin

git-svn-id: trunk@9384 -
2007-12-02 18:36:20 +00:00
peter
6b06d551a1 * don't fail on -Cg- for platforms that do not support PIC
git-svn-id: trunk@9383 -
2007-12-02 18:29:27 +00:00
florian
5c96c4a671 + first part of support for an unicodestring type
git-svn-id: trunk@9382 -
2007-12-02 16:39:13 +00:00
Jonas Maebe
154601b41d * don't handle dynamic arrays using fpc_copy_proc(), because it
takes the address of its parameters and a dynamic array can
    be in a register (e.g. as function result, mantis #10320)

git-svn-id: trunk@9381 -
2007-12-02 15:58:48 +00:00
daniel
34d2cf6b4f * Use zerror rather than hardcoded error table.
git-svn-id: trunk@9380 -
2007-12-02 11:34:11 +00:00
Jonas Maebe
95f00eb633 * fixed x86_64 and non-darwin i386 GOT/GOTPCREL parsing after r9366
(I put that code in a separate method because it appeared in two
     places, but in one of the two places it was buggy and apparently
     never triggered, and I copied that part...)

git-svn-id: trunk@9379 -
2007-12-02 11:13:51 +00:00
daniel
190ec54d73 * Convert error messages to resourcestrings.
git-svn-id: trunk@9378 -
2007-12-02 10:35:46 +00:00
daniel
10796b2d84 * Reset resets stream to beginning to zstream, not beginning of file.
* Readpng resets source stream to start of zstream before creating
    Tdecompressionstream, rather than seek the decompression stream.

git-svn-id: trunk@9377 -
2007-12-02 09:51:19 +00:00
sekelsenmat
38048fd073 Small fix for symbian arm target.
git-svn-id: trunk@9376 -
2007-12-02 08:27:18 +00:00
daniel
00e8db2ab6 * Should use Edecompressionerror in Tdecompresionstream.
git-svn-id: trunk@9372 -
2007-12-01 22:03:53 +00:00
Jonas Maebe
5196db1ac3 * fixed low(set)/high(set) after previous changes + test
git-svn-id: trunk@9371 -
2007-12-01 17:16:33 +00:00
Jonas Maebe
61522d00a2 * fixed tests now that i386 assembler code is checked for correct PIC
usage in case PIC generation is on (some by adding PIC-versions of
    the assembler code, most by adding -Cg- to the options to be used).

    Note: the Intel assembler reader does not yet support the Delphi
    PIC construct, so tests with that (like test/tasmread and test/tcg1)
    do not work with -Cg on non-Darwin (Darwin needs a different PIC
    construct)

git-svn-id: trunk@9370 -
2007-12-01 14:34:50 +00:00
Jonas Maebe
f1f1f1c7cd + tests for wrong relsymbol usage
git-svn-id: trunk@9369 -
2007-12-01 14:27:45 +00:00
Jonas Maebe
527190a875 + relsymbol support for intel asm reader
git-svn-id: trunk@9368 -
2007-12-01 14:26:24 +00:00
Jonas Maebe
3f57d681e1 * check that not more than one relsymbol is used
git-svn-id: trunk@9367 -
2007-12-01 14:26:06 +00:00
Jonas Maebe
df2980f0c0 + relsym support
* give an error message when using @GOT in darwin/i386 assembler code
    (have to use a relsym instead)

git-svn-id: trunk@9366 -
2007-12-01 11:59:37 +00:00
Jonas Maebe
46e1bec6de * forgot to commit in previous revision
git-svn-id: trunk@9365 -
2007-12-01 11:53:50 +00:00
Jonas Maebe
18eb495d0f * give a regular error message instead of an internal error on x86
when using non-PIC references in assembler code when the compiler
    is configured to generate PIC code (on ppc, sparc and arm, no
    error message is given at all currently)

git-svn-id: trunk@9364 -
2007-12-01 11:28:15 +00:00
Jonas Maebe
feec2a74f2 * fixed crashes with length(pchar) and length(pwidechar) after
r9360-r9361

git-svn-id: trunk@9363 -
2007-12-01 10:38:22 +00:00
daniel
0d744e656b * Fix compression bug.
+ Allow random seeks through compressed file.

git-svn-id: trunk@9362 -
2007-12-01 10:13:42 +00:00
Jonas Maebe
1380a64b1e + simplify support for inline nodes (needed for inlining, because
otherwise you get internalerrors, e.g. when an assigned() expression
    becomes constant)
  * fixed length for constant strings in case of multi/single byte string
    conversions
  * fixed memory leak in constant evaluation of in_abs_long

git-svn-id: trunk@9361 -
2007-11-30 23:47:49 +00:00
Jonas Maebe
aaa484aa59 * removed goto's from tinlinenode.pass_typecheck and removed some other
old no longer needed code from it

git-svn-id: trunk@9360 -
2007-11-30 20:47:38 +00:00
Jonas Maebe
b076df0214 * variants depends on math
git-svn-id: trunk@9358 -
2007-11-30 17:57:39 +00:00
Jonas Maebe
bbca8ee012 * perform 32x32 to 64 multiplication in two more situations (u8bit and
u16bit can be converted to s32bit without any problems)

git-svn-id: trunk@9357 -
2007-11-30 17:55:20 +00:00
peter
4affeef5ee * basic work for unit dir dependencies, no use of * anymore, becuase that
gives problems with moved units
  * cleanup of defaults class and removed some not needed helpers

git-svn-id: trunk@9356 -
2007-11-30 00:45:44 +00:00
peter
f3b26a94fe * stop when fpmake fails
git-svn-id: trunk@9355 -
2007-11-30 00:15:50 +00:00
joost
cc014d6a65 * Implemented RedirectOnError
git-svn-id: trunk@9354 -
2007-11-29 23:06:55 +00:00
Jonas Maebe
6c536dab3e * added several missing make_simple_ref() calls
* removed addr_pic again for darwin, as you have to explicitly code
    the relative address using a relsym instead of using an assembler
    directive like @GOT there

git-svn-id: trunk@9353 -
2007-11-29 22:06:14 +00:00
Jonas Maebe
5a7809394e * fixed addr_pic check (symbol-relsymbol is also always
position-independent)

git-svn-id: trunk@9352 -
2007-11-29 21:50:01 +00:00
peter
cbac667753 * check for eax,edx,ecx,ebx that support 8,16 bit registers in shortint add/sub peephole
and update register size of substructor

git-svn-id: trunk@9351 -
2007-11-29 21:16:32 +00:00
peter
dbba46c0e4 * set addr_pic
git-svn-id: trunk@9350 -
2007-11-29 21:15:22 +00:00
peter
f0e804beb7 * typecast fix
git-svn-id: trunk@9349 -
2007-11-29 21:15:08 +00:00
peter
95772c5cd3 * remove $ifdef extedbug for pic address check
git-svn-id: trunk@9348 -
2007-11-29 21:14:47 +00:00
Jonas Maebe
96180029b2 * perform 4 instead of 8 byte copies at a time if source or dest is
unaligned
  * use integer instead of floating point for 8 byte copies because the
    integer unit has lower latency

git-svn-id: trunk@9347 -
2007-11-29 17:18:52 +00:00
Jonas Maebe
bc545b077f - removed internalerror in case a subsetref value is loaded on a cpu
which requires proper alignment (they have to support unaligned accesses
    in their a_load_*_* routines)

git-svn-id: trunk@9346 -
2007-11-29 12:59:05 +00:00
Jonas Maebe
31764a0e3b + unaligned support in a_load_reg_ref and a_load_ref_reg for ppc64
(only needs it in case a 64 bit value is loaded from an address
     with alignment < 4 bytes)

git-svn-id: trunk@9345 -
2007-11-29 12:56:31 +00:00
yury
99a8012472 * Allow using constants in {$IF } directive in OBJFPC mode.
* Define FPC_OBJFPC_EXTENDED_IF to allow to test if this feature can be safely used.

git-svn-id: trunk@9342 -
2007-11-28 00:07:18 +00:00
yury
a477a3781a * Added support of HIGH() function in {$IF } preprocessor directive. Delphi 7 supports HIGH() there.
git-svn-id: trunk@9341 -
2007-11-27 23:58:53 +00:00
micha
83285b3418 tdbf: fix compilation for wince: it has no OemToCharBuff
git-svn-id: trunk@9339 -
2007-11-27 20:54:51 +00:00
marco
3e1eba1745 * logon32 constants expanded #10280
git-svn-id: trunk@9338 -
2007-11-27 15:37:23 +00:00
Jonas Maebe
2a767fc893 * fixed powerpc32 compilation after r9331
git-svn-id: trunk@9336 -
2007-11-26 11:14:07 +00:00
Jonas Maebe
26930be303 * fixed non-x86 compilation after r9333
git-svn-id: trunk@9335 -
2007-11-26 11:13:42 +00:00
florian
d08abbca46 * forgotten commit
git-svn-id: trunk@9334 -
2007-11-25 20:49:57 +00:00
florian
fb8bbd5ff0 + inline abs(<longint>) on x86
git-svn-id: trunk@9333 -
2007-11-25 18:54:40 +00:00