Jonas Maebe
0031e12bf3
* enable the code that determines the complexity of arguments to inline
...
routines to see through free type conversions (such as type conversions
inserted for absolute variables, like the 'result' variable)
git-svn-id: trunk@31490 -
2015-09-03 13:36:03 +00:00
Jonas Maebe
ee3f89246c
* assume that compilerprocs never capture the addresses of their arguments
...
git-svn-id: trunk@31489 -
2015-09-03 13:35:59 +00:00
Jonas Maebe
2b551d0241
* don't do anything in SetCodePage() if the requested code page is the same
...
as the current one, even if there are multiple references to the string
git-svn-id: trunk@31488 -
2015-09-03 13:35:55 +00:00
nickysn
92c831c3dd
* writing of omf section attributes in the NASM asm writer rewritten to use the
...
new functions in unit omfbase (also used by the internal asm)
git-svn-id: trunk@31487 -
2015-09-03 13:32:17 +00:00
nickysn
cc2e27b555
* the function which returns the alignment of omf sections moved to unit
...
omfbase, so it can be used by the nasm asm writer as well
git-svn-id: trunk@31486 -
2015-09-03 12:36:58 +00:00
nickysn
3abfa177c4
* initialization of stack and dwarf debug omf sections moved from
...
TOmfObjSection.create to TOmfObjData.createsection and is now based on the
section type (TAsmSectionType) instead of name (string)
git-svn-id: trunk@31485 -
2015-09-03 11:38:51 +00:00
nickysn
efef3882a0
* moved the code for determining whether an omf object section should
...
belong to group DGROUP to a function in unit omfbase (so it can be used in the
future by the nasm asm writer as well)
git-svn-id: trunk@31484 -
2015-09-02 16:11:02 +00:00
nickysn
2e6d462ff6
* omf segment class names moved to a const array in omfbase, so they can be used
...
(in the future) in the nasm asm writer as well
git-svn-id: trunk@31483 -
2015-09-02 14:37:20 +00:00
nickysn
4061628ffb
* the i8086-msdos default code segment (in near code memory models) renamed
...
'_TEXT'. This name is used in object modules, produced by Borland C and Open
Watcom.
git-svn-id: trunk@31482 -
2015-09-02 13:14:12 +00:00
nickysn
1a8e203bf5
* moved the omf section names constant to the omfbase unit and use it also in
...
the nasm asm writer when targeting i8086-msdos
git-svn-id: trunk@31481 -
2015-09-02 12:28:46 +00:00
Jonas Maebe
85403876cd
* fixed UCS4Decode() for #$ffff (patch by Inoussa OUEDRAOGO, mantis #28593 )
...
git-svn-id: trunk@31480 -
2015-09-02 12:10:45 +00:00
Jonas Maebe
5c5935346a
* explain why we may have to search for the uppercase version of a symbol in
...
tcallnode.createintern()
git-svn-id: trunk@31479 -
2015-09-02 09:54:06 +00:00
Jonas Maebe
fbacf9682f
* rename WinCE softfp compilerproc names to lowercase, needed since r31404
...
(mantis #28598 )
git-svn-id: trunk@31478 -
2015-09-02 09:54:02 +00:00
Jonas Maebe
675c02dd17
* don't call softfp compilerprocs in the implementation of others, but let
...
them be called implicitly by the compiler (these symbols are no longer
accessible from Pascal code since r31404)
git-svn-id: trunk@31477 -
2015-09-02 09:53:57 +00:00
sergei
5cfeaedd23
* Fixed copy&paste error introduced in r24398, resolves #28584 .
...
git-svn-id: trunk@31475 -
2015-09-01 14:06:02 +00:00
florian
c9b1df2c91
* the test $-1,%reg optimization shall be done not only if the cpu type is i386, but for the i386 compiler
...
git-svn-id: trunk@31474 -
2015-08-31 20:03:56 +00:00
florian
63f828d54e
* take care of nf_internal when doing range checking and inserting type conversions in tassignmentnode.pass_typecheck
...
git-svn-id: trunk@31473 -
2015-08-31 20:03:54 +00:00
florian
27828d41e7
* extended nodes which return true from is_const
...
git-svn-id: trunk@31472 -
2015-08-31 20:03:52 +00:00
florian
f00a55ae08
+ tinlinenode.createintern
...
* do not do range checking on constants created by pred/succ if these nodes are created internally
git-svn-id: trunk@31471 -
2015-08-31 20:03:51 +00:00
florian
049491a573
+ fold the constructs @<record type>(nil^).<field >) and @<record point>(nil)^.<field> used to get the offset of a field into a constant
...
git-svn-id: trunk@31470 -
2015-08-31 20:03:49 +00:00
florian
495b7181a8
+ write the value of a pointer constant node in printnodedata
...
git-svn-id: trunk@31469 -
2015-08-31 20:03:47 +00:00
michael
a8978361dd
* Fix signatures on all platforms
...
git-svn-id: trunk@31468 -
2015-08-31 19:36:15 +00:00
michael
154b9bdd11
* Correct signature of pos
...
git-svn-id: trunk@31467 -
2015-08-31 19:34:15 +00:00
Jonas Maebe
f374b81c12
* disabled ARM-specific code for smallset in-operations on big endian targets,
...
as it's also little endian-specific (mantis #28592 )
git-svn-id: trunk@31466 -
2015-08-31 13:06:42 +00:00
michael
a687cc1469
* Add tests for offset argument to pos
...
git-svn-id: trunk@31465 -
2015-08-31 13:06:14 +00:00
michael
8161c1135c
* Add offset to Pos functions, Delphi XE 8 compatible.
...
git-svn-id: trunk@31464 -
2015-08-31 13:05:37 +00:00
yury
130eba51ee
* pas2jni: Fixed code generation in case of duplicate method names in a class hierarchy.
...
git-svn-id: trunk@31463 -
2015-08-31 12:24:48 +00:00
michael
a4502a50d5
* Added TArray generic
...
git-svn-id: trunk@31462 -
2015-08-31 12:03:55 +00:00
michael
d3350b18ba
* Some Delphi XE8 compatibility types
...
git-svn-id: trunk@31461 -
2015-08-31 12:00:22 +00:00
Jonas Maebe
4f38317bd2
* fixed small linker script syntax error in r31459
...
git-svn-id: trunk@31460 -
2015-08-30 15:45:57 +00:00
Jonas Maebe
6d29ad44f7
* always use a minimal linker script when we are not using -T, so that the
...
chance of conflicts with the built-in linkerscript is minimised
o removed special case for AArch64 which that already
o check the diff without whitespace changes, most is indentation
git-svn-id: trunk@31459 -
2015-08-30 15:25:44 +00:00
Jonas Maebe
c27807ee63
* resolve formal/anonymous external classes before comparing parameters to
...
overloaded routines
git-svn-id: trunk@31458 -
2015-08-30 14:33:01 +00:00
Jonas Maebe
e720b44471
* expand the error message for when trying to use a formal class with an
...
explanation of what to do
git-svn-id: trunk@31457 -
2015-08-30 14:32:56 +00:00
Jonas Maebe
32c3f05522
+ peepholeoptimizations to remove swap instructions
...
git-svn-id: trunk@31456 -
2015-08-29 21:06:29 +00:00
Jonas Maebe
dde8e323e0
* insert swap instructions if it results in store/regdealloc/load
...
sequences
git-svn-id: trunk@31455 -
2015-08-29 21:06:26 +00:00
Jonas Maebe
51864b0458
* skip temp (de)allocs when looking for store/regdealloc/load and
...
regalloc/regdealloc sequences
git-svn-id: trunk@31454 -
2015-08-29 21:06:23 +00:00
Jonas Maebe
cd83bc35b6
* protect the -FM switch with "#ifndef VER2", to ensure that fpc.cfg can
...
be shared between FPC 2.x and FPC 3.x+
git-svn-id: trunk@31453 -
2015-08-29 15:54:25 +00:00
marco
3f1ad78fc2
* add t/psockaddr6 type aliases to sockets unit, mantis #28566
...
git-svn-id: trunk@31452 -
2015-08-29 15:45:02 +00:00
Jonas Maebe
6bb430e97c
* also use the ARM/EABI linker script when targeting armhf
...
git-svn-id: trunk@31451 -
2015-08-29 13:00:03 +00:00
Jonas Maebe
882421a3ad
* also use -T when cross-compiling a shared library using a sysroot on
...
Linux (we want to replace the entire built-in linker script in that case)
git-svn-id: trunk@31450 -
2015-08-29 12:26:12 +00:00
Jonas Maebe
e391a37b30
* add the sysrootpath to the path of the dynamic linker in the INPUT()
...
section for Linux
git-svn-id: trunk@31449 -
2015-08-29 12:26:08 +00:00
Jonas Maebe
8c8657e2d5
* base optimiser support for the JVM target
...
o jump threading only works for unconditional branches until now,
as conditional ones have limited offsets
git-svn-id: trunk@31448 -
2015-08-29 10:08:19 +00:00
Jonas Maebe
c3a7d76c68
* ait_jcatch should not be skipped by optimizers, as it does result in
...
control flow
git-svn-id: trunk@31447 -
2015-08-29 10:08:15 +00:00
Jonas Maebe
3f9f498e0d
- removed leftover alpha, ia64 and vis code
...
git-svn-id: trunk@31446 -
2015-08-28 22:31:29 +00:00
Jonas Maebe
bc62795f15
* removed no longer used simplify_ppu global
...
git-svn-id: trunk@31445 -
2015-08-28 22:31:24 +00:00
Jonas Maebe
21066ba3f3
* changed LinkTypeSetExplicitly from a global variable into a field of toption
...
git-svn-id: trunk@31444 -
2015-08-28 22:31:21 +00:00
Jonas Maebe
0d74e4f719
* changed paratargetdbg from a global variable into a field of toption
...
git-svn-id: trunk@31443 -
2015-08-28 22:31:17 +00:00
Jonas Maebe
84bd523867
* changed paratargetasm from a global variable into a field of toption
...
git-svn-id: trunk@31442 -
2015-08-28 22:31:12 +00:00
Jonas Maebe
13638d958d
* changed paratarget from a global variable into a field of toption
...
git-svn-id: trunk@31441 -
2015-08-28 22:31:08 +00:00
florian
590ec0f3e6
* more procedures excluded to avoid internalerrors on avr after the trgobj.conservative fix
...
git-svn-id: trunk@31440 -
2015-08-28 18:49:07 +00:00