diff options
author | Thomas Grill <xovo@users.sourceforge.net> | 2003-05-23 18:34:12 +0000 |
---|---|---|
committer | Thomas Grill <xovo@users.sourceforge.net> | 2003-05-23 18:34:12 +0000 |
commit | 494d0c177cf16562157b888bd936404579016ac8 (patch) | |
tree | 045111603ca53195ea83ab573fb6df311a8d53cb /externals/grill/flext/source | |
parent | 0de07c1dbdc7266e510522dc878265dc07712c61 (diff) |
""
svn path=/trunk/; revision=650
Diffstat (limited to 'externals/grill/flext/source')
-rw-r--r-- | externals/grill/flext/source/flbind.cpp | 1 | ||||
-rw-r--r-- | externals/grill/flext/source/flclass.h | 11 | ||||
-rw-r--r-- | externals/grill/flext/source/flcwmax.h | 1 | ||||
-rwxr-xr-x | externals/grill/flext/source/flcwpd-x.h | 1 | ||||
-rw-r--r-- | externals/grill/flext/source/flext.h | 2 | ||||
-rwxr-xr-x | externals/grill/flext/source/flsimd.cpp | 16 |
6 files changed, 28 insertions, 4 deletions
diff --git a/externals/grill/flext/source/flbind.cpp b/externals/grill/flext/source/flbind.cpp index d2a00129..a0af2ce0 100644 --- a/externals/grill/flext/source/flbind.cpp +++ b/externals/grill/flext/source/flbind.cpp @@ -140,7 +140,6 @@ bool flext_base::UnbindMethod(const t_symbol *sym,bool (*fun)(flext_base *,t_sym bool ok = false; if(bindhead) { - void *d = NULL; binditem *it = NULL; if(sym) { it = (binditem *)bindhead->Find(sym,0); diff --git a/externals/grill/flext/source/flclass.h b/externals/grill/flext/source/flclass.h index 4cbeb03f..e1b46c52 100644 --- a/externals/grill/flext/source/flclass.h +++ b/externals/grill/flext/source/flclass.h @@ -220,6 +220,9 @@ public: //! Output integer (index n starts with 0) void ToOutInt(int n,int f) const; + //! Output boolean (index n starts with 0) + void ToOutBool(int n,bool f) const { ToOutInt(n,f?1:0); } + //! Output symbol (index n starts with 0) void ToOutSymbol(int n,const t_symbol *s) const; //! Output string aka symbol (index n starts with 0) @@ -250,6 +253,9 @@ public: //! Output integer (index n starts with 0) void ToQueueInt(int n,int f) const; + //! Output boolean (index n starts with 0) + void ToQueueBool(int n,bool f) const { ToQueueInt(n,f?1:0); } + //! Output symbol (index n starts with 0) void ToQueueSymbol(int n,const t_symbol *s) const; //! Output string aka symbol (to appointed outlet) @@ -275,6 +281,9 @@ public: //! Send integer to self (inlet n) void ToSelfInt(int n,int f) const; + //! Send boolean to self (inlet n) + void ToSelfBool(int n,bool f) const { ToSelfInt(n,f?1:0); } + //! Send symbol to self (inlet n) void ToSelfSymbol(int n,const t_symbol *s) const; //! Send string aka symbol to self (inlet 0) @@ -389,7 +398,7 @@ public: @{ */ -#if FLEXT_SYS == FLEXT_SYS_PD +#if FLEXT_SYS == FLEXT_SYS_PD || FLEXT_SYS == FLEXT_SYS_MAX //! Bind object to a symbol bool Bind(const t_symbol *sym); //! Unbind object from a symbol diff --git a/externals/grill/flext/source/flcwmax.h b/externals/grill/flext/source/flcwmax.h index a0c17832..56fe03c3 100644 --- a/externals/grill/flext/source/flcwmax.h +++ b/externals/grill/flext/source/flcwmax.h @@ -20,6 +20,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #endif #define FLEXT_SYS 1 +#define FLEXT_USE_SIMD #ifndef _CW_NOPRECOMP #include <MacHeaders.h> diff --git a/externals/grill/flext/source/flcwpd-x.h b/externals/grill/flext/source/flcwpd-x.h index 3d7256f1..3a5087ae 100755 --- a/externals/grill/flext/source/flcwpd-x.h +++ b/externals/grill/flext/source/flcwpd-x.h @@ -18,6 +18,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #endif #define FLEXT_SYS 2 +#define FLEXT_USE_SIMD #define TARGET_API_MAC_CARBON 1 #define _POSIX_C_SOURCE diff --git a/externals/grill/flext/source/flext.h b/externals/grill/flext/source/flext.h index 34f80ab3..7472e4a1 100644 --- a/externals/grill/flext/source/flext.h +++ b/externals/grill/flext/source/flext.h @@ -26,7 +26,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #define FLEXT_VERSION 404 //! \brief flext version string -#define FLEXT_VERSTR "0.4.4pre" +#define FLEXT_VERSTR "0.4.4" //! @} diff --git a/externals/grill/flext/source/flsimd.cpp b/externals/grill/flext/source/flsimd.cpp index bebf3d97..9786e4e7 100755 --- a/externals/grill/flext/source/flsimd.cpp +++ b/externals/grill/flext/source/flsimd.cpp @@ -35,8 +35,14 @@ WARRANTIES, see the file, "license.txt," in this distribution. #include <xmmintrin.h> // SSE #include <emmintrin.h> // SSE2 #include <mm3dnow.h> // 3DNow! +// #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__MWERKS__) +// #include <Altivec.h> #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__MWERKS__) - #include "Altivec.h" + #include <vBasicOps.h> + #include <vectorOps.h> + #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__GNUG__) + #include <vecLib/vBasicOps.h> + #include <vecLib/vectorOps.h> #endif #endif // FLEXT_USE_SIMD @@ -345,6 +351,14 @@ void flext::CopySamples(t_sample *dst,const t_sample *src,int cnt) #else #error t_sample data type has illegal size #endif +#elif FLEXT_OS == FLEXT_OS_MAC && defined(__VEC__) && defined(__VECTOROPS__) + { + int n = cnt>>2,n4 = n<<2; + cnt -= n4; + vScopy(n4,src,dst); + src += n4,dst += n4; + while(cnt--) *(dst++) = *(src++); + } #endif // _MSC_VER #endif // FLEXT_USE_SIMD { |