Add implementation of WhereAmI() to support NO_AFFINITY=0 on ARM64 (#4648)
* Add preliminary implementation of WhereAmI()
This commit is contained in:
parent
a0083fdf68
commit
c57f9326d6
|
@ -55,6 +55,19 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#ifndef ASSEMBLER
|
#ifndef ASSEMBLER
|
||||||
|
|
||||||
|
|
||||||
|
static __inline int WhereAmI(void){
|
||||||
|
uint64_t ret;
|
||||||
|
__asm__ volatile (
|
||||||
|
" mrs x0, mpidr_el1 \n"
|
||||||
|
" and x0, x0, 0xff \n"
|
||||||
|
:"=r" (ret)
|
||||||
|
:: "memory"
|
||||||
|
);
|
||||||
|
ret +=1;
|
||||||
|
if ((int)ret <0) ret = 0;
|
||||||
|
return (int)ret;
|
||||||
|
}
|
||||||
|
|
||||||
static __inline void blas_lock(volatile BLASULONG *address){
|
static __inline void blas_lock(volatile BLASULONG *address){
|
||||||
|
|
||||||
BLASULONG ret;
|
BLASULONG ret;
|
||||||
|
|
Loading…
Reference in New Issue