< prev index next >
src/cpu/aarch64/vm/nativeInst_aarch64.hpp
Print this page
rev 9228 : 8143072: Port JVMCI to AArch64
Summary: AArch64-specific code for JVMCI
Reviewed-by: duke
@@ -60,11 +60,10 @@
inline bool is_return();
bool is_jump();
inline bool is_jump_or_nop();
inline bool is_cond_jump();
bool is_safepoint_poll();
- inline bool is_mov_literal64();
bool is_movz();
bool is_movk();
bool is_sigill_zombie_not_entrant();
protected:
@@ -96,10 +95,18 @@
static bool is_adrp_at(address instr);
static bool is_ldr_literal_at(address instr);
static bool is_ldrw_to_zr(address instr);
+ static bool is_call_at(address instr) {
+ const uint32_t insn = (*(uint32_t*)instr);
+ return (insn >> 26) == 0b100101;
+ }
+ bool is_call() {
+ return is_call_at(addr_at(0));
+ }
+
static bool maybe_cpool_ref(address instr) {
return is_adrp_at(instr) || is_ldr_literal_at(instr);
}
bool is_Membar() {
@@ -155,15 +162,10 @@
// Creation
inline friend NativeCall* nativeCall_at(address address);
inline friend NativeCall* nativeCall_before(address return_address);
- static bool is_call_at(address instr) {
- const uint32_t insn = (*(uint32_t*)instr);
- return (insn >> 26) == 0b100101;
- }
-
static bool is_call_before(address return_address) {
return is_call_at(return_address - NativeCall::return_address_offset);
}
// MT-safe patching of a call instruction.
< prev index next >