Browse Source

Add files via upload

tags/v0.2.20^2
Martin Kroeker GitHub 9 years ago
parent
commit
731c518cff
1 changed files with 23 additions and 5 deletions
  1. +23
    -5
      driver/others/memory.c

+ 23
- 5
driver/others/memory.c View File

@@ -1052,7 +1052,7 @@ void *blas_memory_alloc(int procpos){
mypos = WhereAmI();

position = mypos;
while (position > NUM_BUFFERS) position >>= 1;
while (position >= NUM_BUFFERS) position >>= 1;

do {
if (!memory[position].used && (memory[position].pos == mypos)) {
@@ -1201,8 +1201,8 @@ void blas_memory_free(void *free_area){
position = 0;
LOCK_COMMAND(&alloc_lock);

while ((memory[position].addr != free_area)
&& (position < NUM_BUFFERS)) position++;
while ((position < NUM_BUFFERS) && (memory[position].addr != free_area))
position++;

if (memory[position].addr != free_area) goto error;

@@ -1516,12 +1516,30 @@ static int on_process_term(void)
#else
#pragma comment(linker, "/INCLUDE:__tls_used")
#endif
#pragma data_seg(push, old_seg)

#ifdef _WIN64
#pragma const_seg(".CRT$XLB")
#else
#pragma data_seg(".CRT$XLB")
#endif
static void (APIENTRY *dll_callback)(HINSTANCE h, DWORD ul_reason_for_call, PVOID pv) = DllMain;
#ifdef _WIN64
#pragma const_seg()
#else
#pragma data_seg()
#endif

#ifdef _WIN64
#pragma const_seg(".CRT$XTU")
#else
#pragma data_seg(".CRT$XTU")
#endif
static int(*p_process_term)(void) = on_process_term;
#pragma data_seg(pop, old_seg)
#ifdef _WIN64
#pragma const_seg()
#else
#pragma data_seg()
#endif
#endif

#if (defined(C_PGI) || (!defined(C_SUN) && defined(F_INTERFACE_SUN))) && (defined(ARCH_X86) || defined(ARCH_X86_64))


Loading…
Cancel
Save