Legolas
2503ac1d97
* Updated nds to devkitARM r33
...
git-svn-id: trunk@17843 -
2011-06-27 12:22:46 +00:00
florian
589d061c3d
* when comparing overridden methods, ignore hidden parameters because overridden methods does not
...
need to repeat a calling convention specifier so if the calling convention specifier
influences the hidden parameters, the methods are not considered equal, resolves #19159
git-svn-id: trunk@17832 -
2011-06-26 12:34:59 +00:00
florian
6e1d5e0aa0
* handle pointer+type param. correctly, resolves #19548
...
* convert exit(x) into result:=x; exit;, enables further optimizations in the future
git-svn-id: trunk@17829 -
2011-06-25 18:05:49 +00:00
sergei
7d99f95c45
* Always create a section before emitting data to current_asmdata.asmlists[al_typedconsts]. Without it, such data ends up in sections created elsewhere, creating very non-obvious dependencies on other parts of compiler.
...
git-svn-id: trunk@17816 -
2011-06-24 02:05:56 +00:00
florian
a6b2fcfe22
* fixes breakage of r17766, should resolve #19598
...
git-svn-id: trunk@17814 -
2011-06-23 21:30:40 +00:00
florian
8e7f39f176
* constant evaluation of ror/rol if they are internally handled, resolves #6300
...
* renamed rox_x_x to rox_x_y
git-svn-id: trunk@17810 -
2011-06-23 20:54:08 +00:00
florian
fda10ff098
* insert type conversions to the prototype type for internal procedures as well, rol/ror/sar and friends require the exact type
...
git-svn-id: trunk@17808 -
2011-06-23 20:50:47 +00:00
pierre
8a0ed92957
* Remove useless code for i386
...
git-svn-id: trunk@17806 -
2011-06-23 14:50:31 +00:00
pierre
239944f8d0
+ Use DLL name in assembler labels used to import DLL functions/variables
...
in Windows, Emx and OS2 targets.
This fixes test failures: test/library/tlib1b.pp and lib2b.pp
link unit TLinker.AddImportSymbol: Added symmangledname parameter.
ogbase unit TImportSymbol.Create: Add AMangledName parameter.
fmodule unit TModule.AddExternalImport: Add symmangledname parameter.
fppu unit: Also put mangled name string for imported symbol.
ppu unit: Increase PPUVersion
utils/ppudump.pp: Adapt to PPU change above.
systems/T_OS units: Use ImportSymbol.MangledName property to create
import libraries or .idata sections.
git-svn-id: trunk@17804 -
2011-06-23 11:38:57 +00:00
pierre
f220513821
+ Warning for possible library overloading
...
git-svn-id: trunk@17803 -
2011-06-23 08:28:49 +00:00
Jonas Maebe
19fb48dfa9
* prefer "any array" -> "open array" over "single element" -> "open array"
...
conversions, instead failing to choose the best overload (Delphi-compatible)
git-svn-id: trunk@17800 -
2011-06-22 19:32:28 +00:00
sergei
3dba3a0219
* Float constants must be pooled using their the actual type, not the mapped type of assembler instruction. Otherwise e.g. extended may be mixed up with cextended, because both are mapped to ait_real_80bit.
...
git-svn-id: trunk@17787 -
2011-06-22 02:57:07 +00:00
pierre
1a9f4ba314
* Improve ogbase linker script support, add warnings for unknown entries
...
git-svn-id: trunk@17784 -
2011-06-21 16:49:50 +00:00
pierre
33cb4b4a83
+ generic_cpu defines fro ppudump
...
git-svn-id: trunk@17779 -
2011-06-20 21:44:18 +00:00
pierre
1d8851f0eb
Use systems.inc include file
...
git-svn-id: trunk@17775 -
2011-06-20 15:17:47 +00:00
pierre
4729b76ad9
Added forgotten include file
...
git-svn-id: trunk@17774 -
2011-06-20 14:57:34 +00:00
pierre
83f100432c
+ Move enumration types uses in ppu files from systems.pas
...
into systems.inc include file for direct inclusion by utils/ppudump.pp
+ new generic/cpuinfo.pas unit to allow compilation of ppudump without any
CPU specific code.
* Modified utils/ppudump rule in utils Makefile.fpc
to use generic/cpuinfo unit by use of -dGENERIC_CPU
* globals unit changed to support GENERIC_CPU.
* utils/ppudump.pp changed to remove local enumeration types.
git-svn-id: trunk@17773 -
2011-06-20 14:16:57 +00:00
sergei
2f7c779fa4
* tmoddivnode.simplify: made result definitely assigned and removed local var
...
* tshlshrnode.simplify: likewise
git-svn-id: trunk@17770 -
2011-06-19 21:48:18 +00:00
sergei
1470d91ba1
* Optimized pooling of floating point and large set constants using hash tables.
...
git-svn-id: trunk@17769 -
2011-06-19 21:41:41 +00:00
florian
b00a610aec
* optimize andb/w const,reg andw/l const,reg sequences as well
...
git-svn-id: trunk@17766 -
2011-06-18 15:22:09 +00:00
florian
37b8b791d5
* overloaded versions of IsNan, resolves #14351
...
* prefer <ord> -> single over <ord> -> double/extended, this is delphi compatible
git-svn-id: trunk@17758 -
2011-06-14 20:38:51 +00:00
joost
499d6f78d1
* Fixed recipe commences before first target error when using GNU make version 3.82
...
git-svn-id: trunk@17757 -
2011-06-14 20:21:15 +00:00
florian
ce76ce8769
* fixed wrong tmpref usage as mentioned by Pierre on the mailing list
...
git-svn-id: trunk@17754 -
2011-06-14 18:48:22 +00:00
pierre
4850190663
* Change TImplementedInterface.GetCopy from a warning at compile time to an internalerror if called
...
git-svn-id: trunk@17752 -
2011-06-14 15:19:38 +00:00
pierre
e4bb241409
* Silence warning in MakeSharedLibrary
...
git-svn-id: trunk@17750 -
2011-06-14 12:37:27 +00:00
sergei
3eaf8df446
* Don't use hardcoded value for maxoutputlists
...
git-svn-id: trunk@17734 -
2011-06-13 07:11:56 +00:00
marco
90c47c5c86
* fix for renaming of type_interface_noguid (or so) to type_E_interface...
...
by Florian in r17722
git-svn-id: trunk@17731 -
2011-06-12 13:45:38 +00:00
florian
4f18a59b87
* fixes errore.msg file errors, resolves #19541
...
git-svn-id: trunk@17722 -
2011-06-11 21:21:59 +00:00
florian
60e16260e1
o adjust define handling to resolve #19519
...
* ensure that all defines are written when running the compiler with -va
* even if a define is defined/undefined, write a message if it is written again
git-svn-id: trunk@17714 -
2011-06-10 19:03:27 +00:00
Jonas Maebe
78c3e6b359
* always use crtbeginS.o/crtendS.o when generating PIC code, not just when
...
generating libraries for x86_64 (at least all Linux systems I checked
have the S-variants of those files) (mantis #19501 )
git-svn-id: trunk@17713 -
2011-06-10 14:17:20 +00:00
Jonas Maebe
a03a597374
* don't call assembler when using -s in combination with -ap (mantis #19401 )
...
git-svn-id: trunk@17712 -
2011-06-10 13:42:59 +00:00
Jonas Maebe
9f4f21baa1
* set the line information for the initialization of local variables with
...
their default value to the entrypos of the function, instead of the end
(mantis #19459 )
git-svn-id: trunk@17711 -
2011-06-10 12:34:33 +00:00
sergei
19c8000056
64-bit masm writer:
...
* fixed writing rip-relative references
* use correct name to close the last section
git-svn-id: trunk@17710 -
2011-06-10 03:47:13 +00:00
sergei
d4b2998e07
* Another attempt to fix x86_64 stack frame calculation, tested better this time.
...
git-svn-id: trunk@17709 -
2011-06-10 03:41:33 +00:00
sergei
c40b8d92c7
* Revert r17695 because it breaks cycling.
...
git-svn-id: trunk@17698 -
2011-06-08 19:19:24 +00:00
sergei
318a55b96c
* x86_64-win64: fixed stack calculations so that 32-byte spilling area is only included once and only for non-leaf procedures (it was included twice with -O- and 3 times with -O2, wasting large amounts of stack memory).
...
git-svn-id: trunk@17695 -
2011-06-08 14:46:22 +00:00
florian
81bd7867b3
* it makes no sense to search the windows dirs for dlls when cross compiling
...
git-svn-id: trunk@17687 -
2011-06-07 19:24:53 +00:00
pierre
09e9d922c7
* Reset F to NIL after freeing in tempclose
...
git-svn-id: trunk@17683 -
2011-06-07 16:10:25 +00:00
pierre
82ffdb48c9
* Fix tppufile.tempopen method needed for go32v2 cycle
...
git-svn-id: trunk@17674 -
2011-06-06 16:11:19 +00:00
florian
449c20ce63
* moved pic helpers into system unit, resolves #8119
...
git-svn-id: trunk@17669 -
2011-06-05 21:16:11 +00:00
florian
2f2c3ea545
* ignore 0 for code alignment, makes broken tests by r17659 working again
...
git-svn-id: trunk@17668 -
2011-06-05 21:12:26 +00:00
florian
0b9099f13f
* fixes mistake in r17664
...
git-svn-id: trunk@17667 -
2011-06-05 17:51:09 +00:00
sergei
354d0520b7
+ x86 assembler: fixed MOVABS instruction (it is a x86_64-only subset of MOV with 8-byte immediates/offsets) and same-form encodings of MOV instruction.
...
git-svn-id: trunk@17666 -
2011-06-05 17:32:18 +00:00
florian
ebc7a10954
* synchronized -Wxxxxx handling in options.pas and help screen, resolves #19400
...
* limited -Wxxxxx options to the targets they apply to
git-svn-id: trunk@17664 -
2011-06-05 15:39:44 +00:00
florian
33de8c8336
* fix potential range check error in cfileutl, should resolve #19405
...
git-svn-id: trunk@17660 -
2011-06-04 22:14:55 +00:00
florian
93e53e1990
* allow also smaller values for code alignment parameters than the current one, resolves #19463
...
* limit code alignment parameters to power of 2 up to 256
* give an error for an invalid code alignment directive
git-svn-id: trunk@17659 -
2011-06-04 20:56:15 +00:00
florian
69e7d8b02f
* generate correct PIC in tcg386.a_loadaddr_ref_cgpara, resolves #19464
...
git-svn-id: trunk@17657 -
2011-06-04 16:57:45 +00:00
Jonas Maebe
7173b9dfed
* fixed (harmless) range check errors
...
git-svn-id: trunk@17643 -
2011-06-02 20:07:06 +00:00
sergei
9608c4eabe
* Interface wrappers must be global when linking smart, Mantis #19462 . Other targets already have this condition in place.
...
git-svn-id: trunk@17631 -
2011-06-02 10:49:28 +00:00
joost
45bc3fcae0
* Enabled safecall on x86_64-linux
...
git-svn-id: trunk@17629 -
2011-06-02 10:43:18 +00:00