| Line | Source | Count |
| 1 | | - |
| 2 | | - |
| 3 | void fcrypt_body(DES_LONG *out, DES_key_schedule *ks, DES_LONG Eswap0, | - |
| 4 | DES_LONG Eswap1) | - |
| 5 | { | - |
| 6 | register DES_LONG l, r, t, u; | - |
| 7 | register DES_LONG *s; | - |
| 8 | register int j; | - |
| 9 | register DES_LONG E0, E1; | - |
| 10 | | - |
| 11 | l = 0; | - |
| 12 | r = 0; | - |
| 13 | | - |
| 14 | s = (DES_LONG *)ks; | - |
| 15 | E0 = Eswap0; | - |
| 16 | E1 = Eswap1; | - |
| 17 | | - |
| 18 | for (j = 0; j < 25| TRUE | evaluated 100 times by 1 test | | FALSE | evaluated 4 times by 1 test |
; j++) { | 4-100 |
| 19 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[0 ]; u^=tmp; tmp=(t<<16); t^=r^s[0 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 20 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[2 ]; u^=tmp; tmp=(t<<16); t^=l^s[2 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 21 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[4 ]; u^=tmp; tmp=(t<<16); t^=r^s[4 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 22 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[6 ]; u^=tmp; tmp=(t<<16); t^=l^s[6 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 23 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[8 ]; u^=tmp; tmp=(t<<16); t^=r^s[8 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 24 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[10 ]; u^=tmp; tmp=(t<<16); t^=l^s[10 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 25 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[12 ]; u^=tmp; tmp=(t<<16); t^=r^s[12 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 26 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[14 ]; u^=tmp; tmp=(t<<16); t^=l^s[14 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 27 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[16 ]; u^=tmp; tmp=(t<<16); t^=r^s[16 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 28 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[18 ]; u^=tmp; tmp=(t<<16); t^=l^s[18 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 29 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[20 ]; u^=tmp; tmp=(t<<16); t^=r^s[20 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 30 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[22 ]; u^=tmp; tmp=(t<<16); t^=l^s[22 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 31 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[24 ]; u^=tmp; tmp=(t<<16); t^=r^s[24 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 32 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[26 ]; u^=tmp; tmp=(t<<16); t^=l^s[26 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 33 | { { DES_LONG tmp; t=r^(r>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=r^s[28 ]; u^=tmp; tmp=(t<<16); t^=r^s[28 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); l^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 34 | { { DES_LONG tmp; t=l^(l>>16L); u=t&E0; t&=E1; tmp=(u<<16); u^=l^s[30 ]; u^=tmp; tmp=(t<<16); t^=l^s[30 +1]; t^=tmp; }; t=({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(4),"0"(t) : "cc"); ret; }); r^= DES_SPtrans[0][(u>> 2L)&0x3f]^ DES_SPtrans[2][(u>>10L)&0x3f]^ DES_SPtrans[4][(u>>18L)&0x3f]^ DES_SPtrans[6][(u>>26L)&0x3f]^ DES_SPtrans[1][(t>> 2L)&0x3f]^ DES_SPtrans[3][(t>>10L)&0x3f]^ DES_SPtrans[5][(t>>18L)&0x3f]^ DES_SPtrans[7][(t>>26L)&0x3f]; }; | - |
| 35 | t = l; | - |
| 36 | l = r; | - |
| 37 | r = t; | - |
| 38 | }executed 100 times by 1 test: end of block | 100 |
| 39 | l = ({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(3),"0"(l) : "cc"); ret; }) & 0xffffffffL; | - |
| 40 | r = ({ register unsigned int ret; asm ("rorl %1,%0" : "=r"(ret) : "I"(3),"0"(r) : "cc"); ret; }) & 0xffffffffL; | - |
| 41 | | - |
| 42 | ((t)=((((l)>>(1))^(r))&(0x55555555L)), (r)^=(t), (l)^=((t)<<(1))); | - |
| 43 | ((t)=((((r)>>(8))^(l))&(0x00ff00ffL)), (l)^=(t), (r)^=((t)<<(8))); | - |
| 44 | ((t)=((((l)>>(2))^(r))&(0x33333333L)), (r)^=(t), (l)^=((t)<<(2))); | - |
| 45 | ((t)=((((r)>>(16))^(l))&(0x0000ffffL)), (l)^=(t), (r)^=((t)<<(16))); | - |
| 46 | ((t)=((((l)>>(4))^(r))&(0x0f0f0f0fL)), (r)^=(t), (l)^=((t)<<(4))); | - |
| 47 | | - |
| 48 | out[0] = r; | - |
| 49 | out[1] = l; | - |
| 50 | }executed 4 times by 1 test: end of block | 4 |
| | |