comparison run/a/asm_pmaxub_01_A.d @ 1290:e3d0dea394ab

partial inline asm review
author thomask
date Wed, 27 Dec 2006 11:59:48 +0000
parents 6e5d377573e1
children
comparison
equal deleted inserted replaced
1289:ad4d84aba69b 1290:e3d0dea394ab
14 import addon.cpuinfo; 14 import addon.cpuinfo;
15 15
16 int main(){ 16 int main(){
17 haveSSE!()(); 17 haveSSE!()();
18 18
19 ubyte* a = [cast(ubyte) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]; 19 ubyte[] A = [cast(ubyte) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16];
20 ubyte* b = [cast(ubyte)15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 17]; 20 ubyte* a = A.ptr;
21 ubyte* c = new ubyte[16]; 21
22 ubyte[] B = [cast(ubyte)15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 17];
23 ubyte* b = B.ptr;
24
25 ubyte* c = (new ubyte[16]).ptr;
22 26
23 static if(size_t.sizeof == 4){ 27 static if(size_t.sizeof == 4){
24 asm{ 28 asm{
25 mov EAX, a; 29 mov EAX, a;
26 movdqu XMM0, [EAX]; 30 movdqu XMM0, [EAX];