[PD-cvs] externals/grill/flext/source fldsp.cpp, 1.31, 1.32 flmap.h, 1.23, 1.24 flmsg.cpp, 1.20, 1.21 flout.cpp, 1.27, 1.28 flprefix.h, 1.36, 1.37 flqueue.cpp, 1.39, 1.40 flsupport.cpp, 1.57, 1.58 flxlet.cpp, 1.10, 1.11
Thomas Grill
xovo at users.sourceforge.net
Fri Oct 27 15:34:58 CEST 2006
Update of /cvsroot/pure-data/externals/grill/flext/source
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7429/source
Modified Files:
fldsp.cpp flmap.h flmsg.cpp flout.cpp flprefix.h flqueue.cpp
flsupport.cpp flxlet.cpp
Log Message:
fix for Codewarrior compilation
update docs
fixed anything/symbol message mixup (thanks to Stefano Papetti)
fixed typos, dates, contact info
added gcc branch hinting
Index: flqueue.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flqueue.cpp,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -d -r1.39 -r1.40
*** flqueue.cpp 24 May 2006 12:20:57 -0000 1.39
--- flqueue.cpp 27 Oct 2006 13:34:56 -0000 1.40
***************
*** 209,213 ****
{
if(th) {
! if(out < 0)
// message to self
th->CbMethodHandler(-1-out,sym,argc,argc > STATSIZE?argv:argl);
--- 209,213 ----
{
if(th) {
! if(UNLIKELY(out < 0))
// message to self
th->CbMethodHandler(-1-out,sym,argc,argc > STATSIZE?argv:argl);
***************
*** 239,243 ****
sym = s;
argc = cnt;
! if(cnt > STATSIZE) {
argv = new t_atom[cnt];
flext::CopyAtoms(cnt,argv,lst);
--- 239,243 ----
sym = s;
argc = cnt;
! if(UNLIKELY(cnt > STATSIZE)) {
argv = new t_atom[cnt];
flext::CopyAtoms(cnt,argv,lst);
***************
*** 252,256 ****
{
Msg *m = &msg;
! if(m->Ok()) {
for(; m->nxt; m = m->nxt) {}
m = m->nxt = new Msg;
--- 252,256 ----
{
Msg *m = &msg;
! if(LIKELY(m->Ok())) {
for(; m->nxt; m = m->nxt) {}
m = m->nxt = new Msg;
***************
*** 263,267 ****
inline void Queue::Push(MsgBundle *m)
{
! if(m) {
Put(m);
Trigger();
--- 263,267 ----
inline void Queue::Push(MsgBundle *m)
{
! if(LIKELY(m)) {
Put(m);
Trigger();
***************
*** 532,536 ****
{
void *cl = recv->s_thing;
! if(!cl) return false;
#if FLEXT_SYS == FLEXT_SYS_PD
--- 532,536 ----
{
void *cl = recv->s_thing;
! if(UNLIKELY(!cl)) return false;
#if FLEXT_SYS == FLEXT_SYS_PD
Index: flout.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flout.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -d -r1.27 -r1.28
*** flout.cpp 15 May 2006 23:03:52 -0000 1.27
--- flout.cpp 27 Oct 2006 13:34:56 -0000 1.28
***************
*** 21,25 ****
{
outlet *o = GetOut(n);
! if(o) {
CRITON();
if(IsSymbol(at))
--- 21,25 ----
{
outlet *o = GetOut(n);
! if(LIKELY(o)) {
CRITON();
if(IsSymbol(at))
***************
*** 46,55 ****
#if defined(FLEXT_THREADS)
#if FLEXT_QMODE == 2
! #define CHKTHR() ((IsSystemThread() || IsThread(flext::thrmsgid)) && !InDSP())
#else
! #define CHKTHR() (IsSystemThread() && !InDSP())
#endif
#else
! #define CHKTHR() (!InDSP())
#endif
--- 46,55 ----
#if defined(FLEXT_THREADS)
#if FLEXT_QMODE == 2
! #define CHKTHR() (LIKELY((IsSystemThread() || IsThread(flext::thrmsgid)) && !InDSP()))
#else
! #define CHKTHR() (LIKELY(IsSystemThread() && !InDSP()))
#endif
#else
! #define CHKTHR() (LIKELY(!InDSP()))
#endif
Index: flmap.h
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flmap.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** flmap.h 11 Oct 2005 10:09:23 -0000 1.23
--- flmap.h 27 Oct 2006 13:34:56 -0000 1.24
***************
*** 59,63 ****
{
void *r;
! if(n)
r = _set(tsize,k,t);
else {
--- 59,63 ----
{
void *r;
! if(LIKELY(n))
r = _set(tsize,k,t);
else {
***************
*** 69,77 ****
}
! void *find(int tsize,size_t k) const { return n?_find(tsize,k):0; }
void *remove(int tsize,size_t k)
{
! void *r = n?_remove(tsize,k):0;
// check(tsize);
return r;
--- 69,77 ----
}
! void *find(int tsize,size_t k) const { return LIKELY(n)?_find(tsize,k):0; }
void *remove(int tsize,size_t k)
{
! void *r = LIKELY(n)?_remove(tsize,k):0;
// check(tsize);
return r;
***************
*** 214,218 ****
{
void *d = TableAnyMap::remove(N,*(size_t *)&k);
! if(d) --count;
return (T)d;
}
--- 214,218 ----
{
void *d = TableAnyMap::remove(N,*(size_t *)&k);
! if(LIKELY(d)) --count;
return (T)d;
}
Index: flmsg.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flmsg.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** flmsg.cpp 15 May 2006 23:03:52 -0000 1.20
--- flmsg.cpp 27 Oct 2006 13:34:56 -0000 1.21
***************
*** 128,132 ****
// search for exactly matching tag
! if(methhead && (lst = methhead->FindList(s,inlet)) != NULL && TryMethTag(lst,s,argc,argv)) return true;
if((lst = clmethhead->FindList(s,inlet)) != NULL && TryMethTag(lst,s,argc,argv)) return true;
--- 128,132 ----
// search for exactly matching tag
! if(UNLIKELY(methhead) && (lst = methhead->FindList(s,inlet)) != NULL && TryMethTag(lst,s,argc,argv)) return true;
if((lst = clmethhead->FindList(s,inlet)) != NULL && TryMethTag(lst,s,argc,argv)) return true;
***************
*** 143,147 ****
ItemCont *clmethhead = ClMeths(thisClassId());
! if(methhead && (lst = methhead->FindList(sym_anything,inlet)) != NULL && TryMethAny(lst,s,argc,argv)) return true;
if((lst = clmethhead->FindList(sym_anything,inlet)) != NULL && TryMethAny(lst,s,argc,argv)) return true;
--- 143,147 ----
ItemCont *clmethhead = ClMeths(thisClassId());
! if(UNLIKELY(methhead) && (lst = methhead->FindList(sym_anything,inlet)) != NULL && TryMethAny(lst,s,argc,argv)) return true;
if((lst = clmethhead->FindList(sym_anything,inlet)) != NULL && TryMethAny(lst,s,argc,argv)) return true;
Index: flxlet.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flxlet.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** flxlet.cpp 19 Nov 2005 23:10:54 -0000 1.10
--- flxlet.cpp 27 Oct 2006 13:34:56 -0000 1.11
***************
*** 39,43 ****
void flext_base::AddInlet(xlettype tp,int mult,const char *desc)
{
! if(incnt+mult >= MAXLETS)
post("%s - too many inlets",thisName());
else
--- 39,43 ----
void flext_base::AddInlet(xlettype tp,int mult,const char *desc)
{
! if(UNLIKELY(incnt+mult >= MAXLETS))
post("%s - too many inlets",thisName());
else
***************
*** 51,55 ****
void flext_base::AddOutlet(xlettype tp,int mult,const char *desc)
{
! if(outcnt+mult >= MAXLETS)
post("%s - too many outlets",thisName());
else
--- 51,55 ----
void flext_base::AddOutlet(xlettype tp,int mult,const char *desc)
{
! if(UNLIKELY(outcnt+mult >= MAXLETS))
post("%s - too many outlets",thisName());
else
***************
*** 63,67 ****
void flext_base::DescInlet(int ix,const char *d)
{
! if(ix >= incnt)
post("%s - inlet %i not found",thisName(),ix);
else
--- 63,67 ----
void flext_base::DescInlet(int ix,const char *d)
{
! if(UNLIKELY(ix >= incnt))
post("%s - inlet %i not found",thisName(),ix);
else
***************
*** 71,75 ****
void flext_base::DescOutlet(int ix,const char *d)
{
! if(ix >= outcnt)
post("%s - outlet %i not found",thisName(),ix);
else
--- 71,75 ----
void flext_base::DescOutlet(int ix,const char *d)
{
! if(UNLIKELY(ix >= incnt))
post("%s - outlet %i not found",thisName(),ix);
else
Index: flprefix.h
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flprefix.h,v
retrieving revision 1.36
retrieving revision 1.37
diff -C2 -d -r1.36 -r1.37
*** flprefix.h 7 Oct 2005 12:58:48 -0000 1.36
--- flprefix.h 27 Oct 2006 13:34:56 -0000 1.37
***************
*** 413,416 ****
--- 413,425 ----
#endif
+ // branching hints
+ #ifdef __GNUC__
+ #define LIKELY(expression) (__builtin_expect(!!(expression), 1))
+ #define UNLIKELY(expression) (__builtin_expect(!!(expression), 0))
+ #else
+ #define LIKELY(expression) (expression)
+ #define UNLIKELY(expression) (expression)
+ #endif
+
#endif // __FLEXT_PREFIX_H
Index: fldsp.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/fldsp.cpp,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -d -r1.31 -r1.32
*** fldsp.cpp 15 May 2006 23:03:52 -0000 1.31
--- fldsp.cpp 27 Oct 2006 13:34:56 -0000 1.32
***************
*** 50,54 ****
if(!obj->thisHdr()->z_disabled)
#else
! if(obj->dspon)
#endif
{
--- 50,54 ----
if(!obj->thisHdr()->z_disabled)
#else
! if(LIKELY(obj->dspon))
#endif
{
Index: flsupport.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flsupport.cpp,v
retrieving revision 1.57
retrieving revision 1.58
diff -C2 -d -r1.57 -r1.58
*** flsupport.cpp 15 Dec 2005 23:04:06 -0000 1.57
--- flsupport.cpp 27 Oct 2006 13:34:56 -0000 1.58
***************
*** 120,124 ****
#endif
char *blk;
! if(bytes >= LARGEALLOC) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
blk = (char *)::sysmem_newptr(bytes);
--- 120,124 ----
#endif
char *blk;
! if(UNLIKELY(bytes >= LARGEALLOC)) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
blk = (char *)::sysmem_newptr(bytes);
***************
*** 164,168 ****
size_t bytes = *(size_t *)ori;
! if(bytes >= LARGEALLOC) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
::sysmem_freeptr(ori);
--- 164,168 ----
size_t bytes = *(size_t *)ori;
! if(UNLIKELY(bytes >= LARGEALLOC)) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
::sysmem_freeptr(ori);
***************
*** 206,210 ****
char *blk;
! if(bytes >= LARGEALLOC) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
blk = (char *)::sysmem_newptr(bytes);
--- 206,210 ----
char *blk;
! if(UNLIKELY(bytes >= LARGEALLOC)) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
blk = (char *)::sysmem_newptr(bytes);
***************
*** 240,244 ****
size_t bytes = *(size_t *)((char *)blk-sizeof(size_t));
! if(bytes >= LARGEALLOC) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
::sysmem_freeptr(ori);
--- 240,244 ----
size_t bytes = *(size_t *)((char *)blk-sizeof(size_t));
! if(UNLIKELY(bytes >= LARGEALLOC)) {
#if FLEXT_SYS == FLEXT_SYS_MAX && defined(_SYSMEM_H_)
::sysmem_freeptr(ori);
More information about the Pd-cvs
mailing list