llvmpipe: Ensure stack variables in unit tests are properly aligned.
This commit is contained in:
@@ -462,6 +462,7 @@ compute_blend_ref(const struct pipe_blend_state *blend,
|
||||
}
|
||||
|
||||
|
||||
ALIGN_STACK
|
||||
static boolean
|
||||
test_one(unsigned verbose,
|
||||
FILE *fp,
|
||||
@@ -530,11 +531,11 @@ test_one(unsigned verbose,
|
||||
success = TRUE;
|
||||
for(i = 0; i < n && success; ++i) {
|
||||
if(mode == AoS) {
|
||||
uint8_t src[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t dst[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t con[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t res[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t ref[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t src[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t dst[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t con[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t res[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t ref[LP_NATIVE_VECTOR_WIDTH/8];
|
||||
int64_t start_counter = 0;
|
||||
int64_t end_counter = 0;
|
||||
|
||||
@@ -595,11 +596,11 @@ test_one(unsigned verbose,
|
||||
|
||||
if(mode == SoA) {
|
||||
const unsigned stride = type.length*type.width/8;
|
||||
uint8_t src[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t dst[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t con[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t res[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
uint8_t ref[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t src[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t dst[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t con[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t res[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
ALIGN16_ATTRIB uint8_t ref[4*LP_NATIVE_VECTOR_WIDTH/8];
|
||||
int64_t start_counter = 0;
|
||||
int64_t end_counter = 0;
|
||||
boolean mismatch;
|
||||
|
||||
@@ -142,6 +142,7 @@ add_conv_test(LLVMModuleRef module,
|
||||
}
|
||||
|
||||
|
||||
ALIGN_STACK
|
||||
static boolean
|
||||
test_one(unsigned verbose,
|
||||
FILE *fp,
|
||||
@@ -229,8 +230,8 @@ test_one(unsigned verbose,
|
||||
for(i = 0; i < n && success; ++i) {
|
||||
unsigned src_stride = src_type.length*src_type.width/8;
|
||||
unsigned dst_stride = dst_type.length*dst_type.width/8;
|
||||
uint8_t src[LP_MAX_VECTOR_LENGTH*LP_MAX_VECTOR_LENGTH];
|
||||
uint8_t dst[LP_MAX_VECTOR_LENGTH*LP_MAX_VECTOR_LENGTH];
|
||||
ALIGN16_ATTRIB uint8_t src[LP_MAX_VECTOR_LENGTH*LP_MAX_VECTOR_LENGTH];
|
||||
ALIGN16_ATTRIB uint8_t dst[LP_MAX_VECTOR_LENGTH*LP_MAX_VECTOR_LENGTH];
|
||||
double fref[LP_MAX_VECTOR_LENGTH*LP_MAX_VECTOR_LENGTH];
|
||||
uint8_t ref[LP_MAX_VECTOR_LENGTH*LP_MAX_VECTOR_LENGTH];
|
||||
int64_t start_counter = 0;
|
||||
|
||||
@@ -199,6 +199,7 @@ add_store_rgba_test(LLVMModuleRef module,
|
||||
}
|
||||
|
||||
|
||||
ALIGN_STACK
|
||||
static boolean
|
||||
test_format(unsigned verbose, FILE *fp, const struct pixel_test_case *test)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user