.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/clisp?expand=0&rev=68
This commit is contained in:
parent
503bf5dc8f
commit
47cbd9f605
@ -1,14 +1,14 @@
|
||||
---
|
||||
clisp-536a48a9/configure | 4 ++--
|
||||
clisp-536a48a9/src/lispbibl.d | 16 +++++++++++-----
|
||||
clisp-536a48a9/src/makemake.in | 16 +++++++++++++---
|
||||
clisp-536a48a9/utils/modprep.lisp | 2 +-
|
||||
4 files changed, 27 insertions(+), 11 deletions(-)
|
||||
clisp-9c43d428/configure | 4 ++--
|
||||
clisp-9c43d428/src/lispbibl.d | 16 +++++++++++-----
|
||||
clisp-9c43d428/src/makemake.in | 15 ++++++++++++---
|
||||
clisp-9c43d428/utils/modprep.lisp | 2 +-
|
||||
4 files changed, 26 insertions(+), 11 deletions(-)
|
||||
|
||||
--- clisp-536a48a9/configure
|
||||
+++ clisp-536a48a9/configure 2016-11-29 16:47:05.962094941 +0000
|
||||
@@ -392,11 +392,11 @@ do
|
||||
passnext=both ;;
|
||||
--- clisp-9c43d428/configure
|
||||
+++ clisp-9c43d428/configure 2017-07-27 12:30:20.772795623 +0000
|
||||
@@ -405,11 +405,11 @@ do
|
||||
passnext=makemake ;;
|
||||
|
||||
--vimdir=* | --vimdi=* | --vimd=* | --vim=* | --vi=*)
|
||||
- subdir_configure_args="$subdir_configure_args $arg"
|
||||
@ -21,9 +21,9 @@
|
||||
makemake_args="$makemake_args --vimdir="
|
||||
prev=vimdir
|
||||
passnext=both ;;
|
||||
--- clisp-536a48a9/src/lispbibl.d
|
||||
+++ clisp-536a48a9/src/lispbibl.d 2016-11-29 16:47:05.966094859 +0000
|
||||
@@ -66,7 +66,7 @@
|
||||
--- clisp-9c43d428/src/lispbibl.d
|
||||
+++ clisp-9c43d428/src/lispbibl.d 2017-07-27 12:22:29.421471307 +0000
|
||||
@@ -175,7 +175,7 @@
|
||||
#define PC386 /* IBMPC-compatible with 80386/80486-processor */
|
||||
#endif
|
||||
#ifdef GENERIC_UNIX
|
||||
@ -32,7 +32,7 @@
|
||||
#define PC386
|
||||
#endif
|
||||
#if (defined(sun) && defined(unix) && defined(sparc))
|
||||
@@ -167,8 +167,14 @@
|
||||
@@ -278,8 +278,14 @@
|
||||
#endif
|
||||
#ifdef GENERIC_UNIX
|
||||
#define UNIX
|
||||
@ -48,7 +48,7 @@
|
||||
#endif
|
||||
#ifdef __GNU__
|
||||
#define UNIX_HURD /* the GNU system (Hurd + glibc) */
|
||||
@@ -1110,7 +1116,7 @@ typedef signed int signean;
|
||||
@@ -1231,7 +1237,7 @@ typedef signed int signean;
|
||||
address of its component 'ident' and return it as number: */
|
||||
#include <stddef.h>
|
||||
#ifndef offsetof
|
||||
@ -57,7 +57,7 @@
|
||||
#endif
|
||||
/* Determine the offset of an array 'ident' in a struct of the type 'type': */
|
||||
#if defined(__cplusplus) || defined(MICROSOFT)
|
||||
@@ -3148,9 +3154,9 @@ typedef signed_int_with_n_bits(intVsize)
|
||||
@@ -3433,9 +3439,9 @@ typedef signed_int_with_n_bits(intVsize)
|
||||
type_data_object(type,data) */
|
||||
#if defined(WIDE) && defined(WIDE_STRUCT)
|
||||
#if BIG_ENDIAN_P==WIDE_ENDIANNESS
|
||||
@ -69,9 +69,9 @@
|
||||
#endif
|
||||
#elif !(oint_addr_shift==0)
|
||||
#define type_data_object(type,data) \
|
||||
--- clisp-536a48a9/src/makemake.in
|
||||
+++ clisp-536a48a9/src/makemake.in 2016-12-05 15:16:19.800662503 +0000
|
||||
@@ -246,6 +246,9 @@ verbose=${CLISP_MAKEMAKE_VERBOSE:-false}
|
||||
--- clisp-9c43d428/src/makemake.in
|
||||
+++ clisp-9c43d428/src/makemake.in 2017-07-27 12:29:06.778157626 +0000
|
||||
@@ -250,6 +250,9 @@ verbose=${CLISP_MAKEMAKE_VERBOSE:-false}
|
||||
# Handle --with-... arguments
|
||||
while test -z "$endofargs"; do
|
||||
case "$1" in
|
||||
@ -81,7 +81,7 @@
|
||||
-verb* | --verb* )
|
||||
verbose=`echol "$1"|sed 's/-*v[^=]*=*//'`
|
||||
test -n "${verbose}" || verbose=true
|
||||
@@ -1115,6 +1118,7 @@ else
|
||||
@@ -1147,6 +1150,7 @@ else
|
||||
fi
|
||||
|
||||
# Main cpu dependencies:
|
||||
@ -89,15 +89,15 @@
|
||||
cpu=$host_cpu_c_abi
|
||||
if test -z "$cpu"; then
|
||||
echo "$0: WARNING: host_cpu_c_abi is void; using host_cpu=${host_cpu}" >&2
|
||||
@@ -1125,6 +1129,7 @@ if test -z "$cpu"; then
|
||||
* ) cpu=${host_cpu}
|
||||
@@ -1157,6 +1161,7 @@ if test -z "$cpu"; then
|
||||
* ) cpu=${host_cpu} ;;
|
||||
esac
|
||||
fi
|
||||
+set +x
|
||||
|
||||
test "${verbose}" = true -o "${verbose}" = yes && \
|
||||
cat <<EOF >&2
|
||||
@@ -1240,7 +1245,7 @@ if [ $XCC_GCC = true ] ; then
|
||||
@@ -1293,7 +1298,7 @@ if [ $XCC_GCC = true ] ; then
|
||||
fi
|
||||
# For platforms that use global register variables...
|
||||
case "$cpu" in
|
||||
@ -106,27 +106,26 @@
|
||||
if [ $CROSS = false ] ; then
|
||||
case "$XCC_GCC_VERSION" in
|
||||
3.1*)
|
||||
@@ -1272,6 +1277,10 @@ if [ $XCC_GCC = true ] ; then
|
||||
@@ -1333,6 +1338,9 @@ if [ $XCC_GCC = true ] ; then
|
||||
XCFLAGS=${XCFLAGS}" -pthread"
|
||||
fi
|
||||
|
||||
+ if [ -n "${MYCFLAGS}" ] ; then
|
||||
+ XCFLAGS=$XCFLAGS' ${MYCFLAGS} '
|
||||
+ fi
|
||||
+
|
||||
else
|
||||
|
||||
if [ $TSYS = sun4 -a $CROSS = false ] ; then
|
||||
@@ -1602,7 +1611,7 @@ if [ "$cpu" = hppa ] ; then
|
||||
ARI_ASMD=$ARI_ASMD' arihppa'
|
||||
ARI_ASMS=$ARI_ASMS' arihppa'
|
||||
fi
|
||||
-if [ "$cpu" = arm ] ; then
|
||||
+if [ "$cpu" = arm -o "$cpu" = armel ] ; then
|
||||
ARI_ASMD=$ARI_ASMD' ariarm'
|
||||
ARI_ASMS=$ARI_ASMS' ariarm'
|
||||
fi
|
||||
@@ -3417,8 +3426,9 @@ if [ $CROSS = false ] ; then
|
||||
if [ $CROSS = false ] ; then
|
||||
@@ -1714,7 +1722,7 @@ if [ "${enable_portability}" = no ] ; th
|
||||
ARI_ASMD=$ARI_ASMD' arihppa'
|
||||
ARI_ASMS=$ARI_ASMS' arihppa'
|
||||
fi
|
||||
- if [ "$cpu" = arm -o "$cpu" = armhf ] ; then
|
||||
+ if [ "$cpu" = arm -o "$cpu" = armhf -o "$cpu" = armel ] ; then
|
||||
ARI_ASMD=$ARI_ASMD' ariarm'
|
||||
ARI_ASMS=$ARI_ASMS' ariarm'
|
||||
fi
|
||||
@@ -3559,8 +3567,9 @@ if [ $CROSS = false ] ; then
|
||||
echol
|
||||
if [ "${with_dynamic_modules}" != no ]; then
|
||||
depends="full install-modules force"
|
||||
@ -137,8 +136,8 @@
|
||||
echotab "mkdir -p \$(DESTDIR)\$(lisplibdir)/dynmod"
|
||||
echotab "DESTDIR=\`cd \"\$(DESTDIR)\$(lisplibdir)\"; pwd\` CLISP='./clisp -q -norc' ./clisp-link install \$(MODULES)"
|
||||
echol
|
||||
--- clisp-536a48a9/utils/modprep.lisp
|
||||
+++ clisp-536a48a9/utils/modprep.lisp 2016-11-29 16:47:05.970094777 +0000
|
||||
--- clisp-9c43d428/utils/modprep.lisp
|
||||
+++ clisp-9c43d428/utils/modprep.lisp 2017-07-27 12:22:29.421471307 +0000
|
||||
@@ -327,7 +327,7 @@ FOO(bar,baz,zot) ==> FOO; (bar baz zot);
|
||||
((or (char= cc #\_) (char= cc #\-)) (write-char #\_ out))
|
||||
(t (format out "_~2,'0x" (char-code cc))))))
|
||||
|
@ -1,6 +1,9 @@
|
||||
|
||||
|
||||
diff --git a/utils/gctrigger.c b/utils/gctrigger.c
|
||||
--- a/utils/gctrigger.c
|
||||
+++ b/utils/gctrigger.c
|
||||
@@ -599,6 +599,7 @@ static inline void VectorToken_delete (V
|
||||
@@ -601,6 +601,7 @@ static inline void VectorToken_delete (V
|
||||
static Token nexttoken (boolean within_prep_directive)
|
||||
{
|
||||
Token token;
|
||||
|
@ -1,10 +1,9 @@
|
||||
---
|
||||
src/aclocal.m4 | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
|
||||
diff --git a/src/aclocal.m4 b/src/aclocal.m4
|
||||
--- a/src/aclocal.m4
|
||||
+++ b/src/aclocal.m4
|
||||
@@ -6133,7 +6133,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
|
||||
@@ -7517,7 +7517,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
|
||||
dnl When using libtool, the option that works for both libraries and
|
||||
dnl executables is -R. The -R options are cumulative.
|
||||
for found_dir in $ltrpathdirs; do
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:16eadeffd644df4ef5a345a8c99c0906f21621f6410ad0bfeb74d1a4a1c1d07c
|
||||
size 8316374
|
3
clisp-9c43d428.tar.bz2
Normal file
3
clisp-9c43d428.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2b2f97c69b2800887fe6773c7f27e958c927bb1f2747d4603973cf3dab9dd062
|
||||
size 8659436
|
180
clisp-arm.patch
180
clisp-arm.patch
@ -1,6 +1,10 @@
|
||||
--- src/ariarm.d.orig Fri May 04 01:04:01 2012 -0400
|
||||
+++ src/ariarm.d Thu May 24 16:48:47 2012 -0600
|
||||
@@ -86,7 +86,7 @@
|
||||
---
|
||||
src/ariarm.d | 204 +++++++++++++++++++++++++++++------------------------------
|
||||
1 file changed, 102 insertions(+), 102 deletions(-)
|
||||
|
||||
--- src/ariarm.d
|
||||
+++ src/ariarm.d 2017-07-27 12:37:05.517339862 +0000
|
||||
@@ -86,7 +86,7 @@ pc .req r15
|
||||
|
||||
#define C(x) x
|
||||
#define EXPORT(x) .global x
|
||||
@ -9,7 +13,7 @@
|
||||
#define LABEL(x) x:
|
||||
#define RRX rrx
|
||||
#define END
|
||||
@@ -187,7 +187,7 @@
|
||||
@@ -187,7 +187,7 @@ GLABEL(mulu32_)
|
||||
LDR a3,[pc,#ptr_mulu32_high-.-8]
|
||||
STR a2,[a3,#0]
|
||||
#endif
|
||||
@ -18,7 +22,7 @@
|
||||
|
||||
/* extern uint16 divu_3216_1616_ (uint32 x, uint16 y);
|
||||
entry
|
||||
@@ -243,7 +243,7 @@
|
||||
@@ -243,7 +243,7 @@ GLABEL(divu_3216_1616_)
|
||||
LDR a3,[pc,#ptr_divu_16_rest-.-8] /* save rest so can be picked up later */
|
||||
STR a2,[a3,#0] /* the result is 16 bits */
|
||||
#endif
|
||||
@ -27,7 +31,7 @@
|
||||
|
||||
/* extern uint32 divu_6432_3232_ (uint32 xhi, uint32 xlo, uint32 y); | -> Quotient q
|
||||
extern uint32 divu_32_rest; | -> Rest r
|
||||
@@ -278,7 +278,7 @@
|
||||
@@ -278,7 +278,7 @@ GLABEL(divu_6432_3232_)
|
||||
LDR a4,[pc,#ptr_divu_32_rest-.-8]
|
||||
STR a2,[a4,#0] /* divu_32_rest = remainder */
|
||||
#endif
|
||||
@ -36,7 +40,7 @@
|
||||
|
||||
LABEL(divu_6432_3232_l1)
|
||||
MOV v3, #0 /* s = 0 */
|
||||
@@ -346,7 +346,7 @@
|
||||
@@ -346,7 +346,7 @@ LABEL(divu_6432_3232_l1)
|
||||
LDR a3,[pc,#ptr_divu_32_rest-.-8]
|
||||
STR a2,[a3,#0] /* divu_32_rest = remainder */
|
||||
#endif
|
||||
@ -45,7 +49,7 @@
|
||||
|
||||
/* extern uintD* copy_loop_up (uintD* sourceptr, uintD* destptr, uintC count);
|
||||
entry
|
||||
@@ -370,7 +370,7 @@
|
||||
@@ -370,7 +370,7 @@ GLABEL(copy_loop_up)
|
||||
LABEL(copy_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,a2 /* return addr of last word stored */
|
||||
@ -54,7 +58,7 @@
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
LABEL(copy_loop_up_l2)
|
||||
LDMIA a1!,{a3,v1,ip,lr} /* copy 4 words in one go */
|
||||
@@ -380,7 +380,7 @@
|
||||
@@ -380,7 +380,7 @@ LABEL(copy_loop_up_l2)
|
||||
STMGEIA a2!,{a3,v1,ip,lr} /* 4 more words */
|
||||
BGT copy_loop_up_l2 /* and loop */
|
||||
MOV a1,a2 /* return addr of last word stored */
|
||||
@ -63,7 +67,7 @@
|
||||
|
||||
/* extern uintD* copy_loop_down (uintD* sourceptr, uintD* destptr, uintC count);
|
||||
entry
|
||||
@@ -404,7 +404,7 @@
|
||||
@@ -404,7 +404,7 @@ GLABEL(copy_loop_down)
|
||||
LABEL(copy_loop_down_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,a2 /* return addr of last word stored */
|
||||
@ -72,7 +76,7 @@
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
LABEL(copy_loop_down_l2)
|
||||
LDMDB a1!,{a3,v1,ip,lr} /* copy 4 words in one go */
|
||||
@@ -414,7 +414,7 @@
|
||||
@@ -414,7 +414,7 @@ LABEL(copy_loop_down_l2)
|
||||
STMGEDB a2!,{a3,v1,ip,lr} /* 4 more words */
|
||||
BGT copy_loop_down_l2 /* and loop */
|
||||
MOV a1,a2 /* return addr of last word stored */
|
||||
@ -81,7 +85,7 @@
|
||||
|
||||
/* extern uintD* clear_loop_up (uintD* destptr, uintC count);
|
||||
entry
|
||||
@@ -446,7 +446,7 @@
|
||||
@@ -446,7 +446,7 @@ GLABEL(fill_loop_up)
|
||||
STRGT a3,[a1],#4
|
||||
LABEL(fill_loop_up_l1)
|
||||
BICS a4,a2,#3 /* set counter to multiple of 4 */
|
||||
@ -90,7 +94,7 @@
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
MOV v1,a3 /* copy filler to three other */
|
||||
MOV ip,a3 /* registers */
|
||||
@@ -456,7 +456,7 @@
|
||||
@@ -456,7 +456,7 @@ LABEL(fill_loop_up_l2)
|
||||
SUBS a4,a4,#8 /* decrement counter by 8 */
|
||||
STMGEIA a1!,{a3,v1,ip,lr} /* if count still positive then store 4 */
|
||||
BGT fill_loop_up_l2 /* more and loop */
|
||||
@ -99,7 +103,7 @@
|
||||
|
||||
|
||||
/* extern uintD* clear_loop_down (uintD* destptr, uintC count);
|
||||
@@ -489,7 +489,7 @@
|
||||
@@ -489,7 +489,7 @@ GLABEL(fill_loop_down)
|
||||
STRGT a3,[a1,#-4]!
|
||||
LABEL(fill_loop_down_l1)
|
||||
BICS a4,a2,#3 /* set counter to multiple of 4 */
|
||||
@ -108,7 +112,7 @@
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
MOV v1,a3 /* copy filler to three other */
|
||||
MOV ip,a3 /* registers */
|
||||
@@ -499,7 +499,7 @@
|
||||
@@ -499,7 +499,7 @@ LABEL(fill_loop_down_l2)
|
||||
SUBS a4,a4,#8 /* decrement counter by 8 */
|
||||
STMGEDB a1!,{a3,v1,ip,lr} /* if count still positive then store 4 */
|
||||
BGT fill_loop_down_l2 /* more and loop */
|
||||
@ -117,7 +121,7 @@
|
||||
|
||||
/* extern void or_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -529,7 +529,7 @@
|
||||
@@ -529,7 +529,7 @@ GLABEL(or_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(or_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -126,7 +130,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(or_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -541,7 +541,7 @@
|
||||
@@ -541,7 +541,7 @@ LABEL(or_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT or_loop_up_l2 /* if count still positive then loop */
|
||||
@ -135,7 +139,7 @@
|
||||
|
||||
/* extern void xor_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -571,7 +571,7 @@
|
||||
@@ -571,7 +571,7 @@ GLABEL(xor_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(xor_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -144,7 +148,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(xor_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -583,7 +583,7 @@
|
||||
@@ -583,7 +583,7 @@ LABEL(xor_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT xor_loop_up_l2 /* if count still positive then loop */
|
||||
@ -153,7 +157,7 @@
|
||||
|
||||
/* extern void and_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -613,7 +613,7 @@
|
||||
@@ -613,7 +613,7 @@ GLABEL(and_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(and_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -162,7 +166,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(and_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -625,7 +625,7 @@
|
||||
@@ -625,7 +625,7 @@ LABEL(and_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT and_loop_up_l2 /* if count still positive then loop */
|
||||
@ -171,7 +175,7 @@
|
||||
|
||||
/* extern void eqv_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -659,7 +659,7 @@
|
||||
@@ -659,7 +659,7 @@ GLABEL(eqv_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(eqv_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -180,7 +184,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(eqv_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -675,7 +675,7 @@
|
||||
@@ -675,7 +675,7 @@ LABEL(eqv_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT eqv_loop_up_l2 /* if count still positive then loop */
|
||||
@ -189,7 +193,7 @@
|
||||
|
||||
/* extern void nand_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -709,7 +709,7 @@
|
||||
@@ -709,7 +709,7 @@ GLABEL(nand_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(nand_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -198,7 +202,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(nand_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -725,7 +725,7 @@
|
||||
@@ -725,7 +725,7 @@ LABEL(nand_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT nand_loop_up_l2 /* if count still positive then loop */
|
||||
@ -207,7 +211,7 @@
|
||||
|
||||
/* extern void nor_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -759,7 +759,7 @@
|
||||
@@ -759,7 +759,7 @@ GLABEL(nor_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(nor_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -216,7 +220,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(nor_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -775,7 +775,7 @@
|
||||
@@ -775,7 +775,7 @@ LABEL(nor_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT nor_loop_up_l2 /* if count still positive then loop */
|
||||
@ -225,7 +229,7 @@
|
||||
|
||||
/* extern void andc2_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -805,7 +805,7 @@
|
||||
@@ -805,7 +805,7 @@ GLABEL(andc2_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(andc2_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -234,7 +238,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(andc2_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -817,7 +817,7 @@
|
||||
@@ -817,7 +817,7 @@ LABEL(andc2_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT andc2_loop_up_l2 /* if count still positive then loop */
|
||||
@ -243,7 +247,7 @@
|
||||
|
||||
/* extern void orc2_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -851,7 +851,7 @@
|
||||
@@ -851,7 +851,7 @@ GLABEL(orc2_loop_up)
|
||||
STRGT ip,[a1],#4
|
||||
LABEL(orc2_loop_up_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
@ -252,7 +256,7 @@
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(orc2_loop_up_l2)
|
||||
LDMIA a2!,{a3,v1,v2,ip} /* load 4 words in one go */
|
||||
@@ -867,7 +867,7 @@
|
||||
@@ -867,7 +867,7 @@ LABEL(orc2_loop_up_l2)
|
||||
STMIA a1!,{v3,v4,v5,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT orc2_loop_up_l2 /* if count still positive then loop */
|
||||
@ -261,7 +265,7 @@
|
||||
|
||||
/* extern void not_loop_up (uintD* xptr, uintC count);
|
||||
entry
|
||||
@@ -893,7 +893,7 @@
|
||||
@@ -893,7 +893,7 @@ GLABEL(not_loop_up)
|
||||
STRGT a3,[a1],#4
|
||||
LABEL(not_loop_up_l1)
|
||||
BICS a4,a2,#3 /* set counter to multiple of 4 */
|
||||
@ -270,7 +274,7 @@
|
||||
STMFD sp!,{lr} /* save work regs */
|
||||
LABEL(not_loop_up_l2)
|
||||
LDMIA a1,{a2,a3,ip,lr} /* load 4 words in one go,NO writeback */
|
||||
@@ -904,7 +904,7 @@
|
||||
@@ -904,7 +904,7 @@ LABEL(not_loop_up_l2)
|
||||
STMIA a1!,{a2,a3,ip,lr} /* store 4 results */
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT not_loop_up_l2 /* if count still positive then loop */
|
||||
@ -279,7 +283,7 @@
|
||||
|
||||
/* extern void and_test_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -923,13 +923,13 @@
|
||||
@@ -923,13 +923,13 @@ GLABEL(and_test_loop_up)
|
||||
LDR ip,[a1],#4 /* to align the total to a multiple */
|
||||
TST ip,a4 /* of 4 words */
|
||||
MOVNE a1,#1 /* return true if AND_TEST ok */
|
||||
@ -295,7 +299,7 @@
|
||||
ANDS a4,a3,#3
|
||||
CMP a4,#2
|
||||
BLE and_test_loop_up_l1 /* better to branch than skip instrs. */
|
||||
@@ -937,11 +937,11 @@
|
||||
@@ -937,11 +937,11 @@ GLABEL(and_test_loop_up)
|
||||
LDRGT ip,[a1],#4
|
||||
TSTGT ip,a4
|
||||
MOVNE a1,#1
|
||||
@ -309,7 +313,7 @@
|
||||
STMFD sp!,{v1-v6,lr} /* save work regs */
|
||||
MOV v6,a1 /* move xptr to v6 */
|
||||
MOV a1,#1 /* set result to true */
|
||||
@@ -952,11 +952,11 @@
|
||||
@@ -952,11 +952,11 @@ LABEL(and_test_loop_up_l2)
|
||||
TSTEQ v4,v1
|
||||
TSTEQ v5,v2
|
||||
TSTEQ lr,ip
|
||||
@ -323,7 +327,7 @@
|
||||
|
||||
/* extern void test_loop_up (uintD* xptr, uintC count);
|
||||
entry
|
||||
@@ -973,21 +973,21 @@
|
||||
@@ -973,21 +973,21 @@ GLABEL(test_loop_up)
|
||||
BEQ test_loop_up_l1 /* yup, so branch */
|
||||
LDR a4,[ip],#4 /* TEST the first 1-3 words */
|
||||
TEQ a4,#0 /* align the total to a multiple of 4 */
|
||||
@ -349,7 +353,7 @@
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
LABEL(test_loop_up_l2)
|
||||
LDMIA ip!,{a2,a3,v1,lr} /* load 4 words in one go */
|
||||
@@ -995,11 +995,11 @@
|
||||
@@ -995,11 +995,11 @@ LABEL(test_loop_up_l2)
|
||||
TEQEQ a3,#0
|
||||
TEQEQ v1,#0
|
||||
TEQEQ lr,#0
|
||||
@ -363,7 +367,7 @@
|
||||
|
||||
/* extern void compare_loop_up (uintD* xptr, uintD* yptr, uintC count);
|
||||
entry
|
||||
@@ -1021,7 +1021,7 @@
|
||||
@@ -1021,7 +1021,7 @@ GLABEL(compare_loop_up)
|
||||
CMP ip,a4 /* of 4 words */
|
||||
MVNLO a1,#0 /* x < y -> -1 */
|
||||
MOVHI a1,#1 /* x > y -> +1 */
|
||||
@ -372,7 +376,7 @@
|
||||
ANDS a4,a3,#3
|
||||
CMP a4,#2
|
||||
BLT compare_loop_up_l1 /* need to branch 'cos PSR used */
|
||||
@@ -1030,7 +1030,7 @@
|
||||
@@ -1030,7 +1030,7 @@ GLABEL(compare_loop_up)
|
||||
CMP ip,a4
|
||||
MVNLO a1,#0
|
||||
MOVHI a1,#1
|
||||
@ -381,7 +385,7 @@
|
||||
ANDS a4,a3,#3
|
||||
CMP a4,#2
|
||||
BLE compare_loop_up_l1 /* need to branch 'cos PSR used */
|
||||
@@ -1039,11 +1039,11 @@
|
||||
@@ -1039,11 +1039,11 @@ GLABEL(compare_loop_up)
|
||||
CMP ip,a4
|
||||
MVNLO a1,#0
|
||||
MOVHI a1,#1
|
||||
@ -395,7 +399,7 @@
|
||||
STMFD sp!,{v1-v6,lr} /* save work regs */
|
||||
MOV v6,a1 /* move xptr to v6 */
|
||||
MOV a1,#1 /* set result to +1 */
|
||||
@@ -1055,11 +1055,11 @@
|
||||
@@ -1055,11 +1055,11 @@ LABEL(compare_loop_up_l2)
|
||||
CMPEQ v5,v2
|
||||
CMPEQ lr,ip
|
||||
MVNLO a1,#0 /* x < y -> -1 (a1 already holds +1) */
|
||||
@ -409,7 +413,7 @@
|
||||
|
||||
/* extern uintD addto_loop_down (uintD* sourceptr, uintD* destptr, uintC count);
|
||||
entry
|
||||
@@ -1111,11 +1111,11 @@
|
||||
@@ -1111,11 +1111,11 @@ LABEL(add_loop_down_l0) /* at l
|
||||
BICS a4,a4,#3 /* set counter to multiple of 4 */
|
||||
BNE add_loop_down_l3 /* branch if more adds to do */
|
||||
ADCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -423,7 +427,7 @@
|
||||
CMN a4,#0 /* clear carry bit */
|
||||
STMFD sp!,{v6,lr}
|
||||
LABEL(add_loop_down_l3)
|
||||
@@ -1132,7 +1132,7 @@
|
||||
@@ -1132,7 +1132,7 @@ LABEL(add_loop_down_l2)
|
||||
TEQ a4,#0 /* are we done ? */
|
||||
BNE add_loop_down_l2 /* if count non-zero then loop */
|
||||
ADC a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -432,7 +436,7 @@
|
||||
|
||||
/* extern uintD inc_loop_down (uintD* ptr, uintC count);
|
||||
entry
|
||||
@@ -1150,11 +1150,11 @@
|
||||
@@ -1150,11 +1150,11 @@ GLABEL(inc_loop_down)
|
||||
ADDS a4,a4,#1 /* align the total to a multiple of 2 */
|
||||
STR a4,[a1]
|
||||
MOVNE a1,#0 /* set result to 0 */
|
||||
@ -446,7 +450,7 @@
|
||||
MOV ip,a1 /* move ptr to ip */
|
||||
MOV a1,#0 /* set result to 0 */
|
||||
ANDS a3,a4,#3
|
||||
@@ -1163,10 +1163,10 @@
|
||||
@@ -1163,10 +1163,10 @@ LABEL(inc_loop_down_l1)
|
||||
ADDS a3,a3,#1 /* INC the two words */
|
||||
ADDEQS a2,a2,#1 /* stopping when first word non-zero */
|
||||
STMDB ip!,{a2,a3} /* store 2 results */
|
||||
@ -459,7 +463,7 @@
|
||||
LABEL(inc_loop_down_l3) /* now a multiple of 4 words */
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
LABEL(inc_loop_down_l2)
|
||||
@@ -1176,11 +1176,11 @@
|
||||
@@ -1176,11 +1176,11 @@ LABEL(inc_loop_down_l2)
|
||||
ADDEQS a3,a3,#1
|
||||
ADDEQS a2,a2,#1
|
||||
STMDB ip!,{a2,a3,v1,lr} /* store 4 results */
|
||||
@ -473,7 +477,7 @@
|
||||
|
||||
/* extern uintD sub_loop_down (uintD* sourceptr1, uintD* sourceptr2, uintD* destptr, uintC count);
|
||||
entry
|
||||
@@ -1206,7 +1206,7 @@
|
||||
@@ -1206,7 +1206,7 @@ GLABEL(sub_loop_down)
|
||||
LABEL(sub_loop_down_l4) /* drop through for better instr. timings */
|
||||
BICS a4,a4,#3 /* set counter to multiple of 4 */
|
||||
SBCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -482,7 +486,7 @@
|
||||
STMFD sp!,{v1-v5} /* save work regs */
|
||||
B sub_loop_down_l2 /* branch if more subtracts to do */
|
||||
LABEL(sub_loop_down_l0)
|
||||
@@ -1224,7 +1224,7 @@
|
||||
@@ -1224,7 +1224,7 @@ LABEL(sub_loop_down_l0)
|
||||
LABEL(sub_loop_down_l1)
|
||||
BICS a4,a4,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,#0 /* no subtracts, so C = 0 */
|
||||
@ -491,7 +495,7 @@
|
||||
CMP a4,#0 /* set carry bit, since a4 > 0 */
|
||||
STMFD sp!,{v1-v6,lr} /* save work regs */
|
||||
LABEL(sub_loop_down_l2)
|
||||
@@ -1239,7 +1239,7 @@
|
||||
@@ -1239,7 +1239,7 @@ LABEL(sub_loop_down_l2)
|
||||
TEQ a4,#0 /* are we done ? */
|
||||
BNE sub_loop_down_l2 /* if count non-zero then loop */
|
||||
SBC a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -500,7 +504,7 @@
|
||||
|
||||
/* extern uintD subx_loop_down (uintD* sourceptr1, uintD* sourceptr2, uintD* destptr, uintC count, uintD carry);
|
||||
entry
|
||||
@@ -1269,7 +1269,7 @@
|
||||
@@ -1269,7 +1269,7 @@ LABEL(subx_loop_down_lsub)
|
||||
LABEL(subx_loop_down_l4) /* drop through for better instr. timings */
|
||||
BICS a4,a4,#3 /* set counter to multiple of 4 */
|
||||
SBCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -509,7 +513,7 @@
|
||||
STMFD sp!,{v1-v5} /* save work regs */
|
||||
B subx_loop_down_l2 /* branch if more subtracts to do */
|
||||
LABEL(subx_loop_down_l0)
|
||||
@@ -1287,7 +1287,7 @@
|
||||
@@ -1287,7 +1287,7 @@ LABEL(subx_loop_down_l0)
|
||||
LABEL(subx_loop_down_l1)
|
||||
BICS a4,a4,#3 /* set counter to multiple of 4 */
|
||||
SBCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -518,7 +522,7 @@
|
||||
STMFD sp!,{v1-v6,lr} /* save work regs */
|
||||
LABEL(subx_loop_down_l2)
|
||||
LDMDB a2!,{v1,v2,v3,ip} /* load 4 words in one go */
|
||||
@@ -1301,7 +1301,7 @@
|
||||
@@ -1301,7 +1301,7 @@ LABEL(subx_loop_down_l2)
|
||||
TEQ a4,#0 /* are we done ? */
|
||||
BNE subx_loop_down_l2 /* if count non-zero then loop */
|
||||
SBC a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -527,7 +531,7 @@
|
||||
|
||||
/* extern uintD subfrom_loop_down (uintD* sourceptr, uintD* destptr, uintC count);
|
||||
entry
|
||||
@@ -1326,7 +1326,7 @@
|
||||
@@ -1326,7 +1326,7 @@ GLABEL(subfrom_loop_down)
|
||||
LABEL(subfrom_loop_down_l4) /* drop through for better instr. timings */
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
SBCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -536,7 +540,7 @@
|
||||
STMFD sp!,{v1-v5} /* save work regs */
|
||||
B subfrom_loop_down_l2 /* branch if more subtracts to do */
|
||||
LABEL(subfrom_loop_down_l0)
|
||||
@@ -1344,7 +1344,7 @@
|
||||
@@ -1344,7 +1344,7 @@ LABEL(subfrom_loop_down_l0)
|
||||
LABEL(subfrom_loop_down_l1)
|
||||
BICS a4,a3,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,#0 /* no subtracts, so C = 0 */
|
||||
@ -545,7 +549,7 @@
|
||||
CMP a4,#0 /* set carry bit, since a4 > 0 */
|
||||
STMFD sp!,{v1-v5,lr} /* save work regs */
|
||||
LABEL(subfrom_loop_down_l2)
|
||||
@@ -1359,7 +1359,7 @@
|
||||
@@ -1359,7 +1359,7 @@ LABEL(subfrom_loop_down_l2)
|
||||
TEQ a4,#0 /* are we done ? */
|
||||
BNE subfrom_loop_down_l2 /* if count non-zero then loop */
|
||||
SBC a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -554,7 +558,7 @@
|
||||
|
||||
/* extern uintD dec_loop_down (uintD* ptr, uintC count);
|
||||
entry
|
||||
@@ -1377,11 +1377,11 @@
|
||||
@@ -1377,11 +1377,11 @@ GLABEL(dec_loop_down)
|
||||
SUBS a4,a4,#1 /* align the total to a multiple of 2 */
|
||||
STR a4,[a1]
|
||||
MOVCS a1,#0 /* set result to 0 */
|
||||
@ -568,7 +572,7 @@
|
||||
MOV ip,a1 /* move ptr to ip */
|
||||
MOV a1,#0 /* set result to 0 */
|
||||
ANDS a3,a4,#3
|
||||
@@ -1390,10 +1390,10 @@
|
||||
@@ -1390,10 +1390,10 @@ LABEL(dec_loop_down_l1)
|
||||
SUBS a3,a3,#1 /* DEC the two words */
|
||||
SUBCCS a2,a2,#1 /* stopping when first word non-zero */
|
||||
STMDB ip!,{a2,a3} /* store 2 results */
|
||||
@ -581,7 +585,7 @@
|
||||
LABEL(dec_loop_down_l3) /* now a multiple of 4 words */
|
||||
STMFD sp!,{v1,lr} /* save work regs */
|
||||
LABEL(dec_loop_down_l2)
|
||||
@@ -1403,11 +1403,11 @@
|
||||
@@ -1403,11 +1403,11 @@ LABEL(dec_loop_down_l2)
|
||||
SUBCCS a3,a3,#1
|
||||
SUBCCS a2,a2,#1
|
||||
STMDB ip!,{a2,a3,v1,lr} /* store 4 results */
|
||||
@ -595,7 +599,7 @@
|
||||
|
||||
/* extern void neg_loop_down (uintD* ptr, uintC count);
|
||||
entry
|
||||
@@ -1421,7 +1421,7 @@
|
||||
@@ -1421,7 +1421,7 @@ LABEL(dec_loop_down_l2)
|
||||
GLABEL(neg_loop_down)
|
||||
CMPS a2,#0 /* count = 0 ? */
|
||||
MOVEQ a1,#0 /* yup, so return 0 */
|
||||
@ -604,7 +608,7 @@
|
||||
LABEL(neg_loop_down_l1) /* skip all the zero words first */
|
||||
LDR a3,[a1,#-4]! /* compare words against zero */
|
||||
CMPS a3,#0 /* downwards in memory */
|
||||
@@ -1429,13 +1429,13 @@
|
||||
@@ -1429,13 +1429,13 @@ LABEL(neg_loop_down_l1) /* skip
|
||||
SUBS a2,a2,#1 /* reduce count of words */
|
||||
BNE neg_loop_down_l1 /* more ?, so loop */
|
||||
MOV a1,#0 /* return 0 */
|
||||
@ -620,7 +624,7 @@
|
||||
/* now NOT rest of the words */
|
||||
ANDS a3,a2,#3 /* multiple of 4 words ? */
|
||||
BEQ neg_loop_down_l3 /* yup, so branch */
|
||||
@@ -1453,7 +1453,7 @@
|
||||
@@ -1453,7 +1453,7 @@ LABEL(neg_loop_down_l2)
|
||||
LABEL(neg_loop_down_l3)
|
||||
BICS a4,a2,#3 /* set counter to multiple of 4 */
|
||||
MVNEQ a1,#0 /* set result to -1 */
|
||||
@ -629,7 +633,7 @@
|
||||
STMFD sp!,{lr} /* save work regs */
|
||||
LABEL(neg_loop_down_l4)
|
||||
LDMDB a1,{a2,a3,ip,lr} /* load 4 words in one go,NO writeback */
|
||||
@@ -1465,7 +1465,7 @@
|
||||
@@ -1465,7 +1465,7 @@ LABEL(neg_loop_down_l4)
|
||||
SUBS a4,a4,#4 /* decrement counter by 4 */
|
||||
BGT neg_loop_down_l4 /* if count still positive then loop */
|
||||
MVN a1,#0 /* set result to -1 */
|
||||
@ -638,7 +642,7 @@
|
||||
|
||||
/* extern uintD shift1left_loop_down (uintD* ptr, uintC count);
|
||||
entry
|
||||
@@ -1485,7 +1485,7 @@
|
||||
@@ -1485,7 +1485,7 @@ GLABEL(shift1left_loop_down)
|
||||
LABEL(shift1left_loop_down_l1)
|
||||
BICS a4,a2,#1 /* set counter to multiple of 2 */
|
||||
ADCEQ a1,a4,a4 /* if zero set result to C (a4 is 0) */
|
||||
@ -647,7 +651,7 @@
|
||||
ANDS a3,a4,#3 /* multiple of 4 words ? */
|
||||
BEQ shift1left_loop_down_l3 /* yup, so branch */
|
||||
LDMDB a1,{a2,a3} /* load 2 words in one go */
|
||||
@@ -1494,7 +1494,7 @@
|
||||
@@ -1494,7 +1494,7 @@ LABEL(shift1left_loop_down_l1)
|
||||
STMDB a1!,{a2,a3} /* store 2 results */
|
||||
BICS a4,a4,#2 /* decrement counter by 2 */
|
||||
ADCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -656,7 +660,7 @@
|
||||
LABEL(shift1left_loop_down_l3) /* now a multiple of 4 words */
|
||||
STMFD sp!,{lr} /* save work regs */
|
||||
LABEL(shift1left_loop_down_l2)
|
||||
@@ -1508,7 +1508,7 @@
|
||||
@@ -1508,7 +1508,7 @@ LABEL(shift1left_loop_down_l2)
|
||||
TEQ a4,#0 /* are we done ? */
|
||||
BNE shift1left_loop_down_l2 /* if count non-zero then loop */
|
||||
ADC a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -665,7 +669,7 @@
|
||||
|
||||
/* extern uintD shiftleft_loop_down (uintD* ptr, uintC count, uintC i, uintD carry);
|
||||
entry
|
||||
@@ -1542,7 +1542,7 @@
|
||||
@@ -1542,7 +1542,7 @@ GLABEL(shiftleft_loop_down)
|
||||
LABEL(shiftleft_loop_down_l1)
|
||||
BICS ip,a2,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,a4 /* if zero then we're done */
|
||||
@ -674,7 +678,7 @@
|
||||
STMFD sp!,{v1-v3} /* save work regs */
|
||||
LABEL(shiftleft_loop_down_l2)
|
||||
LDMDB a1,{a2,v1,v2,v3} /* load 4 words in one go */
|
||||
@@ -1558,7 +1558,7 @@
|
||||
@@ -1558,7 +1558,7 @@ LABEL(shiftleft_loop_down_l2)
|
||||
SUBS ip,ip,#4 /* decrement counter by 4 */
|
||||
BGT shiftleft_loop_down_l2 /* if count still positive then loop */
|
||||
MOV a1,a4 /* result = last shift out */
|
||||
@ -683,7 +687,7 @@
|
||||
|
||||
/* extern uintD shiftleftcopy_loop_down (uintD* sourceptr, uintD* destptr, uintC count, uintC i);
|
||||
entry
|
||||
@@ -1593,7 +1593,7 @@
|
||||
@@ -1593,7 +1593,7 @@ GLABEL(shiftleftcopy_loop_down)
|
||||
LABEL(shiftleftcopy_loop_down_l1)
|
||||
BICS ip,a3,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,v5 /* if zero then we're done */
|
||||
@ -692,7 +696,7 @@
|
||||
STMFD sp!,{v1-v3} /* save work regs */
|
||||
LABEL(shiftleftcopy_loop_down_l2)
|
||||
LDMDB a1!,{a3,v1,v2,v3} /* load 4 words in one go */
|
||||
@@ -1609,7 +1609,7 @@
|
||||
@@ -1609,7 +1609,7 @@ LABEL(shiftleftcopy_loop_down_l2)
|
||||
SUBS ip,ip,#4 /* decrement counter by 4 */
|
||||
BGT shiftleftcopy_loop_down_l2 /* if count still positive then loop */
|
||||
MOV a1,v5 /* result = last shift out */
|
||||
@ -701,7 +705,7 @@
|
||||
|
||||
/* extern uintD shift1right_loop_up (uintD* ptr, uintC count, uintD carry);
|
||||
entry
|
||||
@@ -1630,7 +1630,7 @@
|
||||
@@ -1630,7 +1630,7 @@ GLABEL(shift1right_loop_up)
|
||||
LABEL(shift1right_loop_up_l1)
|
||||
BICS a4,a2,#1 /* set counter to multiple of 2 */
|
||||
MOVEQ a1,a4,RRX /* if zero set result to C (a4 is 0) */
|
||||
@ -710,7 +714,7 @@
|
||||
ANDS a3,a4,#3 /* multiple of 4 words ? */
|
||||
BEQ shift1right_loop_up_l3 /* yup, so branch */
|
||||
LDMIA a1,{a2,a3} /* load 2 words in one go */
|
||||
@@ -1639,7 +1639,7 @@
|
||||
@@ -1639,7 +1639,7 @@ LABEL(shift1right_loop_up_l1)
|
||||
STMIA a1!,{a2,a3} /* store 2 results */
|
||||
BICS a4,a4,#2 /* decrement counter by 2 */
|
||||
ADCEQ a1,a4,a4 /* set result to Carry (a4 is 0) */
|
||||
@ -719,7 +723,7 @@
|
||||
LABEL(shift1right_loop_up_l3) /* now a multiple of 4 words */
|
||||
STMFD sp!,{lr} /* save work regs */
|
||||
LABEL(shift1right_loop_up_l2)
|
||||
@@ -1653,7 +1653,7 @@
|
||||
@@ -1653,7 +1653,7 @@ LABEL(shift1right_loop_up_l2)
|
||||
TEQ a4,#0 /* are we done ? */
|
||||
BNE shift1right_loop_up_l2 /* if count non-zero then loop */
|
||||
MOV a1,a4,RRX /* set result to Carry (a4 is 0) */
|
||||
@ -728,7 +732,7 @@
|
||||
|
||||
/* extern uintD shiftright_loop_up (uintD* ptr, uintC count, uintC i);
|
||||
entry
|
||||
@@ -1688,7 +1688,7 @@
|
||||
@@ -1688,7 +1688,7 @@ LABEL(shiftright_loop_up_l0)
|
||||
LABEL(shiftright_loop_up_l1)
|
||||
BICS ip,a2,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,a4 /* if zero then we're done */
|
||||
@ -737,7 +741,7 @@
|
||||
STMFD sp!,{v1-v3} /* save work regs */
|
||||
LABEL(shiftright_loop_up_l2)
|
||||
LDMIA a1,{v1,v2,v3,lr} /* load 4 words in one go */
|
||||
@@ -1704,7 +1704,7 @@
|
||||
@@ -1704,7 +1704,7 @@ LABEL(shiftright_loop_up_l2)
|
||||
SUBS ip,ip,#4 /* decrement counter by 4 */
|
||||
BGT shiftright_loop_up_l2 /* if count still positive then loop */
|
||||
MOV a1,a4 /* result = last shift out */
|
||||
@ -746,7 +750,7 @@
|
||||
|
||||
/* extern uintD shiftrightsigned_loop_up (uintD* ptr, uintC count, uintC i);
|
||||
entry
|
||||
@@ -1759,7 +1759,7 @@
|
||||
@@ -1759,7 +1759,7 @@ LABEL(shiftrightcopy_loop_up_l0)
|
||||
LABEL(shiftrightcopy_loop_up_l1)
|
||||
BICS ip,a3,#3 /* set counter to multiple of 4 */
|
||||
MOVEQ a1,v5 /* if zero then we're done */
|
||||
@ -755,7 +759,7 @@
|
||||
STMFD sp!,{v1-v3} /* save work regs */
|
||||
LABEL(shiftrightcopy_loop_up_l2)
|
||||
LDMIA a1!,{v1,v2,v3,lr} /* load 4 words in one go */
|
||||
@@ -1775,7 +1775,7 @@
|
||||
@@ -1775,7 +1775,7 @@ LABEL(shiftrightcopy_loop_up_l2)
|
||||
SUBS ip,ip,#4 /* decrement counter by 4 */
|
||||
BGT shiftrightcopy_loop_up_l2 /* if count still positive then loop */
|
||||
MOV a1,v5 /* result = last shift out */
|
||||
@ -764,7 +768,7 @@
|
||||
|
||||
#ifndef HAVE_umull
|
||||
/* mulu32_64_vregs
|
||||
@@ -1800,7 +1800,7 @@
|
||||
@@ -1800,7 +1800,7 @@ LABEL(mulu32_64_vregs)
|
||||
ADDCS v2,v2,#0x10000 /* carry from above add */
|
||||
ADDS v1,v4,ip,LSL #16 /* x is now bottom 32 bits of result */
|
||||
ADC ip,v2,ip,LSR #16 /* hi is top 32 bits */
|
||||
@ -773,7 +777,7 @@
|
||||
#endif /* HAVE_umull */
|
||||
|
||||
/* extern uintD mulusmall_loop_down (uintD digit, uintD* ptr, uintC len, uintD newdigit);
|
||||
@@ -1816,7 +1816,7 @@
|
||||
@@ -1816,7 +1816,7 @@ LABEL(mulu32_64_vregs)
|
||||
GLABEL(mulusmall_loop_down)
|
||||
CMP a3,#0
|
||||
MOVEQ a1,a4
|
||||
@ -782,7 +786,7 @@
|
||||
#ifdef HAVE_umull
|
||||
STMFD sp!,{v1,lr}
|
||||
LABEL(mulusmall_loop_down_l1)
|
||||
@@ -1828,7 +1828,7 @@
|
||||
@@ -1828,7 +1828,7 @@ LABEL(mulusmall_loop_down_l1)
|
||||
SUBS a3,a3,#1 /* len-- */
|
||||
BNE mulusmall_loop_down_l1 /* until len==0 */
|
||||
MOV a1,a4 /* return carry */
|
||||
@ -791,7 +795,7 @@
|
||||
#else
|
||||
STMFD sp!,{v1-v2,lr}
|
||||
LABEL(mulusmall_loop_down_l1)
|
||||
@@ -1850,7 +1850,7 @@
|
||||
@@ -1850,7 +1850,7 @@ LABEL(mulusmall_loop_down_l1)
|
||||
SUBS a3,a3,#1 /* len-- */
|
||||
BNE mulusmall_loop_down_l1 /* until len==0 */
|
||||
MOV a1,a4 /* return carry */
|
||||
@ -800,7 +804,7 @@
|
||||
#endif
|
||||
|
||||
/* extern void mulu_loop_down (uintD digit, uintD* sourceptr, uintD* destptr, uintC len);
|
||||
@@ -1875,7 +1875,7 @@
|
||||
@@ -1875,7 +1875,7 @@ LABEL(mulu_loop_down_l1)
|
||||
SUBS a4,a4,#1 /* len-- */
|
||||
BNE mulu_loop_down_l1 /* until len==0 */
|
||||
STR v5,[a3,#-4]! /* *--destptr = carry */
|
||||
@ -809,7 +813,7 @@
|
||||
#else
|
||||
STMFD sp!,{v1-v5,lr}
|
||||
MOV v5,#0
|
||||
@@ -1888,7 +1888,7 @@
|
||||
@@ -1888,7 +1888,7 @@ LABEL(mulu_loop_down_l1)
|
||||
SUBS a4,a4,#1 /* len-- */
|
||||
BNE mulu_loop_down_l1 /* until len==0 */
|
||||
STR v5,[a3,#-4]! /* *--destptr = carry */
|
||||
@ -818,7 +822,7 @@
|
||||
#endif
|
||||
|
||||
/* extern void muluadd_loop_down (uintD digit, uintD* sourceptr, uintD* destptr, uintC len);
|
||||
@@ -1916,7 +1916,7 @@
|
||||
@@ -1916,7 +1916,7 @@ LABEL(muluadd_loop_down_l1)
|
||||
SUBS a4,a4,#1 /* len-- */
|
||||
BNE muluadd_loop_down_l1 /* until len==0 */
|
||||
MOV a1,v5 /* return carry */
|
||||
@ -827,7 +831,7 @@
|
||||
#else
|
||||
STMFD sp!,{v1-v5,lr}
|
||||
MOV v5,#0
|
||||
@@ -1932,7 +1932,7 @@
|
||||
@@ -1932,7 +1932,7 @@ LABEL(muluadd_loop_down_l1)
|
||||
SUBS a4,a4,#1 /* len-- */
|
||||
BNE muluadd_loop_down_l1 /* until len==0 */
|
||||
MOV a1,v5 /* return carry */
|
||||
@ -836,7 +840,7 @@
|
||||
#endif
|
||||
|
||||
/* extern void mulusub_loop_down (uintD digit, uintD* sourceptr, uintD* destptr, uintC len);
|
||||
@@ -1960,7 +1960,7 @@
|
||||
@@ -1960,7 +1960,7 @@ LABEL(mulusub_loop_down_l1)
|
||||
SUBS a4,a4,#1 /* len-- */
|
||||
BNE mulusub_loop_down_l1 /* until len==0 */
|
||||
MOV a1,v5 /* return carry */
|
||||
@ -845,7 +849,7 @@
|
||||
#else
|
||||
STMFD sp!,{v1-v5,lr}
|
||||
MOV v5,#0
|
||||
@@ -1976,7 +1976,7 @@
|
||||
@@ -1976,7 +1976,7 @@ LABEL(mulusub_loop_down_l1)
|
||||
SUBS a4,a4,#1 /* len-- */
|
||||
BNE mulusub_loop_down_l1 /* until len==0 */
|
||||
MOV a1,v5 /* return carry */
|
||||
@ -853,4 +857,4 @@
|
||||
+ LDMFD sp!,{v1-v5,pc}
|
||||
#endif
|
||||
|
||||
END
|
||||
#if defined __linux__ || defined __FreeBSD__ || defined __FreeBSD_kernel__ || defined __DragonFly__
|
||||
|
@ -4,7 +4,7 @@
|
||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
--- src/clisp-link.in
|
||||
+++ src/clisp-link.in 2016-11-29 12:56:40.625559126 +0000
|
||||
+++ src/clisp-link.in 2017-07-27 12:34:06.144647126 +0000
|
||||
@@ -578,7 +578,7 @@ case "$1" in
|
||||
# when running "CLISP=./clisp ./clisp-link install <modname>"
|
||||
# in the build directory, avoid "cp: `...' and `...' are the same file"
|
||||
@ -15,8 +15,8 @@
|
||||
for f in ${DYNDIR_FILES}; do
|
||||
cp ${f} ${absdestdir}/${DYNMOD}/
|
||||
--- src/lispbibl.d
|
||||
+++ src/lispbibl.d 2016-11-29 14:23:35.426290281 +0000
|
||||
@@ -1450,6 +1450,8 @@ typedef SLONG sint32; /* signed 32 bi
|
||||
+++ src/lispbibl.d 2017-07-27 12:34:06.152646979 +0000
|
||||
@@ -1571,6 +1571,8 @@ typedef SLONG sint32; /* signed 32 bi
|
||||
/* Emulate 64-Bit-numbers using two 32-Bit-numbers. */
|
||||
typedef struct { sintL hi; uintL lo; } sintL2; /* signed 64 Bit integer */
|
||||
typedef struct { uintL hi; uintL lo; } uintL2; /* unsigned 64 Bit integer */
|
||||
@ -25,7 +25,7 @@
|
||||
#endif
|
||||
/* Use 'uintX' and 'sintX' for Integers with approximately given width
|
||||
and a minumum of storage space. */
|
||||
@@ -11622,7 +11622,7 @@ re-enters the corresponding top-level lo
|
||||
@@ -11973,7 +11975,7 @@ re-enters the corresponding top-level lo
|
||||
#define pushSTACK(obj) (STACK_(-1) = (obj), STACK skipSTACKop -1)
|
||||
/* Almost equivalent with *--STACK = obj resp. *STACK++ = obj , but
|
||||
Careful: first enter the object into STACK_(-1), THEN modify the STACK! */
|
||||
|
@ -1,3 +1,17 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 27 13:08:17 UTC 2017 - werner@suse.de
|
||||
|
||||
- Update to Mercurial source code from 2017/06/25
|
||||
aka test version 2.49.60+
|
||||
- Modify the patches
|
||||
* clisp-2.49-configure.dif
|
||||
* clisp-2.49-gctoken.dif
|
||||
* clisp-2.49-rpath.dif
|
||||
* clisp-arm.patch
|
||||
* clisp-link.dif
|
||||
- Remove patch modules_readline_readline.lisp.patch
|
||||
as now the version of readline library is automatically detected
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 10 08:52:25 UTC 2017 - werner@suse.de
|
||||
|
||||
|
37
clisp.spec
37
clisp.spec
@ -17,11 +17,10 @@
|
||||
|
||||
|
||||
# minimum suse version where the full featured package builds
|
||||
%define min_suse_ver 1030
|
||||
%define uuid 536a48a9
|
||||
%define uuid 9c43d428
|
||||
|
||||
Name: clisp
|
||||
Version: 2.49+
|
||||
Version: 2.49.60+
|
||||
Release: 0
|
||||
Summary: A Common Lisp Interpreter
|
||||
License: GPL-2.0+
|
||||
@ -54,14 +53,14 @@ Patch12: clisp-linux.patch
|
||||
Patch15: clisp-arm.patch
|
||||
Patch14: clisp-link.dif
|
||||
Patch16: clisp-db6.diff
|
||||
#PATCH-FIX-UPSTREAM boo#1007196
|
||||
Patch17: modules_readline_readline.lisp.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%global vimdir %{_datadir}/vim/site/after/syntax
|
||||
# exclude from src/lispbibl.d "CLISP not ported to this platform"
|
||||
ExcludeArch: ppc64 ppc64le s390x armv4l
|
||||
BuildRequires: db-devel
|
||||
BuildRequires: dbus-1-devel
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: ffcall
|
||||
BuildRequires: gdbm-devel
|
||||
BuildRequires: gtk2-devel
|
||||
@ -74,11 +73,7 @@ BuildRequires: postgresql-devel
|
||||
BuildRequires: readline-devel
|
||||
BuildRequires: screen
|
||||
BuildRequires: vim-data
|
||||
%if 0%{?suse_version} >= %min_suse_ver
|
||||
BuildRequires: dbus-1-devel
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: xorg-x11-devel
|
||||
%endif
|
||||
#
|
||||
# If set to yes do not forget to add
|
||||
# gcc-c++
|
||||
@ -141,9 +136,6 @@ contains two nice applications.
|
||||
%patch14 -p0 -b .p14
|
||||
%patch15 -p0 -b .p15
|
||||
%patch16 -p1 -b .p16
|
||||
%if 0%{rlver} >= 70
|
||||
%patch17 -p0 -b .p17
|
||||
%endif
|
||||
|
||||
%build
|
||||
#
|
||||
@ -172,7 +164,8 @@ CC="${CC} -g ${RPM_OPT_FLAGS} -fno-strict-aliasing -fPIC -pipe"
|
||||
case "$RPM_ARCH" in
|
||||
i[0-9]86)
|
||||
CC="${CC} -falign-functions=4 -mieee-fp -ffloat-store" ;;
|
||||
arm) CC="${CC}" ;;
|
||||
arm*) CC="${CC}" ;;
|
||||
aarch64)CC="${CC}" ;;
|
||||
ppc) CC="${CC}" ;;
|
||||
s390) CC="${CC}" ;;
|
||||
x86_64) CC="${CC} -fno-gcse" ;;
|
||||
@ -180,25 +173,32 @@ case "$RPM_ARCH" in
|
||||
ppc64) CC="${CC} -fno-gcse -mpowerpc64" ;;
|
||||
s390x) CC="${CC} -fno-gcse" ;;
|
||||
ia64) CC="${CC} -fno-gcse" ;;
|
||||
axp|alpha) CC="${CC}" ;;
|
||||
axp|alpha)
|
||||
CC="${CC}" ;;
|
||||
esac
|
||||
noexec='-DLINUX_NOEXEC_HEAPCODES'
|
||||
nommap='-DNO_MULTIMAP_SHM -DNO_MULTIMAP_FILE -DNO_SINGLEMAP -DNO_TRIVIALMAP'
|
||||
safety='-DSAFETY=3 -O'
|
||||
MYCFLAGS="${MYCFLAGS} -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
|
||||
MYCFLAGS="${MYCFLAGS} -D_GNU_SOURCE -Wno-unused -Wno-uninitialized"
|
||||
port=''
|
||||
case "$RPM_ARCH" in
|
||||
i[0-9]86)
|
||||
MYCFLAGS="${MYCFLAGS} ${noexec}" ;;
|
||||
arm) MYCFLAGS="${MYCFLAGS} ${noexec}" ;;
|
||||
arm*) MYCFLAGS="${MYCFLAGS} ${noexec}" ;;
|
||||
aarch64)MYCFLAGS="${MYCFLAGS} ${noexec}"
|
||||
port=--enable-portability ;;
|
||||
ppc) MYCFLAGS="${MYCFLAGS} ${noexec}" ;;
|
||||
s390) MYCFLAGS="${MYCFLAGS} ${noexec}" ;;
|
||||
x86_64) MYCFLAGS="${MYCFLAGS} ${safety}" ;;
|
||||
sparc*) MYCFLAGS="${MYCFLAGS} ${safety}" ;;
|
||||
ppc64) MYCFLAGS="${MYCFLAGS} ${safety} -DWIDE_HARD" ;;
|
||||
ppc64le)MYCFLAGS="${MYCFLAGS} ${safety} -DWIDE_HARD"
|
||||
port=--enable-portability ;;
|
||||
s390x) MYCFLAGS="${MYCFLAGS} ${safety} -DWIDE_HARD" ;;
|
||||
ia64) MYCFLAGS="${MYCFLAGS} ${safety}" ;;
|
||||
axp|alpha) MYCFLAGS="${MYCFLAGS} ${nommap}" ;;
|
||||
axp|alpha)
|
||||
MYCFLAGS="${MYCFLAGS} ${nommap}" ;;
|
||||
esac
|
||||
export CC
|
||||
export MYCFLAGS
|
||||
@ -245,6 +245,7 @@ find -name configure | xargs -r \
|
||||
> $SCREENLOG
|
||||
tail -q -s 0.5 -f $SCREENLOG & pid=$!
|
||||
%_configure build ${DEBUG} \
|
||||
${port+"$port"} \
|
||||
--prefix=%{_prefix} \
|
||||
--exec-prefix=%{_prefix} \
|
||||
--libdir=%{_libdir} \
|
||||
@ -255,9 +256,7 @@ tail -q -s 0.5 -f $SCREENLOG & pid=$!
|
||||
--with-gettext \
|
||||
--with-module=asdf \
|
||||
--with-module=editor \
|
||||
%if 0%{?suse_version} >= %min_suse_ver
|
||||
--with-module=dbus \
|
||||
%endif
|
||||
--with-module=queens \
|
||||
--with-module=gdbm \
|
||||
--with-module=gtk2 \
|
||||
@ -351,9 +350,7 @@ find %{buildroot}${LSPLIB}/ -name '*.run' | xargs -r chmod 0755
|
||||
rm -rf %{buildroot}${LSPLIB}/new-clx/demos/
|
||||
find %{buildroot} -type f | xargs -r chmod u+w
|
||||
chmod a+x %{buildroot}${LSPLIB}/build-aux/{config,depcomp}*
|
||||
%if 0%{?suse_version} >= %min_suse_ver
|
||||
%fdupes %{buildroot}${LSPLIB}/
|
||||
%endif
|
||||
%find_lang clisp
|
||||
%find_lang clisplow clisp.lang
|
||||
|
||||
|
@ -1,15 +0,0 @@
|
||||
$NetBSD: patch-modules_readline_readline.lisp,v 1.1 2016/09/20 14:10:25 wiz Exp $
|
||||
|
||||
rl_readline_state changed from int to unsigned long in readline-7.0.
|
||||
|
||||
--- modules/readline/readline.lisp.orig 2010-01-06 22:18:03.000000000 +0000
|
||||
+++ modules/readline/readline.lisp
|
||||
@@ -424,7 +424,7 @@ name in ~/.inputrc. This is preferred wa
|
||||
"The version of this incarnation of the readline library, e.g., 0x0402."))
|
||||
(def-c-var gnu-readline-p (:name "rl_gnu_readline_p") (:type int)
|
||||
(:documentation "True if this is real GNU readline."))
|
||||
-(def-c-var readline-state (:name "rl_readline_state") (:type int)
|
||||
+(def-c-var readline-state (:name "rl_readline_state") (:type ulong)
|
||||
(:documentation "Flags word encapsulating the current readline state."))
|
||||
(def-c-var editing-mode (:name "rl_editing_mode") (:type int)
|
||||
(:documentation "Says which editing mode readline is currently using.
|
Loading…
Reference in New Issue
Block a user