Jonas Maebe
e34a16d1f1
* change rtti_mangledname resultdef into TSymStr
...
git-svn-id: trunk@31245 -
2015-07-30 16:57:45 +00:00
Jeppe Johansen
ffe67a93b4
Fix is_calljmp to include call instructions. This was breaking some optimizations previously.
...
Add debug messages to peephole optimizations and add some extra optimizations.
git-svn-id: trunk@31244 -
2015-07-30 06:29:21 +00:00
lacak
6f3da41769
fcl-db: sdfdataset: Added support for reading of CSV files, which have embedded CRLF between double-quotes (Added TSDFStringList) + test.
...
git-svn-id: trunk@31243 -
2015-07-30 05:49:05 +00:00
Jeppe Johansen
55669f62b1
Added most AVR controllers.
...
Made absolutevarsym use PUint instead of AWord for its offset to fix range errors.
git-svn-id: trunk@31242 -
2015-07-29 21:01:21 +00:00
florian
ee89e99189
* correctly write an error if one tries to implement a method introduced in a generic in a specialization of the generic, resolves issue #23169
...
git-svn-id: trunk@31241 -
2015-07-28 21:16:47 +00:00
joost
a67a35c498
* Added the ability to add fpmake as a target in a Makefile.fpc file. This way
...
there is no special need anymore for complete scripts in the Makefile.fpc
to call fpmake. And it is now possible to combine other targets with a
fpmake-target.
git-svn-id: trunk@31240 -
2015-07-28 09:52:19 +00:00
florian
d014572b8e
* do not use an extra register, if CPC does a comparison with 0,
...
this was previously "fixed" by the peephole optimizer, but this increased
register pressure
git-svn-id: trunk@31239 -
2015-07-27 19:49:05 +00:00
florian
df999735f3
* use R1 in comparisons if left=0 instead of loading 0 into (a) register(s)
...
git-svn-id: trunk@31238 -
2015-07-27 19:49:03 +00:00
florian
42ea874bb1
* avr version corrected for several controllers
...
git-svn-id: trunk@31237 -
2015-07-27 19:49:02 +00:00
florian
4d3552943d
* correctly write OUTPUT_ARCH to the linker script, resolves issue #28395
...
git-svn-id: trunk@31236 -
2015-07-27 19:49:00 +00:00
michael
98e70ae3e6
* Fix GetModule, cause of wrong class tree
...
git-svn-id: trunk@31235 -
2015-07-26 11:40:28 +00:00
michael
722fdea993
* Improved testunit coverage
...
git-svn-id: trunk@31234 -
2015-07-26 08:31:28 +00:00
michael
a32160131b
* Add backwards compatibility lookup for operators
...
git-svn-id: trunk@31233 -
2015-07-26 08:11:06 +00:00
michael
798192ba70
* Better operator declaration
...
git-svn-id: trunk@31232 -
2015-07-26 08:10:45 +00:00
michael
a910bbc3a7
* Resolve operators at the end. The name is corrected after the node is created
...
git-svn-id: trunk@31231 -
2015-07-26 08:09:56 +00:00
michael
1c5da41b48
* Warn-no-node correctly passed on
...
git-svn-id: trunk@31230 -
2015-07-26 08:09:11 +00:00
michael
66f4d0bc4e
* Handle consts in records
...
git-svn-id: trunk@31229 -
2015-07-26 08:05:34 +00:00
michael
07c26c1754
* Change name handling for operators
...
git-svn-id: trunk@31228 -
2015-07-26 08:05:12 +00:00
michael
e4cd8565ae
* Parse operators better
...
git-svn-id: trunk@31226 -
2015-07-24 08:52:34 +00:00
lacak
3d6a6512ad
fcl-db: odbc: add support for stIndexes for database metadata retrieval SetSchemaInfo()
...
git-svn-id: trunk@31225 -
2015-07-24 05:38:26 +00:00
michael
8600940c26
* Initialize and finalize
...
git-svn-id: trunk@31224 -
2015-07-23 18:52:33 +00:00
Károly Balogh
eb3bd4648c
amicommon: actually, not all filesystems (FTPMount, for example) support the ExamineFH method, so fall back to double-seek in that case
...
git-svn-id: trunk@31223 -
2015-07-23 18:43:37 +00:00
marco
4e6f673a6d
* patch from #27919 , enabling resources for gba, fixing fcl-base build.
...
git-svn-id: trunk@31221 -
2015-07-23 11:32:07 +00:00
lacak
61c451b391
fcl-db: mysql: add MySQL57Connection. Requires rev.31218.
...
(Tested with MySQL Server 5.7.7 RC)
git-svn-id: trunk@31220 -
2015-07-23 10:27:29 +00:00
florian
40eec2f249
* fix clinfo.pp for 64 Bit targets, patch by Thaddy de Koning, resolves #28405
...
git-svn-id: trunk@31219 -
2015-07-22 19:54:07 +00:00
michael
4442ecc863
* Added MySQL 5.7 header translation from Laco (bug ID 28417)
...
git-svn-id: trunk@31218 -
2015-07-22 18:59:41 +00:00
lacak
433d0ce4f6
fcl-db: sqlite: always call InitializeSQLite to properly increment library loading/unloading ref-counting. Regression introduced in rev.27342. Bug #28391
...
git-svn-id: trunk@31215 -
2015-07-16 08:03:38 +00:00
pierre
dc06f85b58
Set ALLOW_WARNINGSS to 1 for m68k and avr compiler to allow successful fullinstall completion
...
git-svn-id: trunk@31214 -
2015-07-15 15:27:27 +00:00
pierre
56859175c9
Add support for DragonFly OS
...
git-svn-id: trunk@31213 -
2015-07-14 22:05:34 +00:00
pierre
780c54c8b4
Add support for DragonFly OS
...
git-svn-id: trunk@31212 -
2015-07-14 22:05:03 +00:00
pierre
1bfef577e6
Add DragonFly code
...
git-svn-id: trunk@31211 -
2015-07-14 22:03:13 +00:00
pierre
014d2f805d
Use /libexec/ld-elf.so.2 as dynamic linker for DragonFly OS
...
git-svn-id: trunk@31210 -
2015-07-14 21:59:23 +00:00
pierre
f08fa883e2
Pipe syscall for DragonFly also uses EAX:EDX for result, like FreeBSD
...
git-svn-id: trunk@31209 -
2015-07-14 21:58:27 +00:00
pierre
b67b407d2d
Add call to _init_tls and _rtld_call_init functions for x86_64 DragonFly target startup
...
git-svn-id: trunk@31208 -
2015-07-14 21:56:55 +00:00
pierre
0c011c9313
Add DragonFly specific OS_XXX defines
...
git-svn-id: trunk@31207 -
2015-07-14 21:54:19 +00:00
michael
d900f4a29f
* Added support for class methods/properties in records
...
git-svn-id: trunk@31205 -
2015-07-12 07:25:08 +00:00
pierre
960a72f821
Use AnsiString and sysutils GetEnvironmentVariable function to avoid truncation of PATH to 255 chars
...
git-svn-id: trunk@31202 -
2015-07-11 13:59:06 +00:00
Jonas Maebe
9118146bc1
* ensure that managed out-parameters are processed before any other
...
parameters:
1) since they are finalised on the caller side, if that same value
is passed as a value parameter as well and its reference count
was 1, then the value parameter will contain an invalid pointer
2) since finalisation involves a call, for optimal code generation
purposes they should also be evaluated first
(mantis #28279 , #28390 )
git-svn-id: trunk@31201 -
2015-07-10 22:04:35 +00:00
lacak
a2b7b9cd6e
fcl-db: odbc: experimental support for XML and sql_variant SQL Server data types
...
git-svn-id: trunk@31200 -
2015-07-08 13:00:59 +00:00
Jonas Maebe
5f21d6df93
* enable -godwarfsets by default
...
git-svn-id: trunk@31199 -
2015-07-07 17:12:31 +00:00
Jonas Maebe
945fd4fcf5
* wait till the end of typecheckpass before we load a call context's self
...
parameter instead of immediately doing it in the constructor of the call
node, and then only create it if we actually need it.
It was previously created in the call node constructor because it needs to be
done before pass_1 (which is where it is actually used) due to pass_1 possibly
being performed in the context of inlining (and then a wrong self parameter
may be found, or none at all), and it was done unconditionally because at that
point we don't know yet whether or not a self parameter will be necessary (as
we haven't resolved the overloads/procdef yet).
The problem with this is that if we use the parentfpstruct way of handling
accesses to outer scope locals/parameters, we need to know all locals/
parameters that will be accessed from nested routines after typecheckpass,
otherwise we get crashes. The problem was that if a call to an RTL routine was
generated by the compiler in a routine nested inside a method during pass_1,
and this nested routine itself did not access self of the method (so self was
not added to its parentfpstruct during the typecheckpass), then the
unconditional reference to self when creating the call caused a compiler
crash (introduced in r30908)
git-svn-id: trunk@31197 -
2015-07-07 16:34:14 +00:00
Jonas Maebe
5d15a28e75
- reverted workaround from r15939 that hasn't been necessary since FPC 2.6.0,
...
since that version already shiped with GNU AS 2.21 (mantis #17337 )
git-svn-id: trunk@31196 -
2015-07-06 08:05:37 +00:00
florian
ba1297b1ab
+ provide also 8 and 16 bit div/mod helper
...
* tmoddivnode.first_moddivint does not force a 32 bit helper, the used helper depends now on the resultdef type set by tmoddivnode.pass_typecheck
git-svn-id: trunk@31195 -
2015-07-05 20:16:50 +00:00
florian
cf64e05c6f
* use generic mod/div code for avr
...
git-svn-id: trunk@31194 -
2015-07-05 17:05:43 +00:00
Jonas Maebe
af2c7bf00f
* don't perform CSE on typeconversion nodes inserted for absolute
...
references, or anything below them (mantis #27210 )
git-svn-id: trunk@31193 -
2015-07-04 22:28:31 +00:00
Jonas Maebe
1bcc276dcf
* remove implicit typecast to extended automatically inserted for trunc/round
...
(due to the declaration in the system unit) on x86_64 if this allows us
to use SSE code instead (mantis #28366 )
git-svn-id: trunk@31192 -
2015-07-03 21:01:18 +00:00
Jonas Maebe
fa1ac2515e
* don't look for overloaded operators in case of internally generated
...
type conversions (mantis #28375 )
git-svn-id: trunk@31191 -
2015-07-03 20:19:48 +00:00
Jonas Maebe
ee87d3bba9
* fixed "case <string> of" with multiple labels for a single statement after
...
r30855 (mantis #28372 )
git-svn-id: trunk@31190 -
2015-07-03 20:04:25 +00:00
Jonas Maebe
e9d2eb6cff
* fixed a_load_reg_reg() when storing an array/record to another
...
array/record type (can happen for parameters/function results
that got a different type for ABI reasons)
git-svn-id: trunk@31189 -
2015-07-03 20:04:22 +00:00
Jonas Maebe
36e5291d94
* converted tcgguidconstnode.pass_generate_code to use the high level typed
...
constant builder
git-svn-id: trunk@31188 -
2015-07-03 20:04:18 +00:00