search for: ec_ilog

Displaying 6 results from an estimated 6 matches for "ec_ilog".

2008 Dec 21
0
[PATCH] Fix ectest to not check a case which isn't guaranteed to work, and which we don't use.
When I removed the special case for EC_ILOG(0) in commit 06390d082dcdfa8addb3dde337543bc0f0ebae44, it broke ec_dec_uint() with _ft=1 (which should encode the value 0 using 0 bits). This feature was tested by ectest.c, but not actually used by libcelt. An assert has been added to ec_dec_uint() to ensure that we don't try to use this fe...
2011 Mar 03
0
[PATCH] Eliminate the ec_int32 and ec_uint32 typedefs.
...s-is in another codec without some porting effort, so there's no real reason to maintain the typedefs separately. Hopefully we'll replace these all again somedate with a common set of Opus typedefs, but for now this will do. This fixes an issue caused by commit 6c8acbf1, which moved the ec_ilog() prototype from entcode.h to ecintrin.h, where the ec_uint32 typedef was not yet available. Thanks to John Ridges for the report. --- libcelt/bands.c | 2 +- libcelt/bands.h | 2 +- libcelt/celt.c | 12 ++++++------ libcelt/cwrs.c | 2 +- libcelt/cwrs.h...
2011 Mar 01
1
Another thing it might be nice to fix in CELT
Hi, Bjoern's solution of adding the line: #pragma intrinsic(_BitScanReverse) after the: # include<intrin.h> worked for me, so it solves my debug build problem. However, you still might want to change the location of ec_ilog's prototype in entcode.h for those platforms that don't have an intrinsic like that. Cheers, John Ridges
2010 Feb 12
2
Optimisation Help
...to make it acceptable for use in games, we would need it to be at least twice as fast as it currently is for this. I was hoping to be able to crunch some things down with some SIMD but there doesn''t seem to be any good candidates for that.<br> <br> Some profiling has shown the ec_ilog and decode_pulses would be good functions to optimise, though they seem quite minimal already. <br> <br> Do you guys have any tips on how I might make things faster with the CELT decoder?<br> <br> I am currently on 0.6.1, do the newer versions have any significant performanc...
2008 Dec 20
5
ectest failed with gcc-4.2.4
Hi, compiling the latest release 0.5.1 (as well as from git) with gcc-4.2.4 on zenwalk (slackware current), ectest fails; using gcc-3.4.6 all tests succeeds. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/opus/attachments/20081220/68be24c8/attachment-0002.htm
2015 Aug 04
1
[PATCH] Simplify and generalize implementation of align(). Should be very efficient on sensible platforms, and correct everywhere.
...int size; - /* Alignment is determined by the max size of void*, opus_int32 and opus_val32, - rounded up to the nearest power of two. */ - int tmp = (sizeof(opus_int32)-1)|(sizeof(opus_val32)-1)|(sizeof(void*)-1); - if (tmp == 0) - size = 1; - else - size = 1 << EC_ILOG(tmp); - return (i+size-1)&-size; + struct foo {char c; union { void* p; opus_int32 i; opus_val32 v; } u;}; + + int alignment = offsetof(struct foo, u); + + /* Optimizing compilers should optimize div and multiply into and + for all sensible alignment values. */ + return ((i...