1
1

oshmem: Align OSHMEM API with spec v1.3 (shmem_lock change signature)

Annex G:
Version 1.3
Added volatile to remotely accessible pointer argument in
SHMEM_LOCK
See Sections 8.9.1
Этот коммит содержится в:
Igor Ivanov 2016-04-13 22:03:44 +03:00
родитель a52b0797fc
Коммит c02d0b7161
6 изменённых файлов: 20 добавлений и 20 удалений

Просмотреть файл

@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 Mellanox Technologies, Inc.
* Copyright (c) 2014-2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2014 Intel, Inc. All rights reserved
* Copyright (c) 2016 Research Organization for Information Science
@ -246,9 +246,9 @@ OSHMEM_DECLSPEC void pshmem_longlong_inc(long long *target, int pe);
/*
* Lock functions
*/
OSHMEM_DECLSPEC void pshmem_set_lock(long *lock);
OSHMEM_DECLSPEC void pshmem_clear_lock(long *lock);
OSHMEM_DECLSPEC int pshmem_test_lock(long *lock);
OSHMEM_DECLSPEC void pshmem_set_lock(volatile long *lock);
OSHMEM_DECLSPEC void pshmem_clear_lock(volatile long *lock);
OSHMEM_DECLSPEC int pshmem_test_lock(volatile long *lock);
/*
* P2P sync routines

Просмотреть файл

@ -1,5 +1,5 @@
/*
* Copyright (c) 2014-2015 Mellanox Technologies, Inc.
* Copyright (c) 2014-2016 Mellanox Technologies, Inc.
* All rights reserved.
* Copyright (c) 2014 Intel, Inc. All rights reserved
* $COPYRIGHT$
@ -309,9 +309,9 @@ OSHMEM_DECLSPEC void shmem_longlong_inc(long long *target, int pe);
/*
* Lock functions
*/
OSHMEM_DECLSPEC void shmem_set_lock(long *lock);
OSHMEM_DECLSPEC void shmem_clear_lock(long *lock);
OSHMEM_DECLSPEC int shmem_test_lock(long *lock);
OSHMEM_DECLSPEC void shmem_set_lock(volatile long *lock);
OSHMEM_DECLSPEC void shmem_clear_lock(volatile long *lock);
OSHMEM_DECLSPEC int shmem_test_lock(volatile long *lock);
/*
* P2P sync routines

Просмотреть файл

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* Copyright (c) 2013-2016 Mellanox Technologies, Inc.
* All rights reserved.
* $COPYRIGHT$
*
@ -25,7 +25,7 @@
#include "oshmem/shmem/c/profile/defines.h"
#endif
void shmem_clear_lock(long *lock)
void shmem_clear_lock(volatile long *lock)
{
_shmem_clear_lock(lock, sizeof(long));
_shmem_clear_lock((void *)lock, sizeof(long));
}

Просмотреть файл

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* Copyright (c) 2013-2016 Mellanox Technologies, Inc.
* All rights reserved.
* $COPYRIGHT$
*
@ -25,7 +25,7 @@
#include "oshmem/shmem/c/profile/defines.h"
#endif
void shmem_set_lock(long *lock)
void shmem_set_lock(volatile long *lock)
{
_shmem_set_lock(lock, sizeof(long));
_shmem_set_lock((void *)lock, sizeof(long));
}

Просмотреть файл

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* Copyright (c) 2013-2016 Mellanox Technologies, Inc.
* All rights reserved.
* $COPYRIGHT$
*
@ -26,7 +26,7 @@
#include "oshmem/shmem/c/profile/defines.h"
#endif
int shmem_test_lock(long *lock)
int shmem_test_lock(volatile long *lock)
{
return _shmem_test_lock(lock, sizeof(long));
return _shmem_test_lock((void *)lock, sizeof(long));
}

Просмотреть файл

@ -24,11 +24,11 @@ C or C++:
.Vb
#include <mpp/shmem.h>
void shmem_clear_lock(long *lock);
void shmem_clear_lock(volatile long *lock);
void shmem_set_lock(long *lock);
void shmem_set_lock(volatile long *lock);
int shmem_test_lock(long *lock);
int shmem_test_lock(volatile long *lock);
.Ve
Fortran:
.Vb