Hello!<br><br><div class="gmail_quote">On Wed, Sep 23, 2009 at 1:04 AM, Ian FREISLICH <span dir="ltr">&lt;<a href="mailto:ianf@clue.co.za">ianf@clue.co.za</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><div class="im">&gt; &gt; I was wondering if anyone has actually managed to get this working.<br>
&gt; &gt; I&#39;m using amd64 and when I select the ECHO_CAN_OSLEC, the compile<br>
&gt; &gt; fails with the following error:<br>
&gt; &gt;<br>
&gt; &gt; Warning: Object directory not changed from original<br>
&gt; &gt; /usr/ports/misc/zaptel/work/zaptel-bsd-1.4.11.2/zaptel<br>
&gt; &gt; cc -O2 -pipe -march=athlon64 -fno-strict-aliasing -Wall -D_KERNEL<br>
&gt; &gt; -DKLD_MODULE -nostdinc<br>
&gt; &gt;  -I/usr/ports/misc/zaptel/work/zaptel-bsd-1.4.11.2/zaptel/../zaptel -I. -I@<br>
-I@/contrib/altq<br>
&gt; &gt; -finline-limit=8000 --param inline-unit-growth=100 --param<br>
&gt; &gt; large-function-growth=1000 -fno-common  -fno-omit-frame-pointer<br>
&gt; &gt; -mcmodel=kernel -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-sse3<br>
&gt; &gt; -mno-mmx -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables<br>
&gt; &gt; -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-protector -Wall<br>
&gt; &gt; -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototype<br>
s<br>
&gt; &gt; -Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign<br>
&gt; &gt; -fformat-extensions -c oslec_echo.c<br>
&gt; &gt; oslec_echo.c: In function &#39;echo_can_update&#39;:<br>
&gt; &gt; oslec_echo.c:164: error: SSE register return with SSE disabled<br>
&gt; &gt;<br>
&gt;<br>
&gt; Which FreeBSD version is it?<br>
&gt;  It builds fine for me on FreeBSD 6, 7, and 8<br>
<br>
</div>You&#39;re probably building with OSLEC then.  A standard build of the<br>
port builds the MG2 echo canceler.<br>
<br>
I&#39;m using 9-CURRENT, but you need to be using amd64 *and* to have<br>
set:<br>
<br>
#define ECHO_CAN_OSLEC<br>
<br>
in work/zaptel-bsd-1.4.11.2/zaptel/zconfig.h<br>
<br>
to get OSLEC (and reproduce this problem).  The MG2 echo canceler<br>
doesn&#39;t converge quickly enough (it takes about 30 seconds) and<br>
even then doesn&#39;t cancel all the echo on my line.  OSLEC on linux<br>
works great, but I want to ditch linux.<br>
<br>
If you&#39;re using OSLEC, but on i386, then you&#39;re probably going to<br>
have your floating point math corrupted during calls.<br></blockquote><div><br>I looked through the code briefly. Yes, it looks like it should work if you just replace float with int32_t. <br></div></div>Does it work for you in this case well enough?<br>
<br>Max<br>