mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
mathops: add MAC64, MLS64, and MLS16
MAC64: 64 += 32 x 32 (bits) MLS64: 64 -= 32 x 32 MLS16: 32 -= 16 x 16 Originally committed as revision 14198 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
71c465a151
commit
ffa978f157
@ -61,6 +61,14 @@ static av_always_inline int MULH(int a, int b){
|
||||
# define MUL64(a,b) ((int64_t)(a) * (int64_t)(b))
|
||||
#endif
|
||||
|
||||
#ifndef MAC64
|
||||
# define MAC64(d, a, b) ((d) += MUL64(a, b))
|
||||
#endif
|
||||
|
||||
#ifndef MLS64
|
||||
# define MLS64(d, a, b) ((d) -= MUL64(a, b))
|
||||
#endif
|
||||
|
||||
/* signed 16x16 -> 32 multiply add accumulate */
|
||||
#ifndef MAC16
|
||||
# define MAC16(rt, ra, rb) rt += (ra) * (rb)
|
||||
@ -71,5 +79,9 @@ static av_always_inline int MULH(int a, int b){
|
||||
# define MUL16(ra, rb) ((ra) * (rb))
|
||||
#endif
|
||||
|
||||
#ifndef MLS16
|
||||
# define MLS16(rt, ra, rb) ((rt) -= (ra) * (rb))
|
||||
#endif
|
||||
|
||||
#endif /* FFMPEG_MATHOPS_H */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user