Károly Balogh
4bb40d14cf
os4units: TInterfaceData must be 4 byte aligned, and TNode is only 14 bytes
...
git-svn-id: trunk@35269 -
2017-01-08 16:35:39 +00:00
lacak
f05acbed7a
fcl-db: base: avoid code page conversion to CP_NONE as this kind of conversion is for now undefined (see bug #30622 )
...
git-svn-id: trunk@35268 -
2017-01-08 16:24:11 +00:00
svenbarth
5275c36393
+ extend TParamFlags by values for hidden parameters in general and especially the hidden high, self and vmt parameters (this is necessary so a manager approach for Invoke() can be used with as few knowledge about the involved calling conventions as possible)
...
Note: with this TParamFlags exceeds the size of a Byte
git-svn-id: trunk@35267 -
2017-01-08 16:08:35 +00:00
svenbarth
62fc960e63
+ utility function to reverse the bit pattern of a Word
...
git-svn-id: trunk@35266 -
2017-01-08 16:06:29 +00:00
svenbarth
fd465ff500
* adjusted tests as SizeOf(TParamFlags) = 1 does not need to be true anymore
...
git-svn-id: trunk@35264 -
2017-01-08 12:43:59 +00:00
svenbarth
25842d70c8
* adjust test so it also checks the full ParamFlags instead of only the reduced one
...
git-svn-id: trunk@35263 -
2017-01-08 12:42:17 +00:00
svenbarth
bd8a7be17e
* better implementation of TProcedureParam.GetFlags that correctly handles a TParamFlags with a size > 1 even on big endian
...
git-svn-id: trunk@35262 -
2017-01-08 12:41:06 +00:00
marcus
ccf6504584
systems_aros, and systems_amigalike as collection for target defines
...
git-svn-id: trunk@35261 -
2017-01-08 11:34:27 +00:00
florian
1bea9e36eb
+ entropy test for random
...
git-svn-id: trunk@35260 -
2017-01-08 10:26:12 +00:00
pierre
d5f2c58d32
Fix bug report 34320, about random returning two same values at start
...
git-svn-id: trunk@35259 -
2017-01-08 09:19:50 +00:00
svenbarth
729d582822
* move the indirect symbols from al_exports to a new assembler list al_indirectglobals; otherwise compilation would fail horribly if we'd try to compile with a .def file as then the al_exports sections are ignored by the internal linker
...
git-svn-id: trunk@35258 -
2017-01-07 20:18:17 +00:00
florian
29a2c433f7
* -Sr option for iso mode: in case no command line parameter is passed, the file name for program parameters is derived from their variable name
...
git-svn-id: trunk@35257 -
2017-01-07 14:50:58 +00:00
svenbarth
6b641394d0
* fix for Mantis #31201 : don't write any RTTI for undefined defs (and while we're at it abort if an error def is encountered)
...
+ added test
git-svn-id: trunk@35256 -
2017-01-07 14:35:25 +00:00
Károly Balogh
4b7d0eb0ac
atari: FSearch impementation for DOS unit, copied from msdos target
...
git-svn-id: trunk@35255 -
2017-01-07 04:33:00 +00:00
Károly Balogh
a8a9a5f5de
atari: most of the DOS unit is now implemented, but largely untested
...
git-svn-id: trunk@35254 -
2017-01-07 04:13:58 +00:00
Károly Balogh
58f85ed4e4
atari: dos unit skeleton for atari. to be implemented.
...
git-svn-id: trunk@35253 -
2017-01-07 01:15:45 +00:00
florian
f68558b88c
* factored out TX86AsmOptimizer.OptPass2Imul
...
git-svn-id: trunk@35252 -
2017-01-06 22:25:24 +00:00
florian
ebb2b81f79
* FoldLea optimizes more cases
...
git-svn-id: trunk@35251 -
2017-01-06 22:25:22 +00:00
svenbarth
417f1cd49d
+ initial implementation of the RTTI for parameter locations (not *yet* used by anything)
...
The parameter manager converts from the internal compiler representation of
a parameter's location to an RTTI representation. As the general implementation
more or less directly uses the compiler structures for this a platform specific
parameter manager may override this functionality in case some parameter
information changed in a non-backwards compatible way.
The RTTI parameter location has a layout that allows for an easy enumeration
as the size is fixed for all locations. Additionally there are properties that
allow for easy access to the information stored in them.
git-svn-id: trunk@35250 -
2017-01-06 22:21:37 +00:00
svenbarth
0ed00f64f5
* move writing of the calling convention into its own method
...
git-svn-id: trunk@35249 -
2017-01-06 20:55:25 +00:00
svenbarth
e3f10500b0
* move writing of the methodkind into its own function (and return the value as its a bit more complicated to calculate than merely checking proctypeoption)
...
git-svn-id: trunk@35248 -
2017-01-06 20:46:31 +00:00
lacak
18f081150d
fcl-db: interbase: detect BLOB CHARACTER SET NONE and set TMemoField.CodePage to CP_NONE in this case. Related to #31162
...
git-svn-id: trunk@35245 -
2017-01-06 08:39:15 +00:00
Károly Balogh
49fc799e97
atari: section smartlinking support for atari. needs vlink nightly
...
git-svn-id: trunk@35244 -
2017-01-06 02:44:12 +00:00
Károly Balogh
48744d0abd
amiga: section smartlinking support for amiga. needs vlink nightly
...
git-svn-id: trunk@35243 -
2017-01-05 23:08:08 +00:00
Károly Balogh
48de52f41b
morphos: added section smartlinking support using vlink. needs vlink nightly
...
git-svn-id: trunk@35242 -
2017-01-05 22:39:54 +00:00
Károly Balogh
95cb456951
powerpc: set af_smartlink_sections for vasm
...
git-svn-id: trunk@35241 -
2017-01-05 22:30:57 +00:00
Károly Balogh
3e4c905813
m68k: make vasm to use ELF objects on amiga, enabled smartlink sections
...
git-svn-id: trunk@35240 -
2017-01-05 22:29:08 +00:00
pierre
1b1fe68f92
Fix aarch64 cycle after constant parser simplification change in rev 35229-35230
...
git-svn-id: trunk@35239 -
2017-01-05 13:41:44 +00:00
Károly Balogh
ab5b9982ee
aros: enabled internal sysinit for i386-aros
...
git-svn-id: trunk@35238 -
2017-01-05 00:25:10 +00:00
Károly Balogh
d084bd0d3b
aros: implemented pascal sysinit, will be shared across all cpus. also refactored the RTL build
...
git-svn-id: trunk@35237 -
2017-01-05 00:21:59 +00:00
Károly Balogh
789fb552d5
aros: fixed striping and added section smartlinking support
...
git-svn-id: trunk@35236 -
2017-01-04 22:59:05 +00:00
florian
3706ab4e44
* fix formatting of the writing of the fraction
...
git-svn-id: trunk@35235 -
2017-01-04 22:57:43 +00:00
florian
466d26b5ef
* copyright notice updated to 2017
...
git-svn-id: trunk@35234 -
2017-01-04 21:32:19 +00:00
Károly Balogh
69a502db37
instead of stringdup(ppufile.getstring), have a getpshortstring function in entfile, and use it whereever possible. this avoids an extra shortstring copy, compared to the earlier solution
...
git-svn-id: trunk@35233 -
2017-01-04 19:19:50 +00:00
lacak
67f38f374b
fcl-db: interbase: add TransactionHandle to TIBCursor (needed for further work) + unify naming (DatabaseHandle, TransactionHandle, StatementHandle)
...
git-svn-id: trunk@35232 -
2017-01-04 19:15:40 +00:00
florian
42cde51805
* ignore warnings caused by boolean expression simplification
...
git-svn-id: trunk@35231 -
2017-01-04 16:33:31 +00:00
florian
331bb95c5e
* simplify logical operations with constant booleans if the expresions involve no side effects
...
git-svn-id: trunk@35230 -
2017-01-04 16:33:29 +00:00
florian
3e2aff15fb
* short boolean evaluation is too expensive for simple nodes with no side effects, do full evaluation in this case
...
git-svn-id: trunk@35229 -
2017-01-04 16:33:27 +00:00
Károly Balogh
233185a4e5
rtti: make aligntoqword to always align to the same size as typinfo/AlignTypeData. this fixes m68k crashes in RTTI after r35218
...
git-svn-id: trunk@35228 -
2017-01-04 05:01:53 +00:00
Károly Balogh
f69bfe0ee4
atari: return a valid filehandle in do_open(). this code accidentally worked before with -O2, because the way the reg uses overlapped, but failed with -O-...
...
git-svn-id: trunk@35227 -
2017-01-04 04:53:41 +00:00
Károly Balogh
14c365e7b5
atari: align the tpasize to dword, seems like the section sizes are not guaranteed to be even (with vlink at least)
...
git-svn-id: trunk@35226 -
2017-01-04 04:50:15 +00:00
florian
2e779239ad
* fix rtti for targets with a max. C record alignment > 8 bytes
...
git-svn-id: trunk@35225 -
2017-01-03 18:44:50 +00:00
florian
53019b2470
* align code slightly better on i386-win32/x86_64-win64
...
git-svn-id: trunk@35224 -
2017-01-03 16:43:26 +00:00
florian
5aa32a1bbe
* align more jump targets
...
git-svn-id: trunk@35223 -
2017-01-03 16:43:24 +00:00
Károly Balogh
d8f7fd008e
atari: enable vlink for native builds as default
...
git-svn-id: trunk@35222 -
2017-01-03 13:58:49 +00:00
florian
a2838775cc
* interlocked methods with smallint parameters, resolves #31158
...
git-svn-id: trunk@35221 -
2016-12-31 19:42:47 +00:00
florian
be9f055c33
* fix rtti unit for targets with FPC_REQUIRES_PROPER_ALIGNMENT set
...
git-svn-id: trunk@35219 -
2016-12-30 15:32:58 +00:00
florian
0b82f71e8d
* take care of the fact that there are 32 bit abis (e.g. ARMHF) which align qword on 8 byte boundaries, resolves issue #31132
...
git-svn-id: trunk@35218 -
2016-12-30 15:32:56 +00:00
florian
673c0b3df3
* build unit update
...
git-svn-id: trunk@35217 -
2016-12-30 15:25:23 +00:00
Károly Balogh
419629c9b7
atari: some initial proof-of-concept AES unit, so first GEM app works
...
git-svn-id: trunk@35216 -
2016-12-30 10:33:21 +00:00