diff --git a/clisp-2.49-configure.dif b/clisp-2.49-configure.dif index 952d904..148e0a1 100644 --- a/clisp-2.49-configure.dif +++ b/clisp-2.49-configure.dif @@ -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 #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 <&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)))))) diff --git a/clisp-2.49-gctoken.dif b/clisp-2.49-gctoken.dif index ed21bc7..f798c8e 100644 --- a/clisp-2.49-gctoken.dif +++ b/clisp-2.49-gctoken.dif @@ -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; diff --git a/clisp-2.49-rpath.dif b/clisp-2.49-rpath.dif index 668a2a9..6b527e3 100644 --- a/clisp-2.49-rpath.dif +++ b/clisp-2.49-rpath.dif @@ -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 diff --git a/clisp-536a48a9.tar.bz2 b/clisp-536a48a9.tar.bz2 deleted file mode 100644 index 41837ec..0000000 --- a/clisp-536a48a9.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16eadeffd644df4ef5a345a8c99c0906f21621f6410ad0bfeb74d1a4a1c1d07c -size 8316374 diff --git a/clisp-9c43d428.tar.bz2 b/clisp-9c43d428.tar.bz2 new file mode 100644 index 0000000..6fbe170 --- /dev/null +++ b/clisp-9c43d428.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b2f97c69b2800887fe6773c7f27e958c927bb1f2747d4603973cf3dab9dd062 +size 8659436 diff --git a/clisp-arm.patch b/clisp-arm.patch index f4487ce..08e5a19 100644 --- a/clisp-arm.patch +++ b/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__ diff --git a/clisp-link.dif b/clisp-link.dif index df9b1b6..39d0344 100644 --- a/clisp-link.dif +++ b/clisp-link.dif @@ -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 " # 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! */ diff --git a/clisp.changes b/clisp.changes index cb7acee..88c9544 100644 --- a/clisp.changes +++ b/clisp.changes @@ -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 diff --git a/clisp.spec b/clisp.spec index e5b6fdd..0006a00 100644 --- a/clisp.spec +++ b/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 diff --git a/modules_readline_readline.lisp.patch b/modules_readline_readline.lisp.patch deleted file mode 100644 index 0d63767..0000000 --- a/modules_readline_readline.lisp.patch +++ /dev/null @@ -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.