[28895] trunk/dports/lang/erlang/files
source_changes at macosforge.org
source_changes at macosforge.org
Mon Sep 10 20:10:12 PDT 2007
Revision: 28895
http://trac.macosforge.org/projects/macports/changeset/28895
Author: bfulgham at macports.org
Date: 2007-09-10 20:10:12 -0700 (Mon, 10 Sep 2007)
Log Message:
-----------
Add missing patch files for Erlang port. Whoops!
Added Paths:
-----------
trunk/dports/lang/erlang/files/patch-erts_configure
trunk/dports/lang/erlang/files/patch-erts_configure.in
trunk/dports/lang/erlang/files/patch-erts_emulator_sys_unix_sys_float.c
Added: trunk/dports/lang/erlang/files/patch-erts_configure
===================================================================
--- trunk/dports/lang/erlang/files/patch-erts_configure (rev 0)
+++ trunk/dports/lang/erlang/files/patch-erts_configure 2007-09-11 03:10:12 UTC (rev 28895)
@@ -0,0 +1,33 @@
+--- erts/configure.orig 2007-06-30 19:33:12.000000000 -0700
++++ erts/configure 2007-06-30 19:34:56.000000000 -0700
+@@ -18220,6 +18220,12 @@
+ __asm__ __volatile__("ldmxcsr %0" : : "m"(mxcsr));
+ }
+
++#if defined(__DARWIN__)
++#include <mach/mach.h>
++#include <mach/machine/thread_status.h>
++#include <pthread.h>
++#endif
++
+ #if defined(__x86_64__) || defined(__DARWIN__)
+ static inline int cpu_has_sse2(void) { return 1; }
+ #else /* !__x86_64__ */
+@@ -18505,10 +18511,17 @@
+ regs[PT_FPSCR] = 0x80|0x40|0x10; /* VE, OE, ZE; not UE or XE */
+ #endif
+ #elif defined(__DARWIN__) && defined(__i386__)
++#if __DARWIN_UNIX03
++ mcontext_t mc = uc->uc_mcontext;
++ x86_float_state32_t *fpstate = &mc->__fs;
++ fpstate->__fpu_mxcsr = 0x1F80;
++ *(unsigned short *)&fpstate->__fpu_fsw &= ~0xFF;
++#else
+ mcontext_t mc = uc->uc_mcontext;
+ i386_float_state_t *fpstate = &mc->fs;
+ fpstate->fpu_mxcsr = 0x1F80;
+ *(unsigned short *)&fpstate->fpu_fsw &= ~0xFF;
++#endif
+ #elif defined(__DARWIN__) && defined(__ppc__)
+ mcontext_t mc = uc->uc_mcontext;
+ mc->ss.srr0 += 4;
Added: trunk/dports/lang/erlang/files/patch-erts_configure.in
===================================================================
--- trunk/dports/lang/erlang/files/patch-erts_configure.in (rev 0)
+++ trunk/dports/lang/erlang/files/patch-erts_configure.in 2007-09-11 03:10:12 UTC (rev 28895)
@@ -0,0 +1,34 @@
+--- erts/configure.in.orig 2007-06-30 19:35:17.000000000 -0700
++++ erts/configure.in 2007-06-30 19:39:13.000000000 -0700
+@@ -1697,6 +1697,13 @@
+ __asm__ __volatile__("ldmxcsr %0" : : "m"(mxcsr));
+ }
+
++#if defined(__DARWIN__)
++#include <mach/mach.h>
++#include <mach/machine/thread_status.h>
++#include <pthread.h>
++#endif
++
++
+ #if defined(__x86_64__) || defined(__DARWIN__)
+ static inline int cpu_has_sse2(void) { return 1; }
+ #else /* !__x86_64__ */
+@@ -1982,10 +1989,17 @@
+ regs[PT_FPSCR] = 0x80|0x40|0x10; /* VE, OE, ZE; not UE or XE */
+ #endif
+ #elif defined(__DARWIN__) && defined(__i386__)
++#if __DARWIN_UNIX03
++ mcontext_t mc = uc->uc_mcontext;
++ x86_float_state32_t *fpstate = &mc->__fs;
++ fpstate->__fpu_mxcsr = 0x1F80;
++ *(unsigned short *)&fpstate->__fpu_fsw &= ~0xFF;
++#else
+ mcontext_t mc = uc->uc_mcontext;
+ i386_float_state_t *fpstate = &mc->fs;
+ fpstate->fpu_mxcsr = 0x1F80;
+ *(unsigned short *)&fpstate->fpu_fsw &= ~0xFF;
++#endif
+ #elif defined(__DARWIN__) && defined(__ppc__)
+ mcontext_t mc = uc->uc_mcontext;
+ mc->ss.srr0 += 4;
Added: trunk/dports/lang/erlang/files/patch-erts_emulator_sys_unix_sys_float.c
===================================================================
--- trunk/dports/lang/erlang/files/patch-erts_emulator_sys_unix_sys_float.c (rev 0)
+++ trunk/dports/lang/erlang/files/patch-erts_emulator_sys_unix_sys_float.c 2007-09-11 03:10:12 UTC (rev 28895)
@@ -0,0 +1,36 @@
+--- erts/emulator/sys/unix/sys_float.c.orig 2007-06-30 19:57:21.000000000 -0700
++++ erts/emulator/sys/unix/sys_float.c 2007-06-30 19:53:01.000000000 -0700
+@@ -333,7 +333,11 @@
+ #define mc_pc(mc) ((mc)->gregs[REG_EIP])
+ typedef mcontext_t *erts_mcontext_ptr_t;
+ #elif defined(__DARWIN__) && defined(__i386__)
++#if __DARWIN_UNIX03
++#define mc_pc(mc) ((mc)->__ss.__eip)
++#else
+ #define mc_pc(mc) ((mc)->ss.eip)
++#endif
+ typedef mcontext_t erts_mcontext_ptr_t;
+ #elif defined(__FreeBSD__) && defined(__x86_64__)
+ #define mc_pc(mc) ((mc)->mc_rip)
+@@ -512,12 +516,21 @@
+ regs[PT_FPSCR] = 0x80|0x40|0x10; /* VE, OE, ZE; not UE or XE */
+ #endif
+ #elif defined(__DARWIN__) && defined(__i386__)
++#if __DARWIN_UNIX03
++ mcontext_t mc = uc->uc_mcontext;
++ if (mc->__fs.__fpu_mxcsr & 0x000D) {
++ mc->__fs.__fpu_mxcsr &= ~(0x003F|0x0680);
++ skip_sse2_insn(mc);
++ }
++ *(unsigned short *)&mc->__fs.__fpu_fsw &= ~0xFF;
++#else
+ mcontext_t mc = uc->uc_mcontext;
+ if (mc->fs.fpu_mxcsr & 0x000D) {
+ mc->fs.fpu_mxcsr &= ~(0x003F|0x0680);
+ skip_sse2_insn(mc);
+ }
+ *(unsigned short *)&mc->fs.fpu_fsw &= ~0xFF;
++#endif
+ #elif defined(__DARWIN__) && defined(__ppc__)
+ mcontext_t mc = uc->uc_mcontext;
+ mc->ss.srr0 += 4;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070910/7dadf87d/attachment.html
More information about the macports-changes
mailing list