x86int.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /********************************************************************
  2. * *
  3. * THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *
  4. * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
  5. * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
  6. * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
  7. * *
  8. * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009 *
  9. * by the Xiph.Org Foundation and contributors http://www.xiph.org/ *
  10. * *
  11. ********************************************************************
  12. function:
  13. last mod: $Id$
  14. ********************************************************************/
  15. #if !defined(_x86_vc_x86int_H)
  16. # define _x86_vc_x86int_H (1)
  17. # include "../internal.h"
  18. # if defined(OC_X86_ASM)
  19. # define oc_state_accel_init oc_state_accel_init_x86
  20. # define OC_STATE_USE_VTABLE (1)
  21. # endif
  22. # include "../state.h"
  23. # include "x86cpu.h"
  24. void oc_state_accel_init_x86(oc_theora_state *_state);
  25. void oc_frag_copy_mmx(unsigned char *_dst,
  26. const unsigned char *_src,int _ystride);
  27. void oc_frag_copy_list_mmx(unsigned char *_dst_frame,
  28. const unsigned char *_src_frame,int _ystride,
  29. const ptrdiff_t *_fragis,ptrdiff_t _nfragis,const ptrdiff_t *_frag_buf_offs);
  30. void oc_frag_recon_intra_mmx(unsigned char *_dst,int _ystride,
  31. const ogg_int16_t *_residue);
  32. void oc_frag_recon_inter_mmx(unsigned char *_dst,
  33. const unsigned char *_src,int _ystride,const ogg_int16_t *_residue);
  34. void oc_frag_recon_inter2_mmx(unsigned char *_dst,const unsigned char *_src1,
  35. const unsigned char *_src2,int _ystride,const ogg_int16_t *_residue);
  36. void oc_idct8x8_mmx(ogg_int16_t _y[64],ogg_int16_t _x[64],int _last_zzi);
  37. void oc_state_frag_recon_mmx(const oc_theora_state *_state,ptrdiff_t _fragi,
  38. int _pli,ogg_int16_t _dct_coeffs[128],int _last_zzi,ogg_uint16_t _dc_quant);
  39. void oc_loop_filter_init_mmx(signed char _bv[256],int _flimit);
  40. void oc_state_loop_filter_frag_rows_mmx(const oc_theora_state *_state,
  41. signed char _bv[256],int _refi,int _pli,int _fragy0,int _fragy_end);
  42. void oc_restore_fpu_mmx(void);
  43. #endif