Commit a6d65423 authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Fix objasm 4 warnings. Enable (S|U)MULL/CLZ in math code.

Detail:
  s/longlong - The code has always had the ability to use CLZ & long multiply instructions, but it's never been enabled. The nonfunctional code to detect the CPU architecture at runtime has been disabled, and instead a fixed configuration is selected at compile time with the help of Hdr:CPU.Arch. Also added lots of ROUT's for safety.
  s/objmacs - Updated push/pop macros to make use of LDR/STR when only one register is to be transferred. This fixes a few objasm 4 warnings and should result in a speed boost where applicable.
Admin:
  Tested on rev A2 BB-xM.
  Different math code configurations tested briefly.


Version 5.61. Tagged as 'RISC_OSLib-5_61'
parent 14a49538
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.60"
Module_Version SETA 560
Module_MajorVersion SETS "5.61"
Module_Version SETA 561
Module_MinorVersion SETS ""
Module_Date SETS "06 Aug 2011"
Module_ApplicationDate SETS "06-Aug-11"
Module_Date SETS "24 Sep 2011"
Module_ApplicationDate SETS "24-Sep-11"
Module_ComponentName SETS "RISC_OSLib"
Module_ComponentPath SETS "castle/RiscOS/Sources/Lib/RISC_OSLib"
Module_FullVersion SETS "5.60"
Module_HelpVersion SETS "5.60 (06 Aug 2011)"
Module_FullVersion SETS "5.61"
Module_HelpVersion SETS "5.61 (24 Sep 2011)"
END
/* (5.60)
/* (5.61)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 5.60
#define Module_MajorVersion_CMHG 5.61
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 06 Aug 2011
#define Module_Date_CMHG 24 Sep 2011
#define Module_MajorVersion "5.60"
#define Module_Version 560
#define Module_MajorVersion "5.61"
#define Module_Version 561
#define Module_MinorVersion ""
#define Module_Date "06 Aug 2011"
#define Module_Date "24 Sep 2011"
#define Module_ApplicationDate "06-Aug-11"
#define Module_ApplicationDate "24-Sep-11"
#define Module_ComponentName "RISC_OSLib"
#define Module_ComponentPath "castle/RiscOS/Sources/Lib/RISC_OSLib"
#define Module_FullVersion "5.60"
#define Module_HelpVersion "5.60 (06 Aug 2011)"
#define Module_LibraryVersionInfo "5:60"
#define Module_FullVersion "5.61"
#define Module_HelpVersion "5.61 (24 Sep 2011)"
#define Module_LibraryVersionInfo "5:61"
This diff is collapsed.
......@@ -196,7 +196,11 @@ subs SETS subs:CC:ch
WEND
LDM$CC.FD ip,{$subs}$Caret
|
[ (count = 1) :LAND: ("$Caret"="")
LDR$CC $Regs,[$BaseReg,#-4]
|
LDM$CC.DB $BaseReg, {$Regs}$Caret
]
]
MEND
......@@ -238,7 +242,21 @@ subs SETS subs:CC:ch
WEND
LDM$CC.FD $BaseReg!,{$subs}$Caret
|
LCLS temps
LCLL onereg
temps SETS "$Regs"
onereg SETL "$Caret" = ""
WHILE onereg :LAND: :LEN: temps > 0
[ temps :LEFT: 1 = "," :LOR: temps :LEFT: 1 = "-"
onereg SETL {FALSE}
]
temps SETS temps :RIGHT: (:LEN: temps - 1)
WEND
[ onereg
LDR$CC $Regs, [$BaseReg], #4
|
LDM$CC.FD $BaseReg!, {$Regs}$Caret
]
]
MEND
......@@ -317,7 +335,21 @@ subs SETS subs:CC:ch
WEND
STMIA $Base!,{$subs}
|
LCLS temps
LCLL onereg
temps SETS "$Regs"
onereg SETL {TRUE}
WHILE onereg :LAND: :LEN: temps > 0
[ temps :LEFT: 1 = "," :LOR: temps :LEFT: 1 = "-"
onereg SETL {FALSE}
]
temps SETS temps :RIGHT: (:LEN: temps - 1)
WEND
[ onereg
STR $Regs, [$Base], #4
|
STMIA $Base!, {$Regs}
]
]
MEND
......@@ -358,7 +390,21 @@ subs SETS ch:CC:subs
WEND
LDMDB $Base!,{$subs}
|
LCLS temps
LCLL onereg
temps SETS "$Regs"
onereg SETL {TRUE}
WHILE onereg :LAND: :LEN: temps > 0
[ temps :LEFT: 1 = "," :LOR: temps :LEFT: 1 = "-"
onereg SETL {FALSE}
]
temps SETS temps :RIGHT: (:LEN: temps - 1)
WEND
[ onereg
LDR $Regs, [$Base,#-4]!
|
LDMDB $Base!, {$Regs}
]
]
MEND
......@@ -403,7 +449,21 @@ subs SETS ch:CC:subs
WEND
STMFD $BaseReg!,{$subs}
|
LCLS temps
LCLL onereg
temps SETS "$Regs"
onereg SETL {TRUE}
WHILE onereg :LAND: :LEN: temps > 0
[ temps :LEFT: 1 = "," :LOR: temps :LEFT: 1 = "-"
onereg SETL {FALSE}
]
temps SETS temps :RIGHT: (:LEN: temps - 1)
WEND
[ onereg
STR $Regs, [$BaseReg,#-4]!
|
STMFD $BaseReg!, {$Regs}
]
]
MEND
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment