aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2006-06-27 22:46:00 +0000
committerThomas Grill <xovo@users.sourceforge.net>2006-06-27 22:46:00 +0000
commit322c35047c31bb9ead78ab25b33881f87203206e (patch)
tree05e30a548c4bff94b9e5ce3f42cd830ee25f3069
parent9cd92bc740e3f23663f4809fb60a500702e9c0b3 (diff)
more robust structure pack setting for Max/MSP @ Windows
fix for 64 bit code fixed bug for Max/MSP when there's no signal inlet changes for Mac/Intel svn path=/trunk/; revision=5307
-rw-r--r--externals/grill/flext/changes.txt1
-rw-r--r--externals/grill/flext/source/flcontainers.h22
2 files changed, 12 insertions, 11 deletions
diff --git a/externals/grill/flext/changes.txt b/externals/grill/flext/changes.txt
index 7411357d..3369338c 100644
--- a/externals/grill/flext/changes.txt
+++ b/externals/grill/flext/changes.txt
@@ -34,6 +34,7 @@ Version history:
- bang method can also by added with FLEXT_(C)ADDMETHOD (FLEXT_(C)ADDBANG is still an alias)
- attribute generation is now determined exclusively by each object class setup (not library is before)
- more robust pack setting for Max/MSP @ Windows
+- should work with Mac/Intel (still untested!)
0.5.0:
- fixes for 64 bit builds (size_t is integer type of pointer size)
diff --git a/externals/grill/flext/source/flcontainers.h b/externals/grill/flext/source/flcontainers.h
index ece3009e..43ea03ed 100644
--- a/externals/grill/flext/source/flcontainers.h
+++ b/externals/grill/flext/source/flcontainers.h
@@ -2,7 +2,7 @@
flext - C++ layer for Max/MSP and pd (pure data) externals
-Copyright (c) 2001-2005 Thomas Grill (gr@grrrr.org)
+Copyright (c) 2001-2006 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
@@ -149,16 +149,16 @@ public:
"movl 4(%%esi), %%edx \n\t"
"movl (%%esi), %%eax \n\t"
"testl %%eax, %%eax \n\t"
- "jz 20f \n"
- "10: \t"
+ "jz 2f \n"
+ "1: \t"
"movl (%%eax), %%ebx \n\t"
"movl %%edx, %%ecx \n\t"
"incl %%ecx \n\t"
SMPLOCK "cmpxchg8b (%%esi) \n\t"
- "jz 20f \n\t"
+ "jz 2f \n\t"
"testl %%eax, %%eax \n\t"
- "jnz 10b \n"
- "20: \t"
+ "jnz 1b \n"
+ "2: \t"
"popl %%ecx \n\t"
"popl %%ebx \n\t"
:"=a" (v)
@@ -221,16 +221,16 @@ public:
"mov 8(%%rsi), %%rdx \n\t"
"mov (%%rsi), %%rax \n\t"
"test %%rax, %%rax \n\t"
- "jz 20f \n"
- "10: \t"
+ "jz 2f \n"
+ "1: \t"
"mov (%%rax), %%rbx \n\t"
"mov %%rdx, %%rcx \n\t"
"inc %%rcx \n\t"
SMPLOCK "cmpxchg16b (%%rsi) \n\t"
- "jz 20f \n\t"
+ "jz 2f \n\t"
"test %%rax, %%rax \n\t"
- "jnz 10b \n"
- "20: \t"
+ "jnz 1b \n"
+ "2: \t"
"pop %%rcx \n\t"
"pop %%rbx \n\t"
:"=a" (v)