GNOME Bugzilla – Bug 701081
liborc example 1 gives wrong output
Last modified: 2013-05-27 11:47:18 UTC
Hi, I compiled liborc version 0.4.17 from http://code.entropywave.com/download/orc/. when i ran the example1 under the examples directory, i get the following output: 0: 0 32000 -> 32000 1: 100 32000 -> 32100 2: 200 32000 -> 32200 3: 300 32000 -> 32300 4: 400 32000 -> 32400 5: 500 32000 -> 32500 6: 600 32000 -> 32600 7: 700 32000 -> 32700 8: 800 32000 -> 32767 9: 900 32000 -> 32767 #8 and #9 are wrong. I compiled using gcc (Debian 4.7.2-5) 4.7.2 on an Intel Atom N570 processor. Please let me know if you need any other information.
That's correct, it is doing an saturated, signed 16 bit integer add: .function audio_add_s16 .dest 2 d1 short .source 2 s1 short .source 2 s2 short addssw d1, s1, s2