From: <cli...@li...> - 2006-04-22 16:56:05
|
Send clisp-cvs mailing list submissions to cli...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/clisp-cvs or, via email, send a message with subject or body 'help' to cli...@li... You can reach the person managing the list at cli...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of clisp-cvs digest..." CLISP CVS commits for today Today's Topics: 1. clisp/ffcall/trampoline configure,1.42,1.43 (Bruno Haible) 2. clisp/ffcall/vacall configure,1.39,1.40 (Bruno Haible) 3. clisp/ffcall/avcall configure,1.44,1.45 (Bruno Haible) 4. clisp/src/m4 general.m4,1.7,1.8 (Bruno Haible) 5. clisp/ffcall/m4 general.m4,1.7,1.8 (Bruno Haible) 6. clisp/ffcall/avcall configure,1.45,1.46 (Bruno Haible) 7. clisp/ffcall/callback configure,1.41,1.42 (Bruno Haible) 8. clisp/ffcall/callback/trampoline_r configure,1.54,1.55 (Bruno Haible) 9. clisp/ffcall/callback/vacall_r configure,1.49,1.50 (Bruno Haible) 10. clisp/ffcall/vacall configure,1.40,1.41 (Bruno Haible) 11. clisp/ffcall/trampoline configure,1.43,1.44 (Bruno Haible) 12. clisp/ffcall/avcall avcall-powerpc64.c,NONE,1.1 avcall-powerpc64.s,NONE,1.1 Makefile.devel,1.16,1.17 Makefile.in,1.28,1.29 PLATFORMS,1.9,1.10 avcall.h.in,1.23,1.24 reg-struct-return,1.4,1.5 (Bruno Haible) --__--__-- Message: 1 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/trampoline configure,1.42,1.43 Date: Sat, 22 Apr 2006 15:18:32 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/trampoline In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3190/trampoline Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/trampoline/configure,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- configure 19 Apr 2006 13:22:03 -0000 1.42 +++ configure 22 Apr 2006 15:18:29 -0000 1.43 @@ -6195,6 +6195,42 @@ fi fi ;; + powerpc64 ) + echo "$as_me:$LINENO: checking for 64-bit PowerPC" >&5 +echo $ECHO_N "checking for 64-bit PowerPC... $ECHO_C" >&6 +if test "${cl_cv_host_powerpc64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined(__LP64__) + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + cl_cv_host_powerpc64=yes +else + cl_cv_host_powerpc64=no +fi +rm -f conftest* + + +fi +echo "$as_me:$LINENO: result: $cl_cv_host_powerpc64" >&5 +echo "${ECHO_T}$cl_cv_host_powerpc64" >&6 +if test $cl_cv_host_powerpc64 = yes; then + host_cpu_abi=powerpc64 +else + host_cpu_abi=powerpc +fi + ;; sparc | sparc64 ) echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 @@ -6231,6 +6267,42 @@ host_cpu_abi=sparc fi ;; + x86_64 ) + echo "$as_me:$LINENO: checking for 64-bit x86_64" >&5 +echo $ECHO_N "checking for 64-bit x86_64... $ECHO_C" >&6 +if test "${cl_cv_host_x86_64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined(__LP64__) + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + cl_cv_host_x86_64=yes +else + cl_cv_host_x86_64=no +fi +rm -f conftest* + + +fi +echo "$as_me:$LINENO: result: $cl_cv_host_x86_64" >&5 +echo "${ECHO_T}$cl_cv_host_x86_64" >&6 +if test $cl_cv_host_x86_64 = yes; then + host_cpu_abi=x86_64 +else + host_cpu_abi=i386 +fi + ;; *) host_cpu_abi=$host_cpu ;; --__--__-- Message: 2 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/vacall configure,1.39,1.40 Date: Sat, 22 Apr 2006 15:18:33 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/vacall In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3190/vacall Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/vacall/configure,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 --- configure 19 Apr 2006 13:22:03 -0000 1.39 +++ configure 22 Apr 2006 15:18:30 -0000 1.40 @@ -2923,6 +2923,42 @@ fi fi ;; + powerpc64 ) + echo "$as_me:$LINENO: checking for 64-bit PowerPC" >&5 +echo $ECHO_N "checking for 64-bit PowerPC... $ECHO_C" >&6 +if test "${cl_cv_host_powerpc64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined(__LP64__) + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + cl_cv_host_powerpc64=yes +else + cl_cv_host_powerpc64=no +fi +rm -f conftest* + + +fi +echo "$as_me:$LINENO: result: $cl_cv_host_powerpc64" >&5 +echo "${ECHO_T}$cl_cv_host_powerpc64" >&6 +if test $cl_cv_host_powerpc64 = yes; then + host_cpu_abi=powerpc64 +else + host_cpu_abi=powerpc +fi + ;; sparc | sparc64 ) echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 @@ -2959,6 +2995,42 @@ host_cpu_abi=sparc fi ;; + x86_64 ) + echo "$as_me:$LINENO: checking for 64-bit x86_64" >&5 +echo $ECHO_N "checking for 64-bit x86_64... $ECHO_C" >&6 +if test "${cl_cv_host_x86_64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined(__LP64__) + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + cl_cv_host_x86_64=yes +else + cl_cv_host_x86_64=no +fi +rm -f conftest* + + +fi +echo "$as_me:$LINENO: result: $cl_cv_host_x86_64" >&5 +echo "${ECHO_T}$cl_cv_host_x86_64" >&6 +if test $cl_cv_host_x86_64 = yes; then + host_cpu_abi=x86_64 +else + host_cpu_abi=i386 +fi + ;; *) host_cpu_abi=$host_cpu ;; --__--__-- Message: 3 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/avcall configure,1.44,1.45 Date: Sat, 22 Apr 2006 15:18:30 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/avcall In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3190/avcall Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/configure,v retrieving revision 1.44 retrieving revision 1.45 diff -u -d -r1.44 -r1.45 --- configure 19 Apr 2006 13:22:03 -0000 1.44 +++ configure 22 Apr 2006 15:18:28 -0000 1.45 @@ -3122,6 +3122,42 @@ fi fi ;; + powerpc64 ) + echo "$as_me:$LINENO: checking for 64-bit PowerPC" >&5 +echo $ECHO_N "checking for 64-bit PowerPC... $ECHO_C" >&6 +if test "${cl_cv_host_powerpc64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined(__LP64__) + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + cl_cv_host_powerpc64=yes +else + cl_cv_host_powerpc64=no +fi +rm -f conftest* + + +fi +echo "$as_me:$LINENO: result: $cl_cv_host_powerpc64" >&5 +echo "${ECHO_T}$cl_cv_host_powerpc64" >&6 +if test $cl_cv_host_powerpc64 = yes; then + host_cpu_abi=powerpc64 +else + host_cpu_abi=powerpc +fi + ;; sparc | sparc64 ) echo "$as_me:$LINENO: checking for 64-bit SPARC" >&5 echo $ECHO_N "checking for 64-bit SPARC... $ECHO_C" >&6 @@ -3158,6 +3194,42 @@ host_cpu_abi=sparc fi ;; + x86_64 ) + echo "$as_me:$LINENO: checking for 64-bit x86_64" >&5 +echo $ECHO_N "checking for 64-bit x86_64... $ECHO_C" >&6 +if test "${cl_cv_host_x86_64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#if defined(__LP64__) + yes +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "yes" >/dev/null 2>&1; then + cl_cv_host_x86_64=yes +else + cl_cv_host_x86_64=no +fi +rm -f conftest* + + +fi +echo "$as_me:$LINENO: result: $cl_cv_host_x86_64" >&5 +echo "${ECHO_T}$cl_cv_host_x86_64" >&6 +if test $cl_cv_host_x86_64 = yes; then + host_cpu_abi=x86_64 +else + host_cpu_abi=i386 +fi + ;; *) host_cpu_abi=$host_cpu ;; @@ -3720,7 +3792,7 @@ ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 3723 "configure"' > conftest.$ac_ext + echo '#line 3795 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -4955,7 +5027,7 @@ # Provide some information about the compiler. -echo "$as_me:4958:" \ +echo "$as_me:5030:" \ "checking for Fortran 77 compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5 @@ -6057,11 +6129,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6060: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6132: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6064: \$? = $ac_status" >&5 + echo "$as_me:6136: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -6319,11 +6391,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6322: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6394: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6326: \$? = $ac_status" >&5 + echo "$as_me:6398: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -6381,11 +6453,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6384: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6456: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:6388: \$? = $ac_status" >&5 + echo "$as_me:6460: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -8622,7 +8694,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 8625 "configure" +#line 8697 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -8720,7 +8792,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 8723 "configure" +#line 8795 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -10972,11 +11044,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10975: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11047: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:10979: \$? = $ac_status" >&5 + echo "$as_me:11051: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -11034,11 +11106,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11037: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11109: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11041: \$? = $ac_status" >&5 + echo "$as_me:11113: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -12404,7 +12476,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 12407 "configure" +#line 12479 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12502,7 +12574,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 12505 "configure" +#line 12577 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -13387,11 +13459,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13390: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13462: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:13394: \$? = $ac_status" >&5 + echo "$as_me:13466: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -13449,11 +13521,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13452: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13524: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:13456: \$? = $ac_status" >&5 + echo "$as_me:13528: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -15576,11 +15648,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15579: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15651: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15583: \$? = $ac_status" >&5 + echo "$as_me:15655: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -15838,11 +15910,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15841: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15913: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15845: \$? = $ac_status" >&5 + echo "$as_me:15917: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -15900,11 +15972,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15903: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15975: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:15907: \$? = $ac_status" >&5 + echo "$as_me:15979: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -18141,7 +18213,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 18144 "configure" +#line 18216 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -18239,7 +18311,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 18242 "configure" +#line 18314 "configure" #include "confdefs.h" #if HAVE_DLFCN_H --__--__-- Message: 4 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/src/m4 general.m4,1.7,1.8 Date: Sat, 22 Apr 2006 15:46:51 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/src/m4 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19572 Modified Files: general.m4 Log Message: Oops, fix last patch. Index: general.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/src/m4/general.m4,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- general.m4 22 Apr 2006 15:16:22 -0000 1.7 +++ general.m4 22 Apr 2006 15:46:49 -0000 1.8 @@ -157,7 +157,7 @@ powerpc64 ) AC_CACHE_CHECK([for 64-bit PowerPC], cl_cv_host_powerpc64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif ], cl_cv_host_powerpc64=yes, cl_cv_host_powerpc64=no) @@ -188,7 +188,7 @@ x86_64 ) AC_CACHE_CHECK([for 64-bit x86_64], cl_cv_host_x86_64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif ], cl_cv_host_x86_64=yes, cl_cv_host_x86_64=no) @@ -267,7 +267,7 @@ powerpc64 ) AC_CACHE_CHECK([for 64-bit PowerPC], cl_cv_host_powerpc64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif ], cl_cv_host_powerpc64=yes, cl_cv_host_powerpc64=no) @@ -298,7 +298,7 @@ x86_64 ) AC_CACHE_CHECK([for 64-bit x86_64], cl_cv_host_x86_64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif ], cl_cv_host_x86_64=yes, cl_cv_host_x86_64=no) --__--__-- Message: 5 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/m4 general.m4,1.7,1.8 Date: Sat, 22 Apr 2006 15:47:38 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/m4 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20027/m4 Modified Files: general.m4 Log Message: Regenerated. Index: general.m4 =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/m4/general.m4,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- general.m4 22 Apr 2006 15:17:20 -0000 1.7 +++ general.m4 22 Apr 2006 15:47:35 -0000 1.8 @@ -157,7 +157,7 @@ powerpc64 ) AC_CACHE_CHECK([for 64-bit PowerPC], cl_cv_host_powerpc64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif ], cl_cv_host_powerpc64=yes, cl_cv_host_powerpc64=no) @@ -188,7 +188,7 @@ x86_64 ) AC_CACHE_CHECK([for 64-bit x86_64], cl_cv_host_x86_64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif ], cl_cv_host_x86_64=yes, cl_cv_host_x86_64=no) @@ -267,7 +267,7 @@ powerpc64 ) AC_CACHE_CHECK([for 64-bit PowerPC], cl_cv_host_powerpc64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif ], cl_cv_host_powerpc64=yes, cl_cv_host_powerpc64=no) @@ -298,7 +298,7 @@ x86_64 ) AC_CACHE_CHECK([for 64-bit x86_64], cl_cv_host_x86_64, [ AC_EGREP_CPP(yes, -[#if defined(__LP64__) +[#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif ], cl_cv_host_x86_64=yes, cl_cv_host_x86_64=no) --__--__-- Message: 6 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/avcall configure,1.45,1.46 Date: Sat, 22 Apr 2006 15:48:22 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/avcall In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20235/avcall Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/configure,v retrieving revision 1.45 retrieving revision 1.46 diff -u -d -r1.45 -r1.46 --- configure 22 Apr 2006 15:18:28 -0000 1.45 +++ configure 22 Apr 2006 15:48:19 -0000 1.46 @@ -3135,7 +3135,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif @@ -3207,7 +3207,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif --__--__-- Message: 7 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/callback configure,1.41,1.42 Date: Sat, 22 Apr 2006 15:48:22 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/callback In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20235/callback Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/callback/configure,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- configure 22 Apr 2006 15:18:28 -0000 1.41 +++ configure 22 Apr 2006 15:48:20 -0000 1.42 @@ -3116,7 +3116,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif @@ -3188,7 +3188,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif --__--__-- Message: 8 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/callback/trampoline_r configure,1.54,1.55 Date: Sat, 22 Apr 2006 15:48:22 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/callback/trampoline_r In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20235/callback/trampoline_r Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/callback/trampoline_r/configure,v retrieving revision 1.54 retrieving revision 1.55 diff -u -d -r1.54 -r1.55 --- configure 22 Apr 2006 15:18:29 -0000 1.54 +++ configure 22 Apr 2006 15:48:20 -0000 1.55 @@ -3159,7 +3159,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif @@ -3231,7 +3231,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif --__--__-- Message: 9 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/callback/vacall_r configure,1.49,1.50 Date: Sat, 22 Apr 2006 15:48:22 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/callback/vacall_r In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20235/callback/vacall_r Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/callback/vacall_r/configure,v retrieving revision 1.49 retrieving revision 1.50 diff -u -d -r1.49 -r1.50 --- configure 22 Apr 2006 15:18:29 -0000 1.49 +++ configure 22 Apr 2006 15:48:20 -0000 1.50 @@ -3135,7 +3135,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif @@ -3207,7 +3207,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif --__--__-- Message: 10 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/vacall configure,1.40,1.41 Date: Sat, 22 Apr 2006 15:48:22 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/vacall In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20235/vacall Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/vacall/configure,v retrieving revision 1.40 retrieving revision 1.41 diff -u -d -r1.40 -r1.41 --- configure 22 Apr 2006 15:18:30 -0000 1.40 +++ configure 22 Apr 2006 15:48:20 -0000 1.41 @@ -2936,7 +2936,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif @@ -3008,7 +3008,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif --__--__-- Message: 11 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/trampoline configure,1.43,1.44 Date: Sat, 22 Apr 2006 15:48:22 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/trampoline In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20235/trampoline Modified Files: configure Log Message: Regenerated. Index: configure =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/trampoline/configure,v retrieving revision 1.43 retrieving revision 1.44 diff -u -d -r1.43 -r1.44 --- configure 22 Apr 2006 15:18:29 -0000 1.43 +++ configure 22 Apr 2006 15:48:20 -0000 1.44 @@ -6208,7 +6208,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__powerpc64__) || defined(_ARCH_PPC64) yes #endif @@ -6280,7 +6280,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -#if defined(__LP64__) +#if defined(__LP64__) || defined(__x86_64__) || defined(__amd64__) yes #endif --__--__-- Message: 12 From: Bruno Haible <ha...@us...> To: cli...@li... Subject: clisp/ffcall/avcall avcall-powerpc64.c,NONE,1.1 avcall-powerpc64.s,NONE,1.1 Makefile.devel,1.16,1.17 Makefile.in,1.28,1.29 PLATFORMS,1.9,1.10 avcall.h.in,1.23,1.24 reg-struct-return,1.4,1.5 Date: Sat, 22 Apr 2006 16:54:30 +0000 Reply-To: cli...@li... Update of /cvsroot/clisp/clisp/ffcall/avcall In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26651 Modified Files: Makefile.devel Makefile.in PLATFORMS avcall.h.in reg-struct-return Added Files: avcall-powerpc64.c avcall-powerpc64.s Log Message: Support for PowerPC64 CPU. --- NEW FILE: avcall-powerpc64.s --- .file "avcall-powerpc64.c" .section ".text" .align 2 .globl __builtin_avcall .section ".opd","aw" .align 3 __builtin_avcall: .quad .__builtin_avcall,.TOC.@tocbase,0 .previous .size __builtin_avcall,24 .type .__builtin_avcall,@function .globl .__builtin_avcall .__builtin_avcall: mflr 0 std 31,-8(1) mr 31,3 std 29,-24(1) std 0,16(1) stdu 1,-2192(1) ld 9,40(3) li 3,8 addi 0,1,112 subf 9,31,9 addi 9,9,-48 sradi 9,9,3 extsw 9,9 cmpd 7,3,9 bge- 7,.L82 addi 9,9,-8 mtctr 9 .L83: sldi 9,3,3 addi 3,3,1 add 11,9,31 add 9,9,0 lfd 0,48(11) stfd 0,-64(9) bdnz .L83 .L82: ld 9,2096(31) subf 9,31,9 addi 9,9,-2104 sradi 9,9,3 extsw 9,9 cmpwi 7,9,0 beq- 7,.L8 cmpwi 7,9,1 beq- 7,.L11 cmpwi 7,9,2 beq- 7,.L14 cmpwi 7,9,3 beq- 7,.L17 cmpwi 7,9,4 beq- 7,.L20 cmpwi 7,9,5 beq- 7,.L23 cmpwi 7,9,6 beq- 7,.L26 cmpwi 7,9,7 beq- 7,.L29 cmpwi 7,9,8 beq- 7,.L32 cmpwi 7,9,9 beq- 7,.L35 cmpwi 7,9,10 beq- 7,.L38 cmpwi 7,9,11 beq- 7,.L41 cmpwi 7,9,12 beq- 7,.L44 .L47: lfd 13,2200(31) .L44: lfd 12,2192(31) .L41: lfd 11,2184(31) .L38: lfd 10,2176(31) .L35: lfd 9,2168(31) .L32: lfd 8,2160(31) .L29: lfd 7,2152(31) .L26: lfd 6,2144(31) .L23: lfd 5,2136(31) .L20: lfd 4,2128(31) .L17: lfd 3,2120(31) .L14: lfd 2,2112(31) .L11: lfd 1,2104(31) .L8: ld 29,0(31) ld 9,96(31) ld 0,0(29) ld 3,48(31) ld 4,56(31) mtctr 0 ld 5,64(31) ld 6,72(31) ld 7,80(31) ld 8,88(31) ld 10,104(31) std 2,40(1) ld 11,16(29) ld 2,8(29) bctrl ld 2,40(1) lwz 9,24(31) cmpwi 7,9,1 beq- 7,.L49 cmpwi 7,9,0 beq- 7,.L84 cmpwi 7,9,2 beq- 7,.L87 cmpwi 7,9,3 beq- 7,.L87 cmpwi 7,9,4 beq- 7,.L87 cmpwi 7,9,5 beq- 7,.L86 cmpwi 7,9,6 beq- 7,.L86 cmpwi 7,9,7 beq- 7,.L85 cmpwi 7,9,8 beq- 7,.L85 cmpwi 7,9,9 beq- 7,.L84 cmpwi 7,9,10 beq- 7,.L84 cmpwi 7,9,11 beq- 7,.L84 cmpwi 7,9,12 beq- 7,.L84 cmpwi 7,9,13 beq- 7,.L89 cmpwi 7,9,14 beq- 7,.L90 cmpwi 7,9,15 beq- 7,.L84 .L49: addi 1,1,2192 li 3,0 ld 0,16(1) ld 29,-24(1) mtlr 0 ld 31,-8(1) blr .L84: ld 9,16(31) std 3,0(9) addi 1,1,2192 li 3,0 ld 0,16(1) ld 29,-24(1) mtlr 0 ld 31,-8(1) blr .L87: ld 9,16(31) stb 3,0(9) addi 1,1,2192 li 3,0 ld 0,16(1) ld 29,-24(1) mtlr 0 ld 31,-8(1) blr .L86: ld 9,16(31) sth 3,0(9) b .L49 .L85: ld 9,16(31) stw 3,0(9) b .L49 .L89: ld 9,16(31) stfs 1,0(9) b .L49 .L90: ld 9,16(31) stfd 1,0(9) b .L49 .long 0 .byte 0,0,0,1,128,3,0,0 .size .__builtin_avcall,.-.__builtin_avcall .ident "GCC: (GNU) 3.3.3 (SuSE Linux)" Index: reg-struct-return =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/reg-struct-return,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- reg-struct-return 19 Apr 2006 12:39:05 -0000 1.4 +++ reg-struct-return 22 Apr 2006 16:54:28 -0000 1.5 @@ -10,6 +10,7 @@ hppa %r28 %r28 --- --- --- --- arm r0 r0 --- r0,r1 --- --- powerpc 3 3 --- 3,4 --- --- +powerpc64 --- --- --- --- --- --- m88k r2 --- --- --- --- --- convex s0 s0 s0 s0.l --- --- ia64 r8 r8 f8 r8,r9 r8 --- Index: Makefile.in =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/Makefile.in,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- Makefile.in 19 Apr 2006 12:42:08 -0000 1.28 +++ Makefile.in 22 Apr 2006 16:54:28 -0000 1.29 @@ -131,6 +131,9 @@ # avcall-powerpc-${syntax}.lo contains a symbolic reference to it and therefore # libtool may want to access it. +avcall-powerpc64.lo : $(srcdir)/avcall-powerpc64.s + $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-powerpc64.s + avcall-m88k.lo : $(srcdir)/avcall-m88k.s $(LIBTOOL_COMPILE) $(CC) @GCC_X_NONE@ -c $(srcdir)/avcall-m88k.s Index: Makefile.devel =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/Makefile.devel,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- Makefile.devel 19 Apr 2006 12:42:08 -0000 1.16 +++ Makefile.devel 22 Apr 2006 16:54:28 -0000 1.17 @@ -9,7 +9,7 @@ SED = sed ROFF_MAN = groff -Tascii -mandoc -all : avcall-i386-macro.S avcall-i386-msvc.c avcall-i386-mingw32.c avcall.h.msvc avcall.h.mingw32 avcall-m68k.mit.S avcall-m68k.mot.s avcall-m68k-amiga.s avcall-mips.S avcall-mipsn32.S avcall-mips64.S avcall-sparc.S avcall-sparc64.S avcall-alpha.s avcall-hppa.s avcall-arm.S avcall-powerpc-aix.old.s avcall-powerpc-aix.new.s avcall-powerpc-sysv4.s avcall-powerpc-macos.s avcall-m88k.s avcall-convex.s avcall-ia64.s avcall-x86_64.s avcall.man +all : avcall-i386-macro.S avcall-i386-msvc.c avcall-i386-mingw32.c avcall.h.msvc avcall.h.mingw32 avcall-m68k.mit.S avcall-m68k.mot.s avcall-m68k-amiga.s avcall-mips.S avcall-mipsn32.S avcall-mips64.S avcall-sparc.S avcall-sparc64.S avcall-alpha.s avcall-hppa.s avcall-arm.S avcall-powerpc-aix.old.s avcall-powerpc-aix.new.s avcall-powerpc-sysv4.s avcall-powerpc-macos.s avcall-powerpc64.s avcall-m88k.s avcall-convex.s avcall-ia64.s avcall-x86_64.s avcall.man avcall-i386-macro.S : avcall-i386.c avcall.h.in asmi386.sh $(GCC) -V 2.7.2 -b i486-linuxaout $(GCCFLAGS) -D__i386__ -fno-omit-frame-pointer -S avcall-i386.c -o avcall-i386.s @@ -93,6 +93,9 @@ avcall-powerpc-macos.s : avcall-powerpc.c avcall.h.in $(GCC) -V 3.3.2 -b powerpc-darwin $(GCCFLAGS) -D__powerpc__ -S avcall-powerpc.c -o avcall-powerpc-macos.s +avcall-powerpc64.s : avcall-powerpc64.c avcall.h.in + /cross/powerpc64-linux-tools/bin/powerpc64-linux-gcc $(GCCFLAGS) -D__powerpc64__ -S avcall-powerpc64.c -o avcall-powerpc64.s + avcall-m88k.s : avcall-m88k.c avcall.h.in $(GCC) -V 2.95.2 -b m88k-dgux $(GCCFLAGS) -D__m88k__ -S avcall-m88k.c -o avcall-m88k.s Index: PLATFORMS =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/PLATFORMS,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- PLATFORMS 19 Apr 2006 12:23:06 -0000 1.9 +++ PLATFORMS 22 Apr 2006 16:54:28 -0000 1.10 @@ -33,6 +33,7 @@ powerpc-ibm-aix4.1.4.0 (cc) powerpc-unknown-linux (gcc) Apple PPC LinuxPPC powerpc-apple-darwin6.8 (gcc) Apple PPC MacOS X + powerpc64 powerpc64-unknown-linux-gnu (gcc) m88k -- untested convex -- untested ia64 ia64-unknown-linux (gcc) HP NUE/x86 Linux --- NEW FILE: avcall-powerpc64.c --- #ifndef _avcall_powerpc64_c /*-*- C -*-*/ #define _avcall_powerpc64_c /** Copyright 1993 Bill Triggs, <Bil...@in...> Copyright 1995-2006 Bruno Haible, <br...@cl...> Copyright 2000 Adam Fedor, <fe...@gn...> Copyright 2004 Paul Guyot, <pg...@ka...> This is free software distributed under the GNU General Public Licence described in the file COPYING. Contact the author if you don't have this or can't live with it. There is ABSOLUTELY NO WARRANTY, explicit or implied, on this software. **/ /*---------------------------------------------------------------------- !!! THIS ROUTINE MUST BE COMPILED gcc -O !!! Foreign function interface for a 64-bit PowerPC with gcc This calls a C function with an argument list built up using macros defined in avcall.h. PowerPC64 Argument Passing Conventions: All arguments, except the first 8 words, are passed on the stack with word alignment. The first 13 doubles and floats are also passed in floating-point-registers. To return a structure, the called function copies the value to space pointed to by its first argument, and all other arguments are shifted down by one. The AIX argument passing conventions are used: - the first 13 doubles and floats are passed in FP registers, and when they do, there is still room allocated for them in the argument sequence (integer regs or stack). - Structures are passed in the argument sequence. But structures containing floats or doubles are passed in FP registers?! Compile this routine with gcc -O (or -O2 -fno-omit-frame-pointer or -g -O) to get the right register variables. For other compilers use the pre-compiled assembler version. ----------------------------------------------------------------------*/ #include "avcall.h.in" #define STACK_OFFSET 14 #define RETURN(TYPE,VAL) (*(TYPE*)l->raddr = (TYPE)(VAL)) register double farg1 __asm__("fr1"); register double farg2 __asm__("fr2"); register double farg3 __asm__("fr3"); register double farg4 __asm__("fr4"); register double farg5 __asm__("fr5"); register double farg6 __asm__("fr6"); register double farg7 __asm__("fr7"); register double farg8 __asm__("fr8"); register double farg9 __asm__("fr9"); register double farg10 __asm__("fr10"); register double farg11 __asm__("fr11"); register double farg12 __asm__("fr12"); register double farg13 __asm__("fr13"); int __builtin_avcall(av_alist* l) { register __avword* sp __asm__("r1"); /* C names for registers */ /*register __avword iret __asm__("r3"); */ register __avword iret2 __asm__("r4"); register float fret __asm__("fr1"); register double dret __asm__("fr1"); __avword space[__AV_ALIST_WORDS]; /* space for callee's stack frame */ __avword* argframe = sp + STACK_OFFSET;/* stack offset for argument list */ int arglen = l->aptr - l->args; __avword i; for (i = 8; i < arglen; i++) /* push function args onto stack */ argframe[i-8] = l->args[i]; /* pass first 13 floating-point args in registers */ arglen = l->faptr - l->fargs; if (arglen == 0) goto fargs0; else if (arglen == 1) goto fargs1; else if (arglen == 2) goto fargs2; else if (arglen == 3) goto fargs3; else if (arglen == 4) goto fargs4; else if (arglen == 5) goto fargs5; else if (arglen == 6) goto fargs6; else if (arglen == 7) goto fargs7; else if (arglen == 8) goto fargs8; else if (arglen == 9) goto fargs9; else if (arglen == 10) goto fargs10; else if (arglen == 11) goto fargs11; else if (arglen == 12) goto fargs12; else if (arglen == 13) goto fargs13; fargs13: farg13 = l->fargs[12]; fargs12: farg12 = l->fargs[11]; fargs11: farg11 = l->fargs[10]; fargs10: farg10 = l->fargs[9]; fargs9: farg9 = l->fargs[8]; fargs8: farg8 = l->fargs[7]; fargs7: farg7 = l->fargs[6]; fargs6: farg6 = l->fargs[5]; fargs5: farg5 = l->fargs[4]; fargs4: farg4 = l->fargs[3]; fargs3: farg3 = l->fargs[2]; fargs2: farg2 = l->fargs[1]; fargs1: farg1 = l->fargs[0]; fargs0: ; /* call function, pass 8 args in registers */ i = (*l->func)(l->args[0], l->args[1], l->args[2], l->args[3], l->args[4], l->args[5], l->args[6], l->args[7]); /* save return value */ if (l->rtype == __AVvoid) { } else if (l->rtype == __AVword) { RETURN(__avword, i); } else if (l->rtype == __AVchar) { RETURN(char, i); } else if (l->rtype == __AVschar) { RETURN(signed char, i); } else if (l->rtype == __AVuchar) { RETURN(unsigned char, i); } else if (l->rtype == __AVshort) { RETURN(short, i); } else if (l->rtype == __AVushort) { RETURN(unsigned short, i); } else if (l->rtype == __AVint) { RETURN(int, i); } else if (l->rtype == __AVuint) { RETURN(unsigned int, i); } else if (l->rtype == __AVlong) { RETURN(long, i); } else if (l->rtype == __AVulong) { RETURN(unsigned long, i); } else if (l->rtype == __AVlonglong) { RETURN(long long, i); } else if (l->rtype == __AVulonglong) { RETURN(unsigned long long, i); } else if (l->rtype == __AVfloat) { RETURN(float, fret); } else if (l->rtype == __AVdouble) { RETURN(double, dret); } else if (l->rtype == __AVvoidp) { RETURN(void*, i); } else if (l->rtype == __AVstruct) { /* __AV_PCC_STRUCT_RETURN and __AV_REGISTER_STRUCT_RETURN are ignored */ } return 0; } #endif /*_avcall_powerpc64_c */ Index: avcall.h.in =================================================================== RCS file: /cvsroot/clisp/clisp/ffcall/avcall/avcall.h.in,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- avcall.h.in 19 Apr 2006 12:53:11 -0000 1.23 +++ avcall.h.in 22 Apr 2006 16:54:28 -0000 1.24 @@ -54,6 +54,9 @@ #ifndef __powerpc__ #undef __powerpc__ #endif +#ifndef __powerpc64__ +#undef __powerpc64__ +#endif #ifndef __s390__ #undef __s390__ #endif @@ -238,7 +241,7 @@ #if defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) __AV_SGICC_STRUCT_ARGS = 1<<7, #endif -#if defined(__powerpc__) +#if defined(__powerpc__) && !defined(__powerpc64__) __AV_AIXCC_STRUCT_ARGS = 1<<7, #endif /* the default way to pass floats */ @@ -253,7 +256,7 @@ #if (defined(__mips__) || defined(__mipsn32__) || defined(__mips64__)) && !defined(__GNUC__) /* SGI mips cc */ __AV_STRUCT_ARGS = __AV_SGICC_STRUCT_ARGS, #else -#if defined(__powerpc__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ +#if defined(__powerpc__) && !defined(__powerpc64__) && defined(_AIX) && !defined(__GNUC__) /* AIX cc, xlc */ __AV_STRUCT_ARGS = __AV_AIXCC_STRUCT_ARGS, #else __AV_STRUCT_ARGS = 0, @@ -280,7 +283,7 @@ #endif /* These are for internal use only */ -#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || defined(__powerpc__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) +#if defined(__i386__) || defined(__m68k__) || defined(__mipsn32__) || defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__arm__) || (defined(__powerpc__) && !defined(__powerpc64__)) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) __AV_REGISTER_STRUCT_RETURN = 1<<9, #endif #if defined(__mips__) && !defined(__mipsn32__) @@ -303,7 +306,7 @@ unsigned long rsize; /* current pointer into the args[] array */ __avword* aptr; -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__powerpc__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390__) +#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__powerpc__) && !defined(__powerpc64__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390__) /* limit pointer into the args[] array */ __avword* eptr; #endif @@ -312,7 +315,7 @@ /* is odd (because on MSVC, alignof(double) = 8, normally = 4). */ __avword filler1; #endif -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || defined(__powerpc__) || defined(__convex__) || defined(__s390__) +#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__hppa__) || defined(__arm__) || (defined(__powerpc__) && !defined(__powerpc64__)) || defined(__convex__) || defined(__s390__) /* temporary storage, used to split doubles into two words */ union { double _double; @@ -351,7 +354,7 @@ double fargs[8]; #endif __avword args[__AV_ALIST_WORDS]; /* sizeof(double)-aligned */ -#if defined(__powerpc__) +#if defined(__powerpc__) || defined(__powerpc64__) /* store the floating-point arguments in an extra array */ double* faptr; double fargs[13]; @@ -375,7 +378,7 @@ } av_alist; /* The limit for the pointer into the args[] array. */ -#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__powerpc__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390) +#if defined(__sparc__) || defined(__sparc64__) || defined(__hppa__) || (defined(__powerpc__) && !defined(__powerpc64__) && !defined(_AIX) && !(defined(__MACH__) && defined(__APPLE__))) || defined(__s390) #define __av_eptr(LIST) ((LIST).eptr) #else #define __av_eptr(LIST) (&(LIST).args[__AV_ALIST_WORDS]) @@ -437,8 +440,8 @@ (LIST).aptr = &(LIST).args[__AV_ALIST_WORDS], \ (LIST).eptr = &(LIST).args[0], #endif -#if defined(__powerpc__) -#if defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) +#if defined(__powerpc__) || defined(__powerpc64__) +#if defined(__powerpc64__) || defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)) #define __av_start1(LIST) \ (LIST).aptr = &(LIST).args[0], \ (LIST).faptr = &(LIST).fargs[0], @@ -532,7 +535,7 @@ #define __av_start_struct3(LIST) \ ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) #endif -#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || defined(__powerpc__) || defined(__convex__) || defined(__s390__) +#if (defined(__i386__) && !defined(_WIN32)) || defined(__m68k__) || defined(__arm__) || (defined(__powerpc__) && !defined(__powerpc64__)) || defined(__convex__) || defined(__s390__) #define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ ((TYPE_SIZE) == 1 || (TYPE_SIZE) == 2 || (TYPE_SIZE) == 4 \ || ((TYPE_SIZE) == 8 && (TYPE_SPLITTABLE) \ @@ -585,6 +588,12 @@ #define __av_start_struct3(LIST) \ ((LIST).flags |= __AV_REGISTER_STRUCT_RETURN, 0) #endif +#if defined(__powerpc64__) +#define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ + 0 +#define __av_start_struct3(LIST) \ + 0 +#endif #if defined(__sparc64__) || defined(__ia64__) #define __av_reg_struct_return(LIST,TYPE_SIZE,TYPE_SPLITTABLE) \ ((TYPE_SIZE) <= 32) @@ -618,7 +627,7 @@ #endif /* Return structure pointer is passed as first arg. */ -#if defined(__alpha__) || defined(__arm__) || defined(__powerpc__) || defined(__convex__) || defined(__s390__) +#if defined(__alpha__) || defined(__arm__) || defined(__powerpc__) || defined(__powerpc64__) || defined(__convex__) || defined(__s390__) #define __av_start_struct4(LIST,TYPE_SIZE) \ (*(LIST).aptr++ = (__avword)((LIST).raddr), 0) #endif @@ -644,7 +653,7 @@ * scalar argument types */ -#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || defined(__powerpc__) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) +#if defined(__i386__) || defined(__m68k__) || (defined(__sparc__) && !defined(__sparc64__)) || defined(__alpha__) || defined(__arm__) || defined(__powerpc__) || defined(__powerpc64__) || defined(__m88k__) || defined(__convex__) || defined(__ia64__) || defined(__x86_64__) || defined(__s390__) /* Floats and all integer types are passed as words, * doubles as two words. */ @@ -720,7 +729,7 @@ #define av_ushort av_ulong #define av_uint av_ulong -#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__ia64__) || defined(__x86_64__) +#if defined(__mips64__) || defined(__sparc64__) || defined(__alpha__) || defined(__powerpc64__) || defined(__ia64__) || defined(__x86_64__) /* `long long' and `long' are identical. */ #define av_longlong av_long #define av_ulonglong av_ulong @@ -761,7 +770,7 @@ (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr & -(long)__AV_alignof(TYPE)) - sizeof(TYPE))) < __av_eptr(LIST) \ ? -1 : (*(TYPE*)(LIST).aptr = (TYPE)(VAL), 0)) #endif -#if (defined(__powerpc__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) +#if (defined(__powerpc__) && !defined(__powerpc64__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) #define __av_longlong(LIST,TYPE,VAL) \ (((LIST).aptr = (__avword*)(((__avword)(LIST).aptr+sizeof(TYPE)+__AV_alignof(TYPE)-1) & -(long)__AV_alignof(TYPE))) > __av_eptr(LIST) \ ? -1 : (((TYPE*)(LIST).aptr)[-1] = (TYPE)(VAL), 0)) @@ -911,7 +920,7 @@ #endif -#if defined(__powerpc__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) +#if defined(__powerpc__) && !defined(__powerpc64__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) /* Up to 13 float or double non-varargs args can be passed in * float registers, but we also push them into the corresponding int @@ -937,7 +946,7 @@ #endif -#if defined(__powerpc__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) +#if defined(__powerpc__) && !defined(__powerpc64__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__))) /* Up to 8 float or double non-varargs args can be passed in * float registers, without occupying space in the general registers. @@ -961,6 +970,29 @@ #endif +#if defined(__powerpc64__) + +/* Up to 13 float or double non-varargs args can be passed in + * float registers, but we also push them into the corresponding int + * registers in case of varargs. + */ + +#define av_float(LIST,VAL) \ + (++(LIST).aptr > __av_eptr(LIST) \ + ? -1 : (((float*)(LIST).aptr)[-1] = (float)(VAL), \ + (LIST).faptr < &(LIST).fargs[13] && \ + (*(LIST).faptr++ = (double)(float)(VAL)), \ + 0)) + +#define av_double(LIST,VAL) \ + (++(LIST).aptr > __av_eptr(LIST) \ + ? -1 : (((double*)(LIST).aptr)[-1] = (double)(VAL), \ + (LIST).faptr < &(LIST).fargs[13] && \ + (*(LIST).faptr++ = (double)(VAL)), \ + 0)) + +#endif + #if defined(__s390__) /* Up to 2 float or double non-varargs args can be passed in @@ -1073,7 +1105,7 @@ #define __av_struct_alignment(TYPE_ALIGN) \ (TYPE_ALIGN) #endif -#if defined(__i386__) || defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || (defined(__powerpc__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__m88k__) || defined(__ia64__) || defined(__s390__) +#if defined(__i386__) || defined(__mips__) || defined(__mipsn32__) || defined(__mips64__) || defined(__alpha__) || (defined(__powerpc__) && !defined(__powerpc64__) && (defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) || defined(__powerpc64__) || defined(__m88k__) || defined(__ia64__) || defined(__s390__) /* Structures are passed as fully aligned structures on the arg stack. * We align the aptr, store the structure, then fill to word alignment. * Single-small-integer structures are NOT promoted to integers and have @@ -1163,7 +1195,7 @@ : /* SGI MIPS gcc passes small structures right-adjusted. */ \ __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) #endif -#if defined(__powerpc__) +#if defined(__powerpc__) || defined(__powerpc64__) #define __av_struct_leftadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ (((LIST).aptr = \ (__avword*)(((__avword)(LIST).aptr+(TYPE_SIZE)+(TYPE_ALIGN)-1) & -(long)(TYPE_ALIGN)))\ @@ -1178,6 +1210,7 @@ > __av_eptr(LIST) \ ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ 0)) +#if !defined(__powerpc64__) #define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ ((LIST).flags & __AV_AIXCC_STRUCT_ARGS \ ? /* AIX cc and xlc pass small structures left-adjusted, although big-endian! */\ @@ -1185,6 +1218,11 @@ : /* gcc passes small structures right-adjusted. */ \ __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)) #endif +#if defined(__powerpc64__) +#define __av_struct(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) \ + __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL) +#endif +#endif #if defined(__s390__) #define __av_struct_rightadjusted(LIST,TYPE,TYPE_SIZE,TYPE_ALIGN,ASSIGN,VAL)\ (((LIST).aptr = \ @@ -1224,7 +1262,7 @@ ? -1 : (ASSIGN(TYPE,TYPE_SIZE,TYPE_ALIGN,(void*)((__avword)(LIST).aptr-(TYPE_SIZE)),VAL),\ 0)) #endif -#if (defined(__sparc__) && !defined(__sparc64__)) || (defined(__powerpc__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) +#if (defined(__sparc__) && !defined(__sparc64__)) || (defined(__powerpc__) && !defined(__powerpc64__) && !(defined(_AIX) || (defined(__MACH__) && defined(__APPLE__)))) /* Structures are passed as pointers to caller-made local copies. We * grab space for the copies from the end of the argument list space * and always use maximal (double) alignment. --__--__-- _______________________________________________ clisp-cvs mailing list cli...@li... https://lists.sourceforge.net/lists/listinfo/clisp-cvs End of clisp-cvs Digest |