Jonas Maebe
2e544bd8de
* smartlink dynamic libraries under Mac OS X (mantis #15984 )
...
git-svn-id: trunk@15011 -
2010-03-13 23:37:20 +00:00
Jonas Maebe
0cfc6e1cac
+ support for "univ" in macpas mode: a parameter modifier that allows
...
passing any value to that parameter which has the same size as the
parameter (it basically acts as if there is an explicit type conversion
to the parameter type around the value at the caller side). If a procvar
has an univ parameter, all procvars whose corresponding parameter
has the same size as that univ parameter are similarly compatible.
This transparent compatibility can however cause crashes in case of
of the procvars when one of the types is passed on the stack and the
other isn't (because then the called routine will a) load the parameter
from a wrong location and b) pop the wrong amount off of the stack at
then end). Therefore FPC will warn in most cases where this can happen.
(mantis #15777 )
git-svn-id: trunk@15010 -
2010-03-13 22:13:20 +00:00
paul
3cd29858ba
compiler, utils: pass tlb resources to fpcres
...
git-svn-id: trunk@15002 -
2010-03-11 03:01:24 +00:00
Jonas Maebe
43846ca8c9
* force always printing absolute paths when using -vb (mantis #15783 )
...
git-svn-id: trunk@15000 -
2010-03-10 10:04:51 +00:00
Jonas Maebe
88f5addd1c
* do not typecheck statements before checking whether they are valid,
...
because the associated simplifications can turn invalid statements
into valid statements (based on patch by Aleksa Todorovic, mantis
#15594 )
git-svn-id: trunk@14998 -
2010-03-09 21:13:22 +00:00
Jonas Maebe
db2655459c
* fixed 255 max path length assumptions left over from when the paths were
...
shortstrings (mentioned in mantis #15783 )
git-svn-id: trunk@14997 -
2010-03-09 19:44:07 +00:00
pierre
7c08e5cb57
* Fix solaris problem after commit rev 14971
...
git-svn-id: trunk@14974 -
2010-03-05 13:46:36 +00:00
Jonas Maebe
a7dca09535
* only refer to local symbols without GOT redirection on darwin/x86_64,
...
because on linux/x86_64
a) the resulting code crashes when using the internal assembler
b) refuses to link when using the external assembler
(and hence I don't know whether it's safe to do on other non-darwin
platforms either) -- fixes mantis #15889
git-svn-id: trunk@14971 -
2010-03-04 20:23:45 +00:00
Legolas
bc1bcf343e
* Updated NDS and GBA to devkitARM r28
...
* Updated libnds to 1.4.1
* Fixed NDS rtl according with last string handling changes
* Fixed nds audio examples
git-svn-id: trunk@14967 -
2010-03-02 21:56:41 +00:00
Jonas Maebe
77d5d9435b
* corrected detection of the start of variant parts of records
...
git-svn-id: trunk@14962 -
2010-03-01 19:16:00 +00:00
Jonas Maebe
e693b47234
* don't insert bogus vmt field in forward-defined classes
...
git-svn-id: trunk@14961 -
2010-03-01 14:57:14 +00:00
paul
e2fdfc426f
compiler: fix safecall result handling if it is placed to a register
...
git-svn-id: trunk@14952 -
2010-02-28 10:50:40 +00:00
paul
b884d568e1
compiler: fix 64bit safecall handling
...
git-svn-id: trunk@14949 -
2010-02-27 16:15:03 +00:00
paul
fcaac0ebe1
compiler,rtl - safecall handling:
...
- pass address to SafeCallException method(rtl needed a modification)
- improve code generation for regular safecall routines (not methods)
- improve test - check that passed exception and address are valid
git-svn-id: trunk@14946 -
2010-02-27 04:41:52 +00:00
paul
cf0a1b1af9
compiler: safecall exception handling:
...
- move safecall exception handling from codegenerator to generate_except_block method (which generates nodes)
- call SafeCallException for safecall methods which raises an exception
git-svn-id: trunk@14940 -
2010-02-26 10:17:24 +00:00
marco
bb385c385d
* translation updates from kms (Mantis 15849)
...
git-svn-id: trunk@14937 -
2010-02-26 09:01:09 +00:00
Jonas Maebe
8a1f272c6b
* de-tabbed
...
git-svn-id: trunk@14928 -
2010-02-19 17:19:50 +00:00
Jonas Maebe
cda17ad02a
* correctly set the expectloc for int_2_int type conversions of bitpacked
...
arrays (and some other, related constructs) (mantis #15789 )
git-svn-id: trunk@14927 -
2010-02-19 17:12:47 +00:00
Jonas Maebe
071bca7d93
* set expectloc in first_abs_long (mantis #15790 )
...
git-svn-id: trunk@14926 -
2010-02-19 16:46:46 +00:00
Jonas Maebe
fe5d0b0ef4
* fixed internalerror in case of dereferencing a loc_(c)subsetreg/ref
...
(mantis #15812 )
git-svn-id: trunk@14925 -
2010-02-19 16:26:36 +00:00
Jonas Maebe
0d57bba4c9
* fixed ARM and MIPS compilation after r14912
...
git-svn-id: trunk@14923 -
2010-02-18 21:19:17 +00:00
Jonas Maebe
23e517a81e
+ {$OV+/-} alias for {$Q+/-} in macpas mode for CodeWarrior compatibility
...
(patch by Adriaan van Os, mantis #15767 )
git-svn-id: trunk@14916 -
2010-02-14 21:51:45 +00:00
Jonas Maebe
78b9820e11
* support record fields separated by commas instead of semicolons in typed
...
constant record definitions in MacPas mode (patch by Adriaan van Os,
mantis #15764 )
git-svn-id: trunk@14915 -
2010-02-14 14:33:30 +00:00
Jonas Maebe
1b7dacfd1c
* make {$align powerpc} an alias for {$align power} (patch by
...
Adriaan van Os, mantis #15762 )
git-svn-id: trunk@14914 -
2010-02-14 13:59:13 +00:00
Jonas Maebe
7201d61d20
* forgotten, part of r14912
...
git-svn-id: trunk@14913 -
2010-02-14 13:53:37 +00:00
Jonas Maebe
025ec34e4d
+ "CExtended" type that is the same as "extended", but conforming to the
...
properties/behaviour of the equivalent of Extended in C (i.e., to
"long double" on i386 and x86_64 platforms that support a 10 byte
long double, and to "double" elsewhere)
git-svn-id: trunk@14912 -
2010-02-14 13:45:58 +00:00
Jonas Maebe
650ba6d50f
* an int2int type conversion doesn't retain the value location in
...
case of a bitpacked access
git-svn-id: trunk@14911 -
2010-02-13 20:56:02 +00:00
Jonas Maebe
674cdaf3fc
* handle fields with the same name as a type also correctly in case of
...
nested records (mantis #15592 )
git-svn-id: trunk@14910 -
2010-02-13 20:51:19 +00:00
Jonas Maebe
f530de8da6
* also honor keep_sign_equal in get_common_intdef() for signed types
...
(r14892)
git-svn-id: trunk@14909 -
2010-02-13 20:50:18 +00:00
Jonas Maebe
fea789eca4
* fixed (harmless) range check errors
...
git-svn-id: trunk@14908 -
2010-02-13 20:48:59 +00:00
Jonas Maebe
efcc6f6440
* also handle statement nodes in has_no_code()
...
git-svn-id: trunk@14907 -
2010-02-13 20:48:38 +00:00
Jonas Maebe
a37850742c
* fixed range check error if cstringpattern is empty (r14789, r14850)
...
git-svn-id: trunk@14906 -
2010-02-13 20:48:14 +00:00
Jonas Maebe
bb28dd7d08
* also show Darwin-specific external resource options for ARM and x86_64
...
* documented how to specify ARM-specific and x86_64-specific options in
the help pages
git-svn-id: trunk@14905 -
2010-02-13 20:45:57 +00:00
Jonas Maebe
38b1271a21
* fixed wrong range check errors for "qword and constant" after
...
r14892
git-svn-id: trunk@14904 -
2010-02-13 20:44:03 +00:00
Jonas Maebe
1f4d7d6057
* add type symbol names to -vp output (patch by Adriaan van Os, mantis
...
#15737 )
git-svn-id: trunk@14903 -
2010-02-13 16:47:37 +00:00
Jonas Maebe
5e1a09f817
* fixed getting the "original" def in taddnode.simplify by stopping at
...
type conversions for absolute variables (fixes test/tprec13 on, a.o.,
ppc64 after r14892)
git-svn-id: trunk@14896 -
2010-02-13 11:30:43 +00:00
Jonas Maebe
6dd25eb233
* fixed location_force_reg() for big endian 32 bit targets and
...
LOC_SUBSETREF/LOC_CSUBSETREF (fixes test/tregreg4 on sparc and ppc32
after r14892)
git-svn-id: trunk@14895 -
2010-02-13 11:29:42 +00:00
Jonas Maebe
85984c2d8f
* insert proper type conversions when optimising logical operations and
...
compares by avoiding unnecessary sign extensions (fixes bug reported in
http://lists.freepascal.org/lists/fpc-pascal/2010-January/023907.html )
* never throw away int2int type conversions on bitpacked loads, because
in these cases the proper bits still need to be selected
git-svn-id: trunk@14892 -
2010-02-12 18:13:08 +00:00
florian
092153e7ad
* handle unrolling of for ... downto ... correctly, resolves #15668
...
git-svn-id: trunk@14884 -
2010-02-10 21:08:54 +00:00
Jonas Maebe
e89d0bcee3
+ also print node tree after firstpass with -vp (patch by Adriaan van Os,
...
mantis #15710 )
git-svn-id: trunk@14883 -
2010-02-10 16:41:16 +00:00
Jonas Maebe
6b0a0c149b
* don't perform a range check in Delphi mode when passing a cardinal as
...
vtInteger to an array-of-const parameter (mantis #15727 )
git-svn-id: trunk@14882 -
2010-02-10 16:35:37 +00:00
Jonas Maebe
d60e1f674c
* automatically try to call procvars that are subscripted or used in a
...
with-statement, both in FPC and TP/Delphi modes (mantis #15728 )
git-svn-id: trunk@14881 -
2010-02-10 16:12:18 +00:00
Jonas Maebe
879e487ee8
* changed linker target name for WinCE from arm-pe into arm-wince-pe
...
(mantis #15666 )
git-svn-id: trunk@14872 -
2010-02-06 20:22:15 +00:00
Jonas Maebe
89110baab8
* don't modify the flags while simplifying PIC memory references
...
(mantis #15694 )
git-svn-id: trunk@14871 -
2010-02-06 20:18:36 +00:00
florian
34f976afea
* enabled internal sar support for sparc and mips as well
...
git-svn-id: trunk@14867 -
2010-02-04 22:04:19 +00:00
florian
f8bf268406
* handle sarX(<const>,<var>) properly. resolves #15653
...
git-svn-id: trunk@14866 -
2010-02-04 21:30:25 +00:00
pierre
bc407ef6d3
* also disable range check where overflow check is disabled
...
git-svn-id: trunk@14852 -
2010-02-03 00:32:30 +00:00
pierre
0d098f2dba
* fix range check error
...
git-svn-id: trunk@14851 -
2010-02-03 00:31:26 +00:00
pierre
f8144cc627
* fix range check error if cstringpattern is empty
...
git-svn-id: trunk@14850 -
2010-02-03 00:28:21 +00:00
Jonas Maebe
b6e4896805
* small typo corrections by Adriaan Van Os (mantis #15652 )
...
git-svn-id: trunk@14844 -
2010-02-02 10:41:38 +00:00