14d00f9827528d41ec354fa60482091c07fc93d7asewardj 24d00f9827528d41ec354fa60482091c07fc93d7asewardj// Set up the 128-bit shadow memory test, by defining the 34d00f9827528d41ec354fa60482091c07fc93d7asewardj// required vector-copy function, and then including the 44d00f9827528d41ec354fa60482091c07fc93d7asewardj// template. 54d00f9827528d41ec354fa60482091c07fc93d7asewardj 6e731e774ef1d12d7b57480e1d70dcc07f116b5d6sewardj#define VECTOR_BYTES 16 7e731e774ef1d12d7b57480e1d70dcc07f116b5d6sewardj 84d00f9827528d41ec354fa60482091c07fc93d7asewardjstatic __attribute__((noinline)) 9e731e774ef1d12d7b57480e1d70dcc07f116b5d6sewardjvoid vector_copy ( void* dst, void* src ) 104d00f9827528d41ec354fa60482091c07fc93d7asewardj{ 114d00f9827528d41ec354fa60482091c07fc93d7asewardj __asm__ __volatile__( 124d00f9827528d41ec354fa60482091c07fc93d7asewardj "movups (%1), %%xmm7 ; movups %%xmm7, (%0)" 13e731e774ef1d12d7b57480e1d70dcc07f116b5d6sewardj : /*OUT*/ : /*IN*/ "r"(dst), "r"(src) : "memory","xmm7" 144d00f9827528d41ec354fa60482091c07fc93d7asewardj ); 154d00f9827528d41ec354fa60482091c07fc93d7asewardj} 164d00f9827528d41ec354fa60482091c07fc93d7asewardj 174d00f9827528d41ec354fa60482091c07fc93d7asewardj// Include the test body, which refers to the above function 184d00f9827528d41ec354fa60482091c07fc93d7asewardj#include "../common/sh-mem-vec128.tmpl.c" 19