[vlc-devel] commit: Add a CPU capability for ARM NEON ( Rémi Denis-Courmont )

Måns Rullgård mans at mansr.com
Sun Sep 6 21:41:35 CEST 2009


"Rémi Denis-Courmont" <remi at remlab.net> writes:

> Le dimanche 6 septembre 2009 22:08:33 Måns Rullgård, vous avez écrit :
>> "Rémi Denis-Courmont" <remi at remlab.net> writes:
>> > Le dimanche 6 septembre 2009 21:09:24 Måns Rullgård, vous avez écrit :
>> >> git at videolan.org (git version control) writes:
>> >> > vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sat Sep
>> >> >  5 16:56:25 2009 +0300| [600d29043eed8f9c3e848dddb79bb0e2e9a0a391] |
>> >> > committer: Rémi Denis-Courmont
>> >> >
>> >> > Add a CPU capability for ARM NEON
>> >> >
>> >> > Currently, detection is done at build time. Feel free to add run-time
>> >> > detect if you know how.
>> >>
>> >> Runtime detection is not possible in any sensible way.  I've discussed
>> >> various options with ARM, and we had some ideas for how to make life
>> >> easier for apps that need to know.  Unfortunately, I haven't had time
>> >> to do much yet.
>> >
>> > It seemed to me more like a toolchain problem; I cannot configure
>> > gcc to accept inline NEON assembly, while otherwise generating plain
>> > ARM machine code. On PPC and x86, we simply check whether one
>> > instruction triggers SIGILL.
>>
>> Catching SIGILL isn't such a good idea in general, but if it works for
>> you, oh well.
>
> Actually... we used to catch and long jump. That was a bad idea. Now we just 
> fork and check the exit status in the parent. What's wrong with checking if 
> the process died due to SIGILL?

That is much less evil.  However, it will not detect correctly if the
OS traps and emulates the missing instructions, as is often the case
for floating-point but perhaps not for the kind of things VLC cares
about.

-- 
Måns Rullgård
mans at mansr.com



More information about the vlc-devel mailing list