半点优化网 http://www.bdxc.net/
当前位置首页 > 网站技术问题> 正文

QQ源代码在哪找?能帮我查下QQ源代码吗?谢谢了

2022-04-25 17:44:00 暂无评论 245 网站技术问题 源代码   谢谢   查下

/* Blend transparency function*/#define TAG(x) CONCAT(x,_transparency)#define LLTAG(x) LLBL2(x,_transparency)#define INIT \PXOR ( MM0, MM0 ) /* 0x0000 | 0x0000 | 0x0000 | 0x0000 */#define MAIN( rgba, dest ) \GMB_LOAD( rgba, dest, MM1, MM2 ) ;\GMB_UNPACK( MM1, MM2, MM4, MM5, MM0 ) ;\GMB_ALPHA( MM1, MM3, MM4, MM6 ) ;\GMB_LERP_GSC( MM1, MM2, MM3, MM4, MM5, MM6 ) ;\GMB_PACK( MM3, MM6 ) ;\GMB_STORE( rgba, MM3 )#include mmx_blendtmp.h/* Blend add function** FIXME: Add some loop unrolling here...*/#define TAG(x) CONCAT(x,_add)#define LLTAG(x) LLBL2(x,_add)#define INIT#define MAIN( rgba, dest ) \ONE(MOVD ( REGIND(rgba), MM1 )) /* | | | | qa1 | qb1 | qg1 | qr1 */ ;\ONE(MOVD ( REGIND(dest), MM2 )) /* | | | | pa1 | pb1 | pg1 | pr1 */ ;\ONE(PADDUSB ( MM2, MM1 )) ;\ONE(MOVD ( MM1, REGIND(rgba) )) /* | | | | sa1 | sb1 | sg1 | sr1 */ ;\;\TWO(MOVQ ( REGIND(rgba), MM1 )) /* qa2 | qb2 | qg2 | qr2 | qa1 | qb1 | qg1 | qr1 */ ;\TWO(PADDUSB ( REGIND(dest), MM1 )) /* sa2 | sb2 | sg2 | sr2 | sa1 | sb1 | sg1 | sr1 */ ;\TWO(MOVQ ( MM1, REGIND(rgba) ))#include mmx_blendtmp.h/* Blend min function*/#define TAG(x) CONCAT(x,_min)#define LLTAG(x) LLBL2(x,_min)#define INIT \MOVQ ( CONTENT(const_80), MM7 ) /* 0x80| 0x80| 0x80| 0x80| 0x80| 0x80| 0x80| 0x80*/#define MAIN( rgba, dest ) \GMB_LOAD( rgba, dest, MM1, MM2 ) ;\MOVQ ( MM1, MM3 ) ;\MOVQ ( MM2, MM4 ) ;\PXOR ( MM7, MM3 ) /* unsigned -> signed */ ;\PXOR ( MM7, MM4 ) /* unsigned -> signed */ ;\PCMPGTB ( MM3, MM4 ) /* q > p ? 0xff : 0x00 */ ;\PAND ( MM4, MM1 ) /* q > p ? p : 0 */ ;\PANDN ( MM2, MM4 ) /* q > p ? 0 : q */ ;\POR ( MM1, MM4 ) /* q > p ? p : q */ ;\GMB_STORE( rgba, MM4 )#include mmx_blendtmp.h/* Blend max function*/#define TAG(x) CONCAT(x,_max)#define LLTAG(x) LLBL2(x,_max)#define INIT \MOVQ ( CONTENT(const_80), MM7 ) /* 0x80| 0x80| 0x80| 0x80| 0x80| 0x80| 0x80| 0x80*/#define MAIN( rgba, dest ) \GMB_LOAD( rgba, dest, MM1, MM2 ) ;\MOVQ ( MM1, MM3 ) ;\MOVQ ( MM2, MM4 ) ;\PXOR ( MM7, MM3 ) /* unsigned -> signed */ ;\PXOR ( MM7, MM4 ) /* unsigned -> signed */ ;\PCMPGTB ( MM3, MM4 ) /* q > p ? 0xff : 0x00 */ ;\PAND ( MM4, MM2 ) /* q > p ? q : 0 */ ;\PANDN ( MM1, MM4 ) /* q > p ? 0 : p */ ;\POR ( MM2, MM4 ) /* q > p ? p : q */ ;\GMB_STORE( rgba, MM4 )#include mmx_blendtmp.h/* Blend modulate function*/#define TAG(x) CONCAT(x,_modulate)#define LLTAG(x) LLBL2(x,_modulate)#define INIT \PXOR ( MM0, MM0 ) /* 0x0000 | 0x0000 | 0x0000 | 0x0000 */ ;\MOVQ ( CONTENT(const_0080), MM7 ) /* 0x0080 | 0x0080 | 0x0080 | 0x0080 */#define MAIN( rgba, dest ) \GMB_LOAD( rgba, dest, MM1, MM2 ) ;\GMB_UNPACK( MM1, MM2, MM4, MM5, MM0 ) ;\GMB_MULT_GSR( MM1, MM2, MM4, MM5, MM7 ) ;\GMB_PACK( MM2, MM5 ) ;\GMB_STORE( rgba, MM2 )#include mmx_blendtmp.h#endif

猜你喜欢