43 // Used to register dynamic code cache area with the OS |
43 // Used to register dynamic code cache area with the OS |
44 // Note: Currently only used in 64 bit Windows implementations |
44 // Note: Currently only used in 64 bit Windows implementations |
45 static bool register_code_area(char *low, char *high) { return true; } |
45 static bool register_code_area(char *low, char *high) { return true; } |
46 |
46 |
47 #ifndef AARCH64 |
47 #ifndef AARCH64 |
48 static jlong (*atomic_cmpxchg_long_func)(jlong compare_value, |
48 static int64_t (*atomic_cmpxchg_long_func)(int64_t compare_value, |
49 jlong exchange_value, |
49 int64_t exchange_value, |
50 volatile jlong *dest); |
50 volatile int64_t *dest); |
51 |
51 |
52 static jlong (*atomic_load_long_func)(const volatile jlong*); |
52 static int64_t (*atomic_load_long_func)(const volatile int64_t*); |
53 |
53 |
54 static void (*atomic_store_long_func)(jlong, volatile jlong*); |
54 static void (*atomic_store_long_func)(int64_t, volatile int64_t*); |
55 |
55 |
56 static jint (*atomic_add_func)(jint add_value, volatile jint *dest); |
56 static int32_t (*atomic_add_func)(int32_t add_value, volatile int32_t *dest); |
57 |
57 |
58 static jint (*atomic_xchg_func)(jint exchange_value, volatile jint *dest); |
58 static int32_t (*atomic_xchg_func)(int32_t exchange_value, volatile int32_t *dest); |
59 |
59 |
60 static jint (*atomic_cmpxchg_func)(jint compare_value, |
60 static int32_t (*atomic_cmpxchg_func)(int32_t compare_value, |
61 jint exchange_value, |
61 int32_t exchange_value, |
62 volatile jint *dest); |
62 volatile int32_t *dest); |
63 |
63 |
64 static jlong atomic_cmpxchg_long_bootstrap(jlong, jlong, volatile jlong*); |
64 static int64_t atomic_cmpxchg_long_bootstrap(int64_t, int64_t, volatile int64_t*); |
65 |
65 |
66 static jlong atomic_load_long_bootstrap(const volatile jlong*); |
66 static int64_t atomic_load_long_bootstrap(const volatile int64_t*); |
67 |
67 |
68 static void atomic_store_long_bootstrap(jlong, volatile jlong*); |
68 static void atomic_store_long_bootstrap(int64_t, volatile int64_t*); |
69 |
69 |
70 static jint atomic_add_bootstrap(jint add_value, volatile jint *dest); |
70 static int32_t atomic_add_bootstrap(int32_t add_value, volatile int32_t *dest); |
71 |
71 |
72 static jint atomic_xchg_bootstrap(jint exchange_value, volatile jint *dest); |
72 static int32_t atomic_xchg_bootstrap(int32_t exchange_value, volatile int32_t *dest); |
73 |
73 |
74 static jint atomic_cmpxchg_bootstrap(jint compare_value, |
74 static int32_t atomic_cmpxchg_bootstrap(int32_t compare_value, |
75 jint exchange_value, |
75 int32_t exchange_value, |
76 volatile jint *dest); |
76 volatile int32_t *dest); |
77 #endif // !AARCH64 |
77 #endif // !AARCH64 |
78 |
78 |
79 #endif // OS_CPU_LINUX_ARM_VM_OS_LINUX_ARM_HPP |
79 #endif // OS_CPU_LINUX_ARM_VM_OS_LINUX_ARM_HPP |