Update of /cvsroot/fink/dists/10.7/stable/main/finkinfo/libs
In directory vz-cvs-3.sog:/tmp/cvs-serv11868

Modified Files:
        libffi.info 
Added Files:
        libffi.patch 
Log Message:
tests fixed, validated on x86_64-darwin11
http://sourceforge.net/tracker/?func=detail&aid=3374297&group_id=17203&atid=414256


--- NEW FILE: libffi.patch ---
>From 603fb6250816307fc668534a253daa99c90b22fa Mon Sep 17 00:00:00 2001
From: Masami HIRATA <msm...@gmail.com>
Date: Sat, 4 Aug 2012 23:30:46 +0900
Subject: [PATCH 1/2] fixed: Clang for x86_64 zero-extend or sign-extend
 function parameters in registers to 32-bit if the types
 are less than 32-bit

---
 src/x86/ffi64.c |   12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/x86/ffi64.c b/src/x86/ffi64.c
index 1daa1c0..abe6450 100644
--- a/src/x86/ffi64.c
+++ b/src/x86/ffi64.c
@@ -472,7 +472,17 @@ classify_argument (ffi_type *type, enum x86_64_reg_class 
classes[],
                case X86_64_INTEGER_CLASS:
                case X86_64_INTEGERSI_CLASS:
                  reg_args->gpr[gprcount] = 0;
-                 memcpy (&reg_args->gpr[gprcount], a, size < 8 ? size : 8);
+                 switch (arg_types[i]->type)
+                   {
+                   case FFI_TYPE_SINT8:
+                     reg_args->gpr[gprcount] = (SINT32) *(SINT8 *) a;
+                     break;
+                   case FFI_TYPE_SINT16:
+                     reg_args->gpr[gprcount] = (SINT32) *(SINT16 *) a;
+                     break;
+                   default:
+                     memcpy (&reg_args->gpr[gprcount], a, size < 8 ? size : 8);
+                   }
                  gprcount++;
                  break;
                case X86_64_SSE_CLASS:
-- 
1.7.10


>From 805a523c6521c5b9be51a8797508459512b0f482 Mon Sep 17 00:00:00 2001
From: Masami HIRATA <msm...@gmail.com>
Date: Sat, 4 Aug 2012 23:31:59 +0900
Subject: [PATCH 2/2] fixed: Clang warning: comparison of integers of
 different signs: 'ffi_arg' (aka 'unsigned long') and
 'int' [-Wsign-compare]

---
 testsuite/libffi.call/return_uc.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/testsuite/libffi.call/return_uc.c 
b/testsuite/libffi.call/return_uc.c
index 07c45de..b124203 100644
--- a/testsuite/libffi.call/return_uc.c
+++ b/testsuite/libffi.call/return_uc.c
@@ -32,7 +32,7 @@ int main (void)
        uc < (unsigned char) '\xff'; uc++)
     {
       ffi_call(&cif, FFI_FN(return_uc), &rint, values);
-      CHECK(rint == (signed int) uc);
+      CHECK(rint == (ffi_arg) uc);
     }
   exit(0);
 }
-- 
1.7.10


Index: libffi.info
===================================================================
RCS file: /cvsroot/fink/dists/10.7/stable/main/finkinfo/libs/libffi.info,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- libffi.info 21 Jul 2011 22:33:49 -0000      1.1
+++ libffi.info 23 Aug 2012 00:17:11 -0000      1.2
@@ -3,15 +3,18 @@
 
 # 3.0.9 fails self-tests on 10.4
 Version: 3.0.9
-Distribution: 10.5, 10.6, 10.7
+Distribution: 10.5, 10.6, 10.7, 10.8
 
-Revision: 4
+Revision: 5
 Source: ftp://sourceware.org/pub/%N/%N-%v.tar.gz 
 Source-MD5: 1f300a7a7f975d4046f51c3022fa5ff1
 Depends: %N-shlibs (>= %v-%r)
 BuildDependsOnly: true
+PatchFile: %n.patch
+PatchFile-MD5: 4941e5a587c6c7926827647c0e48f337
 PatchScript: <<
   #!/bin/sh -ev
+  %{default_script}
   perl -pi -e 's;-dynamiclib;$& -single_module -Wl,-x -dead_strip;' configure
   perl -pi -e 's;darwin10;darwin1[01]*;' configure
   # Install headers in %p/include  (and deal with Apple's stupid sed ..)


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Fink-commits mailing list
Fink-commits@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.cvs

Reply via email to