Commit Graph

43798 Commits

Author SHA1 Message Date
florian
3f71b059e5 * improve ldr*/str* handling for arm thumb
git-svn-id: trunk@28583 -
2014-09-02 19:37:45 +00:00
Károly Balogh
9991ee4165 m68k: support loading of refs to data registers, also when explicit paraloc is set and it's a register, use that directly, this fixes several syscall-related corner cases on Amiga
git-svn-id: trunk@28582 -
2014-09-02 17:38:34 +00:00
sergei
02f39c667a * MIPS: added a couple of important capabilities and made them available for big-endian targets as well.
git-svn-id: trunk@28581 -
2014-09-02 12:51:48 +00:00
nickysn
9b41b10350 * implementation of tiny heap's GetMem changed, so that it doesn't use FreeMem
internally.

git-svn-id: trunk@28580 -
2014-09-01 23:37:00 +00:00
sergei
768e090006 - MIPS: don't create reg.allocator for MM registers.
git-svn-id: trunk@28579 -
2014-09-01 21:55:03 +00:00
Károly Balogh
94a84d3286 amunits: some random functions syscall-ified. Mostly things used by rtl-console and FV.
git-svn-id: trunk@28578 -
2014-09-01 20:29:52 +00:00
Károly Balogh
05b249f204 Amiga: do not use tagsarray in rtl-console/video
git-svn-id: trunk@28577 -
2014-09-01 20:11:01 +00:00
joost
030885727e * Do not use sym.realname but sym.name in the mangledname for the Dwarf-3 debuginfo. This makes it possible to mix Dwarf-2 and Dwarf-3 debug info into one executable.
git-svn-id: trunk@28576 -
2014-09-01 16:55:10 +00:00
sergei
98332db7fe * Improved generic implementations of Bsf/Bsr. Existing ones were just ugly, BsfQword/BsrQWord producing total of 15 inline expansions 5 levels down and bloating into just a little less than a kilobyte of code (on MIPS). Now it is at most 3 expansions and 21 instructions (84 bytes), 16 and 32 bit routines are branchless.
git-svn-id: trunk@28575 -
2014-09-01 16:00:33 +00:00
Károly Balogh
5471a399e3 amunits: syscall-ified timer, fixed keymap to build (oops...)
git-svn-id: trunk@28574 -
2014-09-01 09:22:53 +00:00
Károly Balogh
e92e2349e7 amunits: syscall-ified keymap unit
git-svn-id: trunk@28573 -
2014-09-01 08:33:36 +00:00
svenbarth
244ac12794 Fix for Mantis #26615.
htypechk.pas, tcallcandidates:
  * collect_overloads_in_struct: we need to check the deftyp of the extended def for record- or objectdef, not the deftyp of the helper which will always be objectdef anyway.

+ added test

git-svn-id: trunk@28572 -
2014-09-01 07:18:02 +00:00
Jonas Maebe
74e56c2674 * let GetDirIO() return its result in DefaultFileSystemCodePage, as its only
used internally and in combination with other strings in that code page

git-svn-id: trunk@28571 -
2014-08-31 21:28:01 +00:00
Jonas Maebe
88d969f3bd * ensure that sysutils.expandfilename() returns its result in
DefaultRTLFileSystemCodePage instead of in DefaultFileSystemCodePage
    (mantis #26627)

git-svn-id: trunk@28570 -
2014-08-31 21:27:57 +00:00
florian
2fa7171a45 * generate AND for small set comparisons also when only set vars are involved using the cg class, so it works for arm thumb as well
git-svn-id: trunk@28569 -
2014-08-31 20:43:13 +00:00
florian
8a7c16327c * fixes reference handling for arm thumb and ldrh, not perfect yet
git-svn-id: trunk@28568 -
2014-08-31 18:00:10 +00:00
Károly Balogh
604b277183 Amiga: rtl-console and fv now builds for classic Amiga. It probably still nukes badly though, due to problems in the age-old AmUnits interface units. To be fixed soon.
git-svn-id: trunk@28567 -
2014-08-31 17:54:00 +00:00
Károly Balogh
fb6d7ca1da amunits: MsgBox unit renamed to AMsgBox, conflicts with FV
git-svn-id: trunk@28566 -
2014-08-31 17:48:20 +00:00
Károly Balogh
6873588b0f FV: use DOSDelay() on all Amiga platforms
git-svn-id: trunk@28565 -
2014-08-31 17:41:01 +00:00
marcus
1c6696a7fe FP-IDE: restore bullet, destroyed in last commit
git-svn-id: trunk@28564 -
2014-08-31 17:30:45 +00:00
Károly Balogh
2001f6982d amunits: renamed keyboard.pas to akeyboard.pas to avoid name conflict with rtl-console/keyboard
git-svn-id: trunk@28563 -
2014-08-31 17:22:39 +00:00
Károly Balogh
832ac8332e amunits: renamed agraphics/Move to gfxMove to match other platforms and avoid the conflict with System.Move()
git-svn-id: trunk@28562 -
2014-08-31 17:21:58 +00:00
marcus
9b40b6dcc1 AROS: FP-IDE, System clipboard, execute programs/Shell, keycode Ctrl-A for Select All
git-svn-id: trunk@28561 -
2014-08-31 17:13:30 +00:00
florian
81c717fc06 + implemented tthumbcgarm.g_external_wrapper in a way which does not destroy lr
git-svn-id: trunk@28560 -
2014-08-31 16:35:01 +00:00
Károly Balogh
782baeca29 fpmkunit: Amiga, MorphOS and AROS are the AllAmigaLikeOSes
git-svn-id: trunk@28559 -
2014-08-31 16:34:12 +00:00
Károly Balogh
3a256424f7 amunits: even more PACKRECORDS 2 madness
git-svn-id: trunk@28558 -
2014-08-31 16:13:11 +00:00
Károly Balogh
55e2893f39 amunits: renamed Graphics unit to AGraphics to match AROS and MorphOS, added PACKRECORDS 2 at a few places
git-svn-id: trunk@28557 -
2014-08-31 15:55:54 +00:00
florian
3f18d85434 * create a thumb_func directive before .globl directives in assembler to prevent accidental changes of asm mode
git-svn-id: trunk@28556 -
2014-08-31 15:01:55 +00:00
Károly Balogh
1e86d2ba2f rtl-console: don't forget to open libraries on MorphOS
git-svn-id: trunk@28555 -
2014-08-31 14:59:05 +00:00
Károly Balogh
143d7d7dd4 rtl-console: unified AROS and MorphOS units except video (for now). but upgraded MorphOS' video unit to AROS level
git-svn-id: trunk@28554 -
2014-08-31 14:48:58 +00:00
Károly Balogh
4ae5441757 Amiga, MorphOS, AROS: renamed a constant named "SINGLE" in intuition unit and unified across all systems
git-svn-id: trunk@28553 -
2014-08-31 14:39:59 +00:00
marcus
49b0c18c53 AROS: rtl-console, fv, FP-IDE added
git-svn-id: trunk@28552 -
2014-08-31 13:48:16 +00:00
Károly Balogh
434e199f0b arosunits: removed the executable bit from some of the source files
git-svn-id: trunk@28551 -
2014-08-31 13:31:49 +00:00
Károly Balogh
bf35dae486 rtl-console: fixed TKeyEvent to TKeyRecord mapping on big endian systems
git-svn-id: trunk@28550 -
2014-08-31 13:17:53 +00:00
florian
dffdde7d53 * fixes reference handling for arm thumb and ldrb, not perfect yet and other ldr/str types might need similiar fixes
git-svn-id: trunk@28549 -
2014-08-31 11:37:17 +00:00
marcus
97831bed8a Amiga, AROS, MorphOS: Define in IncludeTrailingPathDelimiter changed to HASAMIGA
git-svn-id: trunk@28548 -
2014-08-31 06:46:17 +00:00
marcus
b962e61847 AROS: arosunits for aros system library units
git-svn-id: trunk@28547 -
2014-08-31 06:39:28 +00:00
florian
db01c50a4f * fixes jump table generate for arm thumb
git-svn-id: trunk@28546 -
2014-08-30 22:13:09 +00:00
sergei
a5958d6e5f * m68k: do not emit moves between same register, they end up in wrong code in some cases when register needs to be spilled (and entirely useless otherwise).
git-svn-id: trunk@28545 -
2014-08-30 22:00:54 +00:00
Károly Balogh
581e4ac28d + amunits, morphunits: added PUBLICSCREEN_F define, which was missing (verified against NDK3.9 and MorphOS SDK)
git-svn-id: trunk@28544 -
2014-08-30 21:40:22 +00:00
florian
d407d8ec7e * thumb has no mla instruction support
git-svn-id: trunk@28543 -
2014-08-30 20:42:40 +00:00
florian
836a6e46ca * several issues with interface wrappers for thumb fixed
git-svn-id: trunk@28542 -
2014-08-30 20:38:26 +00:00
marcus
5305a4d827 Amiga,AROS,MorphOS: IncludeTrailingPathDelimiter not adding DirectorySeparator after Driveseparator
git-svn-id: trunk@28541 -
2014-08-30 18:22:08 +00:00
florian
97fc823e33 * generate AND for small set comparions using the cg class, so it works for arm thumb as well
git-svn-id: trunk@28540 -
2014-08-30 18:02:59 +00:00
florian
64dafdb1de * stabn writing code simplified
* write 0 instead of "label-label" in stabn, arm thumb assemblers do not like "label-label", for other targets writing 0 should make no difference

git-svn-id: trunk@28539 -
2014-08-30 16:56:01 +00:00
florian
09728a9ae2 * improved r28534: LDR/STR on thumb do not support registers >r7 as destination/source
git-svn-id: trunk@28538 -
2014-08-30 12:13:00 +00:00
Károly Balogh
ef5f1b7ed2 amicommon: fixed sysdir.inc/do_chdir() to actually work on AROS
- fixed all Amiga-like system units to not leak the last directory
  lock while changing back to the original dir in System_exit;
  (a bug found by Marcus Sackrow, thanks!)
* renamed AOS_origDir to ASYS_origDir

git-svn-id: trunk@28537 -
2014-08-30 00:58:42 +00:00
sergei
1e11e34f42 + MIPS: implemented more peephole optimizations.
git-svn-id: trunk@28536 -
2014-08-29 18:20:49 +00:00
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