]> git.saurik.com Git - apple/libc.git/commitdiff
Libc-763.12.tar.gz mac-os-x-1072 mac-os-x-1073 v763.12
authorApple <opensource@apple.com>
Wed, 12 Oct 2011 00:22:45 +0000 (00:22 +0000)
committerApple <opensource@apple.com>
Wed, 12 Oct 2011 00:22:45 +0000 (00:22 +0000)
arm/string/dyld_resolvers.c
arm/string/memset_pattern.s [changed mode: 0644->0755]
gen/malloc.c
i386/string/bcopy_sse2.s

index 2adb0efec92a6e79cbe050d4c429d506f685ac0f..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,65 +0,0 @@
-// This file implements resolvers to assist dyld in choosing the correct
-// implementation of <string.h> routines on ARMv7 processors.  The
-// micro-architectural differences between Cortex-A8 and Cortex-A9 are such
-// that optimal write loops are quite different on the two processors.
-//
-// The MakeResolver_a8_a9(name) macro creates a function that dyld calls to
-// pick an implementation of the name function.  It does a check to determine
-// if it is running on a8 or a9 hardware, and returns a pointer to either
-//
-//    name$VARIANT$CortexA8
-// or
-//    name$VARIANT$CortexA9
-//
-// This resolution only occurs once per process; once a symbol is bound to an
-// implementation in dyld, no further calls to the resolver occur.
-//
-// On unknown implementations of the ARMv7 architecture, the Cortex-A9 variant
-// is returned by these resolvers.
-
-#include <arm/arch.h>
-#if defined _ARM_ARCH_7 && !defined VARIANT_DYLD
-
-#include <stdlib.h>
-#include <machine/cpu_capabilities.h>
-#include <mach/machine.h>
-
-#define MakeResolver_a8_a9(name) \
-    void * name ## Resolver(void) __asm__("_" #name);\
-    void * name ## Resolver(void) {\
-        __asm__(".symbol_resolver _" #name);\
-        if (*(int *)_COMM_PAGE_CPUFAMILY == CPUFAMILY_ARM_13)\
-            return name ## $VARIANT$CortexA8;\
-        else\
-            return name ## $VARIANT$CortexA9;\
-    }
-
-void bcopy$VARIANT$CortexA8(const void *, void *, size_t);
-void bcopy$VARIANT$CortexA9(const void *, void *, size_t);
-MakeResolver_a8_a9(bcopy)
-
-void *memmove$VARIANT$CortexA8(void *, const void *, size_t);
-void *memmove$VARIANT$CortexA9(void *, const void *, size_t);
-MakeResolver_a8_a9(memmove)
-
-void *memcpy$VARIANT$CortexA8(void *, const void *, size_t);
-void *memcpy$VARIANT$CortexA9(void *, const void *, size_t);
-MakeResolver_a8_a9(memcpy)
-
-void bzero$VARIANT$CortexA8(void *, size_t);
-void bzero$VARIANT$CortexA9(void *, size_t);
-MakeResolver_a8_a9(bzero)
-
-void __bzero$VARIANT$CortexA8(void *, size_t);
-void __bzero$VARIANT$CortexA9(void *, size_t);
-MakeResolver_a8_a9(__bzero)
-
-void *memset$VARIANT$CortexA8(void *, int, size_t);
-void *memset$VARIANT$CortexA9(void *, int, size_t);
-MakeResolver_a8_a9(memset)
-
-#else // defined _ARM_ARCH_7 && !defined VARIANT_DYLD
-
-typedef int emptyFilesArentCFiles;
-
-#endif // defined _ARM_ARCH_7 && !defined VARIANT_DYLD
old mode 100644 (file)
new mode 100755 (executable)
index 497a9b5a515a8a6fddefa8f62a32ef63e019a485..c923ef25433a823a57e8c11377aa693fe8f63468 100644 (file)
@@ -405,7 +405,7 @@ set_flags_from_environment(void) {
     malloc_debug_flags = SCALABLE_MALLOC_ABORT_ON_CORRUPTION; // Set always on 64-bit processes
 #else
     int libSystemVersion  = NSVersionOfLinkTimeLibrary("System");
-    if ((-1 != libSystemVersion) && ((libSystemVersion >> 16) < 126) /* CFSystemVersionBarolo */)
+    if ((-1 != libSystemVersion) && ((libSystemVersion >> 16) < 126) )
        malloc_debug_flags = 0;
     else
        malloc_debug_flags = SCALABLE_MALLOC_ABORT_ON_CORRUPTION;
@@ -625,8 +625,6 @@ __malloc_check_env_name(const char *name)
 {
     MALLOC_LOCK();
     /*
-     * <rdar://problem/8686255>
-     * 
      * 2. malloc will no longer take notice of *programmatic* changes to the MALLOC_* environment variables 
      * (i.e. calls to putenv() or setenv() that manipulate these environment variables.)
      *
index 4987c5e468a7c49d3d523520b5bcead6c193ecb5..cba82f0027aaca5df8e8075af010ec2c5979f90f 100644 (file)
@@ -152,6 +152,7 @@ LDestAligned:
        testl   $15,%esi                // is source aligned too?
        jnz     LUnalignedLoop          // no
 
+
        cmpl    $(kFastUCode),%eax      // long enough for the fastpath in microcode?
        jb  LAlignedLoop                // no, use SSE
        cld                             // we'll move forward