void testAs() { boost::shared_ptr<int[]> sizes(new int[3]); sizes[0] = 2; sizes[1] = 1; sizes[2] = 2; boost::shared_ptr<int[]> array(new int[2]); array[0] = 1; array[1] = 1; SHEsis::ArrayStorage AS1(sizes); SHEsis::ArrayStorage AS2(sizes, array); AS2.getArray(); AS2.getDimension(); AS2.getSizes(); AS2.set(1, 1); }
// ebp restored at end #define EPILOG() \ AS2( movd edi, mm3 ) \ AS2( movd ebx, mm4 ) \ AS2( movd esi, mm5 ) \ AS2( mov esp, ebp ) \ AS1( pop ebp ) \ AS1( emms ) \ AS1( ret 12 ) #endif PROLOG() AS2( movd mm2, edx ) #ifdef OLD_GCC_OFFSET AS2( add edx, 60 ) // des1 = des1 key #else AS2( add edx, 56 ) // des1 = des1 key #endif AS2( mov eax, DWORD PTR [esi] ) AS2( mov ebx, DWORD PTR [esi + 4] ) AS1( bswap eax ) // left AS1( bswap ebx ) // right AsmIPERM() DesRound() // 1