sergei
a3c439c60f
- No longer insert BlockStart markers into asmlists. The presence of these markers disrupts peephole optimizations and require additional checks all over the place, causing various workarounds/hacks (like TAsmList.Create_without_marker) to start building up.
...
A more radical approach is to remove them altogether. Tested with i386-win32 (the oldest peephole optimizer), mips-linux (the newest one) and arm-linux (the most complex one) targets. The fallout was limited to two minor issues fixed in r28629 and r28708, respectively.
git-svn-id: trunk@28711 -
2014-09-22 21:33:50 +00:00
nickysn
a10c200090
* tdynarraytypedata.elSize changed from PtrUInt to SizeUInt; this fixes e.g.
...
setlength on dynarrays in the i8086 far data memory models
git-svn-id: trunk@28710 -
2014-09-22 20:18:07 +00:00
marcus
8c2a1ed026
Amiga: sockets, fcl-net, fcl-web included.
...
git-svn-id: trunk@28709 -
2014-09-22 18:12:43 +00:00
sergei
d37e72dbf9
* ARM: instructions do modify the base register of pre/postindexed references. Report this fact in spilling_get_operation_type_ref and RegModifiedByInstruction functions.
...
git-svn-id: trunk@28708 -
2014-09-22 16:18:16 +00:00
nickysn
2e0707f465
* fixed writing of dynarray rtti in the i8086 far data memory models
...
git-svn-id: trunk@28707 -
2014-09-22 16:12:11 +00:00
nickysn
782b033acd
* optimized SysTinyReAllocMem for the case when the new and old size are the
...
same after alignment to TinyHeapAllocGranularity
git-svn-id: trunk@28706 -
2014-09-22 12:48:12 +00:00
svenbarth
16774350d7
Fix for Mantis #26749 .
...
pgenutil.pas, generate_specialization:
* first check whether we can reuse the current specialization or another specialization and only /then/ retrieve the symtable to specialize to
+ added test
git-svn-id: trunk@28705 -
2014-09-21 19:15:37 +00:00
marcus
e7eb77a94a
Amiga: Video Unit ObtainBestPen instead of ObtainPen for low depth screens
...
git-svn-id: trunk@28704 -
2014-09-21 17:30:53 +00:00
marcus
34a726b89d
AROS: hooked the new debug stuff into the AROS RTL, to be compatible with MorphOS and Amiga
...
git-svn-id: trunk@28703 -
2014-09-21 17:05:48 +00:00
sergei
b08ffa0a87
* ARM: fixed detecting Thumb-style jump tables in insertpcrelativedata() after r28546.
...
git-svn-id: trunk@28702 -
2014-09-21 01:59:25 +00:00
Károly Balogh
27befd2375
amiga: reintroduced some of the exec debug functions, which were removed, but actually *DO* exist on classic Amiga and hooked the new SysDebug stuff into the Amiga RTL
...
git-svn-id: trunk@28701 -
2014-09-21 00:15:49 +00:00
nickysn
4e48190342
+ implemented Mark and Release for the tiny heap
...
git-svn-id: trunk@28700 -
2014-09-20 23:33:54 +00:00
Jonas Maebe
d26e6278ba
* don't free node before using its resultdef in an error message
...
git-svn-id: trunk@28699 -
2014-09-20 23:08:22 +00:00
marco
72b521e365
* fix result:=func(result) instead of result:=func(s). Mantis #26746
...
git-svn-id: trunk@28698 -
2014-09-20 12:08:53 +00:00
sergei
4a90d7e3de
+ ARM internal linker: very initial support for Thumb mode, helloworld-class programs compiled with "-Cparmv6m -CIthumb" can now run.
...
git-svn-id: trunk@28697 -
2014-09-19 22:33:37 +00:00
Károly Balogh
155ae9961e
MorphOS: hooked the new debug stuff into the MorphOS RTL
...
git-svn-id: trunk@28696 -
2014-09-19 21:18:33 +00:00
Károly Balogh
2fba1540c4
amicommon: removed the accidental leftovers of experiments for the last syscall fix for MorphOS
...
git-svn-id: trunk@28695 -
2014-09-19 21:17:37 +00:00
Károly Balogh
55d85fffad
amicommon: basic common debug facilities, influenced by Debug/DebugLn of the AROS port
...
git-svn-id: trunk@28694 -
2014-09-19 20:40:43 +00:00
sergei
ba324b1bf0
* Set default CPU type to cpu_pic32mx and FPU type to fpu_soft when compiling for mipsel-embedded, patch from Michael Ring.
...
git-svn-id: trunk@28692 -
2014-09-19 15:58:56 +00:00
marco
29e5418a4f
* remove construct with exception, mantis #26738 , patch by Alexander.
...
git-svn-id: trunk@28687 -
2014-09-18 11:34:29 +00:00
Károly Balogh
c22dd6f022
PowerPC: in MorphOS syscalls the explicit paraloc size should always be OS_ADDR
...
git-svn-id: trunk@28686 -
2014-09-18 10:25:28 +00:00
Károly Balogh
c0620d8ce0
amunits: syscallified bullet, colorwheel and zlib
...
git-svn-id: trunk@28685 -
2014-09-17 21:57:11 +00:00
marcus
8ec15cb6ba
AROS: some bugfixes for threading
...
git-svn-id: trunk@28684 -
2014-09-17 15:19:40 +00:00
Károly Balogh
26f8a732e8
aros: no executable flag in the SVN for source files
...
git-svn-id: trunk@28683 -
2014-09-16 22:22:03 +00:00
marcus
980abaa9ba
AROS: introduced threading without additional library
...
git-svn-id: trunk@28682 -
2014-09-16 19:32:56 +00:00
marcus
67aed9ac3d
Morphunits: Asl Error in forward declaration
...
git-svn-id: trunk@28681 -
2014-09-16 15:22:18 +00:00
michael
2a4019b012
* Fix tw13076, broken by previous commit 28660
...
git-svn-id: trunk@28680 -
2014-09-16 14:00:41 +00:00
Károly Balogh
8acc260a09
m68k: added the byterev and ff1 CF ISAA+/ISAC instructions, also added byterev as a CPU capability
...
git-svn-id: trunk@28679 -
2014-09-16 01:39:02 +00:00
Károly Balogh
fbd5828624
amunits: one more Boolean -> LongBool case
...
git-svn-id: trunk@28678 -
2014-09-16 00:00:39 +00:00
Károly Balogh
d88a5737ff
amunits: Boolean -> LongBool rework. same as the previous commit for morphunits, sorry about that broken commit message
...
git-svn-id: trunk@28677 -
2014-09-15 23:33:57 +00:00
Károly Balogh
8ccc6afb16
morpho
...
git-svn-id: trunk@28676 -
2014-09-15 23:04:44 +00:00
Károly Balogh
4f0d42131d
Amiga: Boolean -> LongBool changes in syscalls
...
git-svn-id: trunk@28675 -
2014-09-15 22:52:50 +00:00
Károly Balogh
034a209300
MorphOS: use LongBool instead of Boolean in syscalls, because we have C-style booleans as return values everywhere. this probably should be done for *all* Amiga-like syscalls everywhere...
...
git-svn-id: trunk@28674 -
2014-09-15 22:49:18 +00:00
Károly Balogh
11c6d3df9c
amunits: syscallified amsgbox and amigautils
...
git-svn-id: trunk@28673 -
2014-09-15 22:16:08 +00:00
sergei
b588b3143a
+ MIPS: Assembler implementation of FillChar
...
* Removed commented out assembler implementations of Inclocked(longint) and Declocked(longint) and replaced them with calls to InterlockedIncrement/Decrement, so they actually do the locking.
git-svn-id: trunk@28672 -
2014-09-15 19:41:34 +00:00
marcus
203089fe1a
AROS: sockets, fcl-net, fcl-web included
...
git-svn-id: trunk@28671 -
2014-09-15 18:33:26 +00:00
sergei
f85a8159ef
* compiler/mips/cpuinfo.pas: removed "FPU_" prefixes from FPU names, not necessary because compiler inserts one itself.
...
* rtl/embedded/system.pp: removed (commented out) FPU initialization from initialization of system unit, was dead code anyway because FPC_HAS_FEATURE_FPU is never defined and "feature FPU" does not exist.
* rtl/mips/*.inc: don't compile FPU instructions if compiling RTL with -CfNONE or -CfSOFT (however, handling these switches for MIPS targets in compiler needs further fixing).
git-svn-id: trunk@28670 -
2014-09-15 18:24:23 +00:00
marco
e5c104ca96
* updated compressiontype to new versions. Mantis #26723 , patch by Reinier.
...
git-svn-id: trunk@28669 -
2014-09-15 17:46:18 +00:00
Károly Balogh
3d85945bff
amunits: syscallified gadtools
...
git-svn-id: trunk@28668 -
2014-09-14 23:15:27 +00:00
nickysn
6735e717ef
* the results of MemAvail and MaxAvail changed to LongInt in the i8086 far data
...
memory models (TP7 compatibility)
git-svn-id: trunk@28667 -
2014-09-14 21:11:32 +00:00
nickysn
00c98edd29
* the FPC_TINYHEAP_HUGE define moved to tnyheaph.inc
...
git-svn-id: trunk@28666 -
2014-09-14 20:42:35 +00:00
nickysn
706a1d8712
* the FPC_HEAP_HUGE define renamed FPC_TINYHEAP_HUGE, because it applies to the
...
tiny heap, not the regular one
git-svn-id: trunk@28665 -
2014-09-14 20:10:48 +00:00
nickysn
624b3204d8
+ added and implemented MemAvail and MaxAvail for the tiny heap
...
git-svn-id: trunk@28664 -
2014-09-14 18:35:15 +00:00
Károly Balogh
6381280ebd
arm-linux: new gprt0 based on cprt0, plus gmon initialization, so profiling output generation actually works now
...
git-svn-id: trunk@28663 -
2014-09-14 17:07:35 +00:00
michael
fb5939befe
* Fix bug #26072
...
git-svn-id: trunk@28662 -
2014-09-14 16:29:52 +00:00
michael
71a1628303
* Fix bug #24645
...
git-svn-id: trunk@28661 -
2014-09-14 16:17:25 +00:00
michael
4c86a68345
* Fix bug #23954
...
git-svn-id: trunk@28660 -
2014-09-14 15:58:07 +00:00
michael
beafc9fe8c
* Fix bug #26717
...
git-svn-id: trunk@28659 -
2014-09-14 15:06:34 +00:00
nickysn
ad7111ad4d
* SysTinyFreeMem: terminate with a runtime error if Addr is >= HeapPtr, since
...
InternalTinyFreeMem cannot handle that (which causes heap corruption), and it
indicates a bug in the program anyway, because the area between HeapPtr and
HeapEnd is free (so it indicates either a double free or freeing an invalid
pointer).
git-svn-id: trunk@28658 -
2014-09-14 14:47:13 +00:00
Károly Balogh
3b205742b6
m68k: also try to optimize a special case of OP_SAR using the SWAP instruction
...
git-svn-id: trunk@28657 -
2014-09-14 12:47:07 +00:00