Commit Graph

43750 Commits

Author SHA1 Message Date
sergei
d9a7d28838 + MIPS: support floating point conditions in its emulated flags, on MIPS4+ convert such flags to registers using conditional move instructions (i.e. without branching). For older cores generated code remains the same.
git-svn-id: trunk@28535 -
2014-08-29 18:18:17 +00:00
Károly Balogh
5a7b1f00cf ARM: Thumb is an ugly mess, but this at least makes fcl-image package to build with -Ooregvar. someone with more clue is welcomed to review and come up with a better patch.
git-svn-id: trunk@28534 -
2014-08-29 17:04:48 +00:00
Károly Balogh
785a1690a2 amicommon: AOS_heapPool renamed to ASYS_heapPool. common stuff should start with ASYS, to avoid confusion on AmigaOS, so more to come
git-svn-id: trunk@28533 -
2014-08-28 21:50:05 +00:00
nickysn
cd0acd050e * store the tiny heap free block size in a TP7-compatible way (as a normalized
segment:offset pair, instead of a longint) in the i8086 far data memory models

git-svn-id: trunk@28532 -
2014-08-28 21:24:41 +00:00
lacak
9703d14149 fcl-db: base: if either MinValue or MaxValue is <> 0 then use range MinValue-MaxValue instead of MinRange-MaxRange (for TLongintField). It is compatible with other Fields and allows set range 0-X or X-0. Bug #26606
git-svn-id: trunk@28531 -
2014-08-28 12:28:36 +00:00
sergei
3b06465322 + MIPS: support replacement spilling for mov.s, mov.d and (partially) mtc1 instructions.
git-svn-id: trunk@28530 -
2014-08-27 21:26:38 +00:00
sergei
5655baa23a * MIPS: optimized conversion of unsigned 32-bit integers to float, now uses one integer register instead of two and does not generate redundant move.
git-svn-id: trunk@28529 -
2014-08-27 21:23:47 +00:00
sergei
5f2821ee5f * Moved handling of emulated floating point negation into new virtual method tcgunaryminusnode.second_float_emulated. Also changed it into simple flipping of the sign bit, which is how it is defined by IEEE 754, and already done for ARM targets. Relevant ARM-specific parts can now be removed, and m68k code gets significantly better without further efforts.
git-svn-id: trunk@28528 -
2014-08-27 21:16:30 +00:00
florian
8635894de4 * merged new changes to avx2 branch (AVX2 vectory-memory support) by Torsten Grundke
git-svn-id: trunk@28527 -
2014-08-27 21:06:23 +00:00
marcus
4ef87579eb amicommon: GetLocalTime correct millisecond value
git-svn-id: trunk@28526 -
2014-08-27 15:36:52 +00:00
Károly Balogh
feb255ec48 Amiga: improved the startup code, only allocate a new stack area if the area requested compile time is smaller than the one the system provides to us
git-svn-id: trunk@28525 -
2014-08-27 09:46:55 +00:00
Károly Balogh
220bcbe37e amunits: fixed exec unit to actually build...
git-svn-id: trunk@28524 -
2014-08-26 22:57:20 +00:00
marco
97be68107e * apply patch from issue #26635, dealing with exe extension.
git-svn-id: trunk@28523 -
2014-08-26 21:06:52 +00:00
marcus
339ccbf610 AROS: Syscall-ified util and dos library
git-svn-id: trunk@28522 -
2014-08-26 19:41:37 +00:00
marco
c41c74d78a * fix for Mantis 26630.
git-svn-id: trunk@28521 -
2014-08-25 11:55:04 +00:00
Károly Balogh
4c0499a70c morphunits: forgot to add the required Makefiles before the previous commit...
git-svn-id: trunk@28520 -
2014-08-25 07:43:23 +00:00
Károly Balogh
85953d5e99 MorphOS: moved system dependent units outside the RTL into the new morphunits package. also renamed some units to match classic Amiga and/or AROS naming
git-svn-id: trunk@28519 -
2014-08-25 02:17:16 +00:00
nickysn
03a838556f * keep the tiny heap free blocks ordered by start address, instead of size.
Rationale: 1) TP7 compatibility, 2) easier debugging of heap corruption
  problems

git-svn-id: trunk@28518 -
2014-08-24 16:07:01 +00:00
Károly Balogh
0a2899573a amicommon: merged another AROS branch fix, avoid using GetCurrentDirName in do_GetDir since that doesn't work when started from WB
git-svn-id: trunk@28517 -
2014-08-24 15:09:29 +00:00
Károly Balogh
cba1962284 amicommon: backported seeking fixes from AROS branch, which actually apply to all Am*ga platforms
git-svn-id: trunk@28516 -
2014-08-24 14:56:36 +00:00
marco
0539923b68 * Mantis #26622, patch by Ocean, a few fields to bool and some cleanup
git-svn-id: trunk@28515 -
2014-08-23 21:25:50 +00:00
lacak
bfb08c957e fcl-db: base: when reporting RangeError take into account also user defined MinValue, MaxValue. Bug #26606
git-svn-id: trunk@28514 -
2014-08-23 17:21:02 +00:00
Károly Balogh
8169fd6255 amicommon: a better and less hacky way to retrive the path. additionally this variant also works properly on AROS
git-svn-id: trunk@28513 -
2014-08-23 14:03:51 +00:00
nickysn
0f9e8f84bb * tcgcallnode.pass_generate_code: pass the correct vmt pointer type parameter to
location_force_reg when generating code for a call to a virtual class method,
  called through a class reference var. This bug went unnoticed so far, because
  on all platforms, except i8086 medium and compact memory models, the size of
  a vmt pointer is the same as the size of a procvar. Even in the i8086 medium
  and compact memory models, the previous code would generate correct code,
  because thlcg2ll.a_load_loc_reg uses loc.size (which was correct) in the case
  when fromsize=tosize (both of which were wrong, but equal), due to the check
  in hlcg2ll.pas:555. Thanks to Jonas for finding this bug!

git-svn-id: trunk@28512 -
2014-08-22 23:17:46 +00:00
Károly Balogh
2bbf991365 MorphOS: migrated the RTL to use the common Amiga code. still needs cleanup, but works as a first
git-svn-id: trunk@28511 -
2014-08-22 22:19:16 +00:00
sergei
6807812997 * Avoid promotion to 64 bits due to mixing signed and unsigned expressions.
git-svn-id: trunk@28510 -
2014-08-22 17:21:26 +00:00
Károly Balogh
26d53cfa55 amicommon: Amiga/m68k RTL now uses the common code
git-svn-id: trunk@28509 -
2014-08-21 23:49:21 +00:00
Károly Balogh
df2d474c5b Amiga: cleanup of exec functions, removed MorphOS specific 68k ABI calls which were left in here accidentally
git-svn-id: trunk@28508 -
2014-08-21 22:50:40 +00:00
Károly Balogh
65f13ac118 amicommon: a common Amiga RTL implementation based on the current AROS one, and made AROS port to use it
git-svn-id: trunk@28507 -
2014-08-21 22:33:07 +00:00
Károly Balogh
ae0cc5d9e3 AROS: unlike on other Amiga-flavors, file handles can be negative but -1 on AROS
git-svn-id: trunk@28506 -
2014-08-21 20:25:21 +00:00
sergei
f0496001fb - MIPS: removed allocation of stack/frame pointer registers in prologue, hacks like this are no longer needed since r27104.
git-svn-id: trunk@28505 -
2014-08-21 19:36:00 +00:00
Károly Balogh
dd67fa8c5c * fixed DFA warnings for i8086
git-svn-id: trunk@28504 -
2014-08-20 15:49:27 +00:00
Károly Balogh
b13ef4e3bb * fixed DFA warnings for JVM target
git-svn-id: trunk@28503 -
2014-08-20 15:48:42 +00:00
Károly Balogh
d22dc68fda * fixed DFA warnings for MIPS and AVR
git-svn-id: trunk@28502 -
2014-08-20 15:05:43 +00:00
Károly Balogh
6122db7d40 * fix warnings when compiling the compiler with DFA optimizer enabled on PowerPC
git-svn-id: trunk@28501 -
2014-08-20 14:31:36 +00:00
Károly Balogh
0cf7357ee2 * fix GetResFlags DFA optimizer warning on Sparc and AVR too
git-svn-id: trunk@28500 -
2014-08-20 13:52:28 +00:00
Károly Balogh
392da9e43f * fix warnings when compiling the compiler with DFA optimizer enabled on m68k
git-svn-id: trunk@28499 -
2014-08-20 13:49:47 +00:00
Károly Balogh
09608a1c28 * fix warnings when compiling the compiler with DFA optimizer enabled on ARM
git-svn-id: trunk@28498 -
2014-08-20 13:16:58 +00:00
Károly Balogh
07ad2a04ac * fix warnings when compiling the compiler with DFA optimizer enabled on i386
git-svn-id: trunk@28497 -
2014-08-20 12:28:44 +00:00
Károly Balogh
249a60b28b x86: fix a variable op not initialized warning. This hopefully fixes our x86 testsuite run.
git-svn-id: trunk@28496 -
2014-08-20 10:21:06 +00:00
Jonas Maebe
a4a54fa344 * removed unnecessary "as" expressions
git-svn-id: trunk@28471 -
2014-08-19 20:11:52 +00:00
marco
eb67f66e10 * add taglogfont out of compatibility, patch by Ocean, mantis #0026539
git-svn-id: trunk@28470 -
2014-08-19 17:45:23 +00:00
nickysn
d553e4572a + added checks for HeapOrg and HeapEnd to the i8086 compact and large memory
layout tests

git-svn-id: trunk@28469 -
2014-08-19 16:59:54 +00:00
marco
95bb0e0fd1 * VT_DECIMAL added, patch by Ocean, mantis #26539
git-svn-id: trunk@28468 -
2014-08-19 14:00:16 +00:00
pierre
17ad136412 Remove warning of misplaced <P> marker, as noticed by html checker
git-svn-id: trunk@28467 -
2014-08-19 11:34:05 +00:00
Károly Balogh
03a0f7b409 AROS: improved version of the previous commit, pass the stripping option to the linker instead, seems to work.
git-svn-id: trunk@28466 -
2014-08-19 11:30:02 +00:00
Károly Balogh
883e71f18e AROS: stripping of executables on i386 works now
git-svn-id: trunk@28465 -
2014-08-19 11:03:31 +00:00
Károly Balogh
167fad359e AROS: syscall-ified the exec.library functions used by the RTL
git-svn-id: trunk@28464 -
2014-08-19 00:56:34 +00:00
Károly Balogh
4ee15b84da AROS: syscall (library call) support for based on the Amiga/68k and MorphOS/PPC versions
git-svn-id: trunk@28463 -
2014-08-19 00:39:18 +00:00
Jonas Maebe
83c7dbb7a6 * fixed copy/paste error that caused all warnings to be disabled after
compiling the symdef unit while building a compiler for a non-64 bit
    code generator

git-svn-id: trunk@28462 -
2014-08-18 23:03:54 +00:00