parent
fba6532502
commit
640cccc2b1
|
@ -37,6 +37,7 @@
|
|||
/*********************************************************************/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <assert.h>
|
||||
#include "common.h"
|
||||
#include "l1param.h"
|
||||
#ifdef FUNCTION_PROFILE
|
||||
|
@ -224,13 +225,17 @@ void CNAME(enum CBLAS_ORDER order,
|
|||
#ifdef ALIGNED_ACCESS
|
||||
stack_alloc_size += 3;
|
||||
#endif
|
||||
if(stack_alloc_size < 128)
|
||||
// if(stack_alloc_size < 128)
|
||||
//dgemv_n.S require a 128 bytes buffer
|
||||
stack_alloc_size = 128;
|
||||
// increasing instead of capping 128
|
||||
// ABI STACK for windows 288 bytes
|
||||
stack_alloc_size += 288 / sizeof(FLOAT) ;
|
||||
|
||||
if(stack_alloc_size > MAX_STACK_ALLOC / sizeof(FLOAT))
|
||||
stack_alloc_size = 0;
|
||||
|
||||
// stack overflow check
|
||||
volatile double stack_check = 3.14159265358979323846;
|
||||
FLOAT stack_buffer[stack_alloc_size];
|
||||
buffer = stack_alloc_size ? stack_buffer : (FLOAT *)blas_memory_alloc(1);
|
||||
// printf("stack_alloc_size=%d\n", stack_alloc_size);
|
||||
|
@ -265,6 +270,8 @@ void CNAME(enum CBLAS_ORDER order,
|
|||
|
||||
}
|
||||
#endif
|
||||
// stack overflow check
|
||||
assert(stack_check==3.14159265358979323846);
|
||||
|
||||
#ifdef MAX_STACK_ALLOC
|
||||
if(!stack_alloc_size){
|
||||
|
|
Loading…
Reference in New Issue