svenbarth
f8c23c84b6
* have pointerdefs and classrefdefs "inherit" the df_generic and df_specialization flags from the def they point to and set the genericdef accordingly
...
git-svn-id: trunk@35091 -
2016-12-09 16:20:36 +00:00
michael
7ead78e71b
* Forgot to add fpfonttextmapping.pp
...
git-svn-id: trunk@35090 -
2016-12-09 14:24:14 +00:00
Jonas Maebe
18077d9530
* when determining the best candidates for overloaded method calls, apply
...
the scope penalty relative to the nearest symtable that contains one of
the applicable overloads, rather than relative to the nearest symtable
that simply contains a method with this name (based on patch by
Maciej Izak, mantis #25607 )
git-svn-id: trunk@35089 -
2016-12-09 13:39:42 +00:00
Jonas Maebe
04f7e47df7
* create stubs for library exports on Unix at at the node tree level instead
...
of using thlcg.g_external_wrapper() for high level targets, because that
way the creation of a new procdef for this stub and adding appropriate
entry/exit code can be handled using the standard compiler infrastructure
(fixes webtbs/tw8730* for LLVM)
git-svn-id: trunk@35088 -
2016-12-09 13:39:38 +00:00
Jonas Maebe
d36fe53d85
* factored out the code to create an complete alias for a procdef to
...
symcreat.create_procdef_alias()
git-svn-id: trunk@35087 -
2016-12-09 13:39:35 +00:00
Jonas Maebe
8af85a16b3
* document finish_copied_procdef()
...
git-svn-id: trunk@35086 -
2016-12-09 13:39:31 +00:00
Jonas Maebe
472b5228fe
* changed ncgutil.has_alias_name(pd,s) to a method of tprocdef
...
git-svn-id: trunk@35085 -
2016-12-09 13:39:28 +00:00
michael
4406ec7e68
* Forgot to add subsetter font
...
git-svn-id: trunk@35084 -
2016-12-09 13:22:48 +00:00
michael
b7083402cf
* Fix from Graeme adding Font subset embedding and underline/strikethrough
...
git-svn-id: trunk@35083 -
2016-12-09 12:51:06 +00:00
florian
1e374df5b8
* correctly calculate the bit mask in thlcgobj.a_load_regconst_subsetreg_intern, resolves #31042
...
* convert immediates on x86 always to 32 (x86-64, i386) or 16 bit (i8086) signed values
git-svn-id: trunk@35082 -
2016-12-07 20:08:22 +00:00
sergei
8173efff3e
* x86 asm reader: Don't copy operand size to instruction size for MOVSS and VMOVSS, because it is different for source and destination. Fixes breakage caused by fixing memory size of those instructions (Mantis #29954 and Mantis #29957 ).
...
+ Tests are extended to check that both OPR_LOCAL and OPR_REF memory operands compile without warnings as source and destination, in both Intel and AT&T syntax.
git-svn-id: trunk@35081 -
2016-12-07 14:08:28 +00:00
svenbarth
a23cfd9a85
* regenerate msgidx.inc and msgtxt.inc after r35079; thankfully that didn't break the build this time since it was merely a text change ^.^'
...
git-svn-id: trunk@35080 -
2016-12-07 07:38:01 +00:00
svenbarth
d499163ef5
* provisional fix for Mantis #31076 : fail gracefully instead of with an internal error if a generic method is declared inside a generic class or record. This will change once we support nested generics however.
...
* adjusted error message to reflect that we're not only dealing with generic classes
+ added test; note: it's added in webtbs, cause the test will loose its %FAIL attribute in the future
git-svn-id: trunk@35079 -
2016-12-06 22:26:53 +00:00
svenbarth
70817baf98
* since we already allow inline specializations in mode ObjFPC due to generic functions it's only consequential to also allow specializations after pointers (they are already allowed in mode Delphi).
...
+ added tests
* tgeneric87.pp and tgeneric88.pp are no longer considered as tests that should fail
git-svn-id: trunk@35078 -
2016-12-06 21:37:22 +00:00
Károly Balogh
db976a3a3e
amiga: added __amigaos4__ signature symbol to the pascal startup code
...
git-svn-id: trunk@35077 -
2016-12-06 01:26:20 +00:00
Károly Balogh
eb6fe91208
amiga: proof-of-concept untested implementation for OS4/PowerPC Pascal startup code
...
git-svn-id: trunk@35076 -
2016-12-05 21:12:23 +00:00
marcus
8917b476c0
AROS: CreateRastPort as explicit function only needed for ABIv1 (for v0 in graphics.library)
...
git-svn-id: trunk@35075 -
2016-12-05 07:22:05 +00:00
marcus
afaefc32e8
AROS: more ABIv1 and x64 adjustments
...
git-svn-id: trunk@35074 -
2016-12-04 21:49:54 +00:00
florian
759a53dfc7
- removed comment that the unit is a prototype and changing: the comment was introduced 10 years ago, the unit is part of stable release for years, it is documented
...
git-svn-id: trunk@35073 -
2016-12-04 21:16:00 +00:00
florian
55d9fea401
* CLASSESINLINE -> FGLINLINE
...
* inlining enabled
git-svn-id: trunk@35072 -
2016-12-04 21:14:00 +00:00
Károly Balogh
dbd7e74e9c
amiga: yet another attempt to fix powerpc-amiga build
...
git-svn-id: trunk@35071 -
2016-12-04 19:10:53 +00:00
Károly Balogh
8057b42830
amiga: only try to build the pascal startup code on 68k for now
...
git-svn-id: trunk@35070 -
2016-12-04 18:51:48 +00:00
Károly Balogh
b356b18675
amiga: forgot to commit the actual buildrtl.pp in the previous commit
...
git-svn-id: trunk@35069 -
2016-12-04 18:37:47 +00:00
Károly Balogh
788c622307
amiga: pascal startup code for 68k and buildrtl refactor
...
git-svn-id: trunk@35068 -
2016-12-04 18:21:24 +00:00
marcus
7eba7122d2
AROS: ABIv1 AmigaDOS unit
...
git-svn-id: trunk@35067 -
2016-12-04 16:58:59 +00:00
marcus
bebef242d4
AROS: Initial ABIv1 Support
...
git-svn-id: trunk@35066 -
2016-12-04 15:41:35 +00:00
Károly Balogh
1701f06a0e
morphos: take two on the Pascal startup code. this version works as a drop-in replacement for the asm one, and doesn't need system unit patching. this will be important when linking against LibC and when the approach gets ported to other Amiga-like platforms
...
git-svn-id: trunk@35065 -
2016-12-04 14:02:01 +00:00
marcus
114a43e6ef
AROS: fixed TTask type
...
git-svn-id: trunk@35064 -
2016-12-04 13:45:04 +00:00
michael
d05175a17f
* FileOpen should not open directories (Windows compatible) Bug ID #30766
...
git-svn-id: trunk@35063 -
2016-12-04 12:41:57 +00:00
michael
0d772ae198
* Patch from Silvio Clecio to remove unused variable (bug ID 31044)
...
git-svn-id: trunk@35062 -
2016-12-04 11:56:05 +00:00
Jonas Maebe
f55d962e40
* use system.round() instead of LLVM's fptosui operation for converting a
...
floating point type to currency, as fptosui is defined as always rounding
to zero while on other platforms we use the FPU's current rounding mode
(fixes webtbs/tw21449 for LLVM, and also webtbs/tw24197 because LLVM's
code generated for fptosui temporarily changes the FPU control word so
it rounds to zero and also to disable FPU exceptions)
git-svn-id: trunk@35061 -
2016-12-04 11:15:22 +00:00
Jonas Maebe
8b1c90124e
* support encoding helper types for LLVM (encode the same type as the
...
extended class) (fixes webtbs/tw21457 for LLVM)
git-svn-id: trunk@35060 -
2016-12-04 11:15:19 +00:00
Jonas Maebe
a0b537bc7b
* fixed typed constants that use an integer number to initialise a procvar or
...
pointer on LLVM (fixes webtbs/tw21267)
git-svn-id: trunk@35059 -
2016-12-04 11:15:15 +00:00
Jonas Maebe
2e9c6f35ae
- disable -Ooregvar for the LLVM-based x86-64 code generator, as it causes
...
internalerrors there and fixing it doesn't make sense since LLVM will take
care of that anywaya
git-svn-id: trunk@35058 -
2016-12-04 11:15:12 +00:00
Jonas Maebe
a2017b2327
* don't keep tc_equal type conversions for LLVM in case the resultdef doesn't
...
change, since then we definitely don't have to insert a type conversion at
the LLVM level either (fixes webtbs/tw1901 for LLVM)
git-svn-id: trunk@35057 -
2016-12-04 11:15:09 +00:00
Jonas Maebe
a8e107bb4b
* fix memory leak: free rg[R_MMREGISTER]
...
git-svn-id: trunk@35056 -
2016-12-04 11:15:05 +00:00
michael
d6d10a522a
* Patch from Mattias Gaertner
...
- more tests
- case-of: added option to change between switch and if-else
- Some changes to the way the implementation block is generated for units.
git-svn-id: trunk@35055 -
2016-12-04 09:35:53 +00:00
Károly Balogh
f3e33a9dde
morphos: new pascal-written internal startup code. also refactored the rtl build process for morphos
...
git-svn-id: trunk@35054 -
2016-12-04 00:15:41 +00:00
Tomas Hajny
7956cb5d48
* CrtCtrlBreakHandler may not be invoked for Ctrl-C on certain platforms (Win32/Win64) - made conditional (preparation for future use as platform independent include file)
...
git-svn-id: trunk@35053 -
2016-12-03 23:41:03 +00:00
Tomas Hajny
63c3fc59d4
* as pointed to by Dmitry Boyarintsev (bug #31023 ), TurnMouseOff is not used and may be removed
...
git-svn-id: trunk@35052 -
2016-12-03 23:38:58 +00:00
Tomas Hajny
8038b2e64f
* patch by Dmitry Boyarintsev (bug #31023 ) improving compatibility of unit Crt under Win32 and Win64 to other platforms and original TP/BP - Ctrl-C now treated as ASCII 3 and Ctrl-Break respects CheckBreak setting
...
git-svn-id: trunk@35051 -
2016-12-03 23:37:03 +00:00
Tomas Hajny
e5ceb04725
* patch by Dmitry Boyarintsev (bug #31023 ) implementing SysSetCtrlBreakHandler for Win32 and Win64
...
git-svn-id: trunk@35050 -
2016-12-03 23:35:20 +00:00
marcus
85e485826a
AROS: Startupcode for x86_64 with stack extent feature
...
git-svn-id: trunk@35049 -
2016-12-03 19:29:00 +00:00
Károly Balogh
8c4e5e0610
bump PPU version due to the latest syscall changes
...
git-svn-id: trunk@35048 -
2016-12-03 19:01:11 +00:00
Károly Balogh
0cb555c07c
syscalls: move the reference implementation of parseparaloc to paramgr. removes two identical copies from CPU specific code and enables basereg convention for AROS/x86_64. also, other minor fixes and cleanups in related code.
...
git-svn-id: trunk@35047 -
2016-12-03 19:00:41 +00:00
Jonas Maebe
ba33da711a
* fixed compilation after r35034
...
- removed commented-out uses statement
git-svn-id: trunk@35046 -
2016-12-03 08:48:01 +00:00
Jonas Maebe
8c167f4e40
* handle already quoted symbol names for LLVM (like for Objective-C)
...
git-svn-id: trunk@35045 -
2016-12-02 18:04:14 +00:00
Jonas Maebe
876e5eab56
* fixed "smart linking" parameters to llc
...
git-svn-id: trunk@35044 -
2016-12-02 17:45:12 +00:00
Jonas Maebe
f26ed10ba1
* same as r27223 for hlcgobj (fixes webtbs/tw25895 for llvm)
...
git-svn-id: trunk@35043 -
2016-12-02 17:45:09 +00:00
Jonas Maebe
02e4a27a35
* print internalerrors in case we still encounter stray constants not part of
...
a typed constants
* don't print superfluous newlines in typed constant definitions
git-svn-id: trunk@35042 -
2016-12-02 12:33:09 +00:00