peter
89eddc7504
* check for valid reference before parsing extra constant values
...
git-svn-id: trunk@8154 -
2007-07-23 20:16:23 +00:00
peter
703b8855cc
* allow local procsym in delphi mode
...
git-svn-id: trunk@8148 -
2007-07-23 09:15:32 +00:00
florian
b6cca14944
* proper handling of dummy result node in dfa, resolves #8717 and #8079
...
+ tests
git-svn-id: trunk@8147 -
2007-07-23 08:57:31 +00:00
peter
ad4846a50e
* don't allow generics as parent classes
...
git-svn-id: trunk@8144 -
2007-07-22 23:10:24 +00:00
peter
8bd95f4dd4
* keep signess of orginal variable in shl/shr operation
...
git-svn-id: trunk@8143 -
2007-07-22 22:56:35 +00:00
peter
725f1d7176
* remove wrong $esle x86_64 causing uninitialized variable
...
git-svn-id: trunk@8141 -
2007-07-22 20:57:05 +00:00
peter
67e16340be
* revert r8118
...
git-svn-id: trunk@8139 -
2007-07-22 19:59:00 +00:00
peter
5e36a73b80
* create a new vmt entry also if return type differs
...
* search all parent classes for matching interface implementations
git-svn-id: trunk@8138 -
2007-07-22 19:47:55 +00:00
peter
98cc116dd2
* fix passing string to open array of string
...
git-svn-id: trunk@8137 -
2007-07-22 19:44:56 +00:00
florian
be6d2dd0f9
* reverted wrong commit in r8133
...
git-svn-id: trunk@8135 -
2007-07-22 17:00:51 +00:00
florian
447276c5bb
* Jcc reads the flags, this was not in the dat yet, resolves #9278
...
* disabled 4 ops variant of insertq for now
git-svn-id: trunk@8133 -
2007-07-22 16:40:44 +00:00
peter
f70a4a64a0
* swapendian for 2.0.x
...
git-svn-id: trunk@8132 -
2007-07-22 16:13:43 +00:00
daniel
5add416dab
* Fix mul opsize
...
git-svn-id: trunk@8131 -
2007-07-22 11:48:10 +00:00
daniel
6065bee1c2
* qword(-int64) can cause an overflow error in case of low(int64). Harmless, so
...
disable overflow checking around it.
git-svn-id: trunk@8124 -
2007-07-22 08:32:49 +00:00
florian
4b9669a081
* give proper error location if something is wrong with the type argument list, resolves #9112
...
git-svn-id: trunk@8122 -
2007-07-21 21:49:59 +00:00
daniel
21293f5818
+ Add common type integer promotion.
...
- {$intpromotion common_type} or -CIcommon_type switches to common type promotion.
- {$intpromotion native_integer} or -CIcommon_type switches to current behaviour.
- Default in tp mode is common_type, native_integer in other modes
- Compiler can cycle with -CIcommon_type
- Still needs checking on other architectures than i386
git-svn-id: trunk@8118 -
2007-07-21 19:16:24 +00:00
florian
fa2a2b0bd0
* generics without specialization can't be used as a type, resolves #9225
...
git-svn-id: trunk@8116 -
2007-07-21 17:39:49 +00:00
daniel
4c81c227fa
- Remove long2hex, replace by hexstr.
...
git-svn-id: trunk@8111 -
2007-07-21 10:29:09 +00:00
daniel
5ce54c6a20
+ For muln, don't load left operand in register unless necessary.
...
(mul supports memory operands).
git-svn-id: trunk@8110 -
2007-07-21 09:20:33 +00:00
Jonas Maebe
49a2084ea0
* fixed calling inline functions (with exit statements) from inside
...
finally blocks
* fixed the handling of function results of inlined functions with
exit statements
+ test for the above two issues and for bug fixed in r8091
* copy may_be_in_reg field inside ttempcreatenode.dogetcopy (allows
some more temps which were needlessly forced into memory to be in
registers)
git-svn-id: trunk@8108 -
2007-07-20 16:49:35 +00:00
Jonas Maebe
20dbda751a
* fixed sparc compilation after addr_lo/hi changes
...
git-svn-id: trunk@8107 -
2007-07-20 12:30:16 +00:00
michael
61dae2cf4f
* Patch from Ido Kanner to update translations
...
git-svn-id: trunk@8098 -
2007-07-18 21:12:15 +00:00
Jonas Maebe
1a522594ec
* fixed tonnode.getcopy crash in case there is no exception variable
...
git-svn-id: trunk@8091 -
2007-07-18 19:03:49 +00:00
Jonas Maebe
71193c0f2c
* fixed bootstrapping with 2.0.4
...
* fixed ppc64 compilation (by reintroducing a bogus ptrint warning, that
code really is correct)
git-svn-id: trunk@8090 -
2007-07-18 12:15:55 +00:00
joost
787b968e70
* Replaced "uname m" from which the output was not very consistent with "fpc -PP"
...
git-svn-id: trunk@8084 -
2007-07-17 17:39:35 +00:00
Jonas Maebe
28bab3fb4f
- removed some unused variables
...
* fixed some (harmless) ptrint warnings
- removed some commented code in agppcmpw
* added one missing field in a typed constant in cp1251
git-svn-id: trunk@8081 -
2007-07-17 13:57:15 +00:00
florian
2b2c6f7f53
* don't add empty symtables when specializing generics
...
git-svn-id: trunk@8066 -
2007-07-15 17:16:21 +00:00
daniel
a05d228679
- Remove IE from g_concatcopy again.
...
git-svn-id: trunk@8065 -
2007-07-15 16:15:13 +00:00
yury
3e60b4a8dd
* Don't optimize (eliminate) arm fpu move instruction if it performs float type conversion. It fixes tb0519.pp on arm-linux.
...
git-svn-id: trunk@8059 -
2007-07-14 21:52:15 +00:00
daniel
f0633187f4
+ Change constants in g_concatcopy to make the right decisions on x86_64.
...
* Fix move copy in g_concatcopy for x86_64.
git-svn-id: trunk@8058 -
2007-07-14 21:29:57 +00:00
daniel
4a3870eb12
* Fix bug #9261 .
...
git-svn-id: trunk@8056 -
2007-07-14 20:57:56 +00:00
tom_at_work
49b84c3116
* remove obsolete code
...
git-svn-id: trunk@8053 -
2007-07-14 19:18:15 +00:00
daniel
4f6eb50391
+ Internalerror if g_concatcopy is called with len=0.
...
git-svn-id: trunk@8052 -
2007-07-14 18:56:16 +00:00
yury
afdd053172
* fixed unary minus in softfloat mode (bug #8737 ).
...
git-svn-id: trunk@8047 -
2007-07-14 10:09:37 +00:00
yury
bd0cafd545
* fixed ARM stackframe optimization when float registers are used.
...
git-svn-id: trunk@8032 -
2007-07-12 21:55:34 +00:00
tom_at_work
1cc1d4ebf2
* use automatic ppc64/linux got/toc entry generation by the linker if possible - removes the need of some workarounds
...
git-svn-id: trunk@8031 -
2007-07-12 21:00:55 +00:00
yury
1782305ae2
* Completely fixed float constants in softfloat mode when compiler was compiled in hardfloat mode on arm-linux host.
...
git-svn-id: trunk@8015 -
2007-07-10 21:05:12 +00:00
Tomas Hajny
aadcefe08f
* correction for typo in licence information
...
git-svn-id: trunk@8014 -
2007-07-10 20:39:44 +00:00
Legolas
cdf4841517
* Changed .elf extension to .nef (Not Executable File) for intermediate file builds in the NDS compiler (used on no$gba debugger for symbol table)
...
* Added nds target to ppudump.pp
* Fixed rtl compilation for nds target
* Changes in prt09.as
git-svn-id: trunk@8002 -
2007-07-09 22:17:36 +00:00
yury
e14906c484
* Handle .fpc section by internal elf obj writer the same way as external assembler handles this section.
...
git-svn-id: trunk@8001 -
2007-07-09 22:05:08 +00:00
yury
fd6862acb9
* fixed debugging problem on arm-linux.
...
git-svn-id: trunk@7997 -
2007-07-09 21:17:07 +00:00
Almindor
7f548cf517
* adds amd64 to the list of uname -m possible results in samplecfg
...
git-svn-id: trunk@7996 -
2007-07-09 21:14:59 +00:00
Almindor
bfb7294e19
* exchange "arch" with "uname -m" in samplecfg to work on non-linux
...
git-svn-id: trunk@7995 -
2007-07-09 21:09:26 +00:00
yury
658853c139
* Initialize fpu regvars from staticsymtable by loading initial value from memory location.
...
git-svn-id: trunk@7988 -
2007-07-09 13:27:19 +00:00
tom_at_work
2d1f9b20a3
* merged trefaddr.addr_lo/addr_hi with trefaddr.addr_low/addr.high; some related bugfixing/cleanup
...
git-svn-id: trunk@7983 -
2007-07-08 20:50:58 +00:00
daniel
f31889df57
* Pass const params by pointer if calling convention<>register. This is
...
needed for the windows unit as Delphi compatibility requires const
parameters for some procedures and Delphi assumes parameters > 4 to be
passed as pointer.
git-svn-id: trunk@7982 -
2007-07-08 17:26:08 +00:00
daniel
20a804152d
* Don't assume pointers are 8 bytes.
...
git-svn-id: trunk@7981 -
2007-07-08 09:36:27 +00:00
yury
09fa6b5893
* Fixed Abs and Sqrt in hardfloat mode on arm.
...
git-svn-id: trunk@7980 -
2007-07-08 08:17:32 +00:00
daniel
44e07cd098
* Fix bug #9141 and pass const params <=16 in by value.
...
git-svn-id: trunk@7979 -
2007-07-07 21:01:46 +00:00
daniel
6e0a7bb0eb
* Nil constants that are type converted to a method procvar are now
...
properly converted. The conversion is done at runtime to generate
a two pointer memory reference as result location, something
which the code generator can handle very well, which minimizes
the chance of side effects.
git-svn-id: trunk@7978 -
2007-07-07 20:57:05 +00:00