<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<br>
<div>
<div>On Mar 3, 2015, at 11:08 PM, Viswanath Puttagunta <<a href="mailto:viswanath.puttagunta@linaro.org">viswanath.puttagunta@linaro.org</a>> wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">
<div dir="ltr"><br>
<div class="gmail_extra"><br clear="all">
<div>
<div class="gmail_signature">
<div dir="ltr">On 3 March 2015 at 21:59, Jonathan Lennox <span dir="ltr"><<a href="mailto:jonathan@vidyo.com" target="_blank">jonathan@vidyo.com</a>></span> wrote:<br>
</div>
</div>
</div>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Viswenath,<br>
<br>
My patch should be against the tip, but it’s the very recent tip, including some changes this past Friday (27 Feb). I mentioned in the IRC room a problem I discovered in creating my patch, and then later improved the fix Tim had made for the problem. Where
do you get conflicts merging it to tip?<br>
<br>
In terms of merging, you posted your patch before I posted mine, so probably I should be the one on the hook to rebase after your fix goes in. Looking over your patch quickly, I don’t think any of my changes should be that difficult to merge with yours.<br>
</blockquote>
<div>>> Yeah.. trivial merge issues.. shouldn't take too long to resolve. </div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I haven’t studied your patch in depth yet. Does Ne10 use its own RTCD code, or do you use Opus’s?<br>
</blockquote>
<div>>> Not using Ne10's RTCD feature at the moment.. using Opus's rtcd. libopus RTCD for linux/armv7 will not work for aarch64. It needs to be updated (or just disabled if system built for aarch64 since Neon support is mandatory)... It is in my todo list.. </div>
</div>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>My patch should handle aarch64 properly. One of the things it does is it discovers (in configure) whether a little test program using Neon intrinsics can be compiled without -mfpu=neon — if so, it disables RTCD for Neon, and sets a #define OPUS_ARM_PRESUME_NEON_INTR.
(This is analogous to the existing code for determining whether Neon assembly instructions can be assembled by default.)</div>
<div><br>
</div>
<div>This thus handles not only aarch64, but also iOS armv7.</div>
<div><br>
</div>
<div>I also have a number of aarch64 patches pending — mine are entirely for fixed-point though. Are yours all floating-point?</div>
<div><br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto;">
<div class="HOEnZb">
<div class="h5">On Mar 3, 2015, at 5:18 PM, Viswanath Puttagunta <<a href="mailto:viswanath.puttagunta@linaro.org">viswanath.puttagunta@linaro.org</a>> wrote:<br>
<br>
> Hello Jonathan,<br>
><br>
> I am unable to apply your patch cleanly on tip.<br>
><br>
> Timothy/opus-dev,<br>
><br>
> This patch has some conflicts with my ARM patch that does fft optimizations<br>
> <a href="http://lists.xiph.org/pipermail/opus/2015-March/002904.html" target="_blank">
http://lists.xiph.org/pipermail/opus/2015-March/002904.html</a><br>
> <a href="http://lists.xiph.org/pipermail/opus/2015-March/002905.html" target="_blank">
http://lists.xiph.org/pipermail/opus/2015-March/002905.html</a><br>
><br>
> One of us probably has to rebase depending on which patch goes into opus first.<br>
><br>
> Regards,<br>
> Vish<br>
><br>
><br>
> On 1 March 2015 at 20:47, Jonathan Lennox <<a href="mailto:jonathan@vidyo.com">jonathan@vidyo.com</a>> wrote:<br>
>> The attached patch cleans up Opus's x86 intrinsics configury.<br>
>><br>
>> It:<br>
>> * Makes —enable-intrinsics work with clang and other non-GCC compilers<br>
>> * Enables RTCD for the floating-point-mode SSE code in Celt.<br>
>> * Disables use of RTCD in cases where the compiler targets an instruction<br>
>> set by default.<br>
>> * Enables the SSE4.1 Silk optimizations that apply to the common parts of<br>
>> Silk when Opus is built in floating-point mode, not just in fixed-point<br>
>> mode.<br>
>> * Enables the SSE intrinsics (with RTCD when appropriate) in the Win32<br>
>> build.<br>
>> * Fixes a case where GCC would compile SSE2 code as SSE4.1, causing a crash<br>
>> on non-SSE4.1 CPUs.<br>
>> * Allows configuration with compilers with non-GCC-flavor flags for enabling<br>
>> architecture options.<br>
>> * Hopefully makes the configuration and ifdef’s easier to follow and<br>
>> understand.<br>
>><br>
>> This does not yet switch —enable-intrinsics to be enabled by default on<br>
>> supported architectures, but I think it’d be ready to do so.<br>
>><br>
>> Comments are welcome!<br>
>><br>
>><br>
>><br>
>> —<br>
>> Jonathan Lennox<br>
>> <a href="mailto:jonathan@vidyo.com">jonathan@vidyo.com</a><br>
>><br>
>><br>
>> _______________________________________________<br>
>> opus mailing list<br>
>> <a href="mailto:opus@xiph.org">opus@xiph.org</a><br>
>> <a href="http://lists.xiph.org/mailman/listinfo/opus" target="_blank">http://lists.xiph.org/mailman/listinfo/opus</a><br>
>><br>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</body>
</html>