Index: src/arm/assembler-arm.h |
diff --git a/src/arm/assembler-arm.h b/src/arm/assembler-arm.h |
index 54f77794e2f87cef2c0decc9a0bf6fc6ad87d97b..888ce5cfc89a9b90296f958a474caf7ef4812090 100644 |
--- a/src/arm/assembler-arm.h |
+++ b/src/arm/assembler-arm.h |
@@ -754,10 +754,15 @@ class Assembler : public AssemblerBase { |
// Return the address in the constant pool of the code target address used by |
// the branch/call instruction at pc, or the object in a mov. |
INLINE(static Address target_pointer_address_at(Address pc)); |
+ INLINE(static Address thumb_target_pointer_address_at(Address pc)); |
// Read/Modify the pointer in the branch/call/move instruction at pc. |
INLINE(static Address target_pointer_at(Address pc)); |
INLINE(static void set_target_pointer_at(Address pc, Address target)); |
+ INLINE(static Address thumb_target_pointer_at(Address pc)); |
+ INLINE(static void thumb_set_target_pointer_at(Address pc, |
+ Address target, |
+ Code* host = NULL)); |
// Read/Modify the code target address in the branch/call instruction at pc. |
INLINE(static Address target_address_at(Address pc)); |
@@ -1584,6 +1589,10 @@ class Assembler : public AssemblerBase { |
static bool IsMovW(Instr instr); |
static bool IsMovTThumb(Instr instr); |
static bool IsMovWThumb(Instr instr); |
+ static bool IsThumbLdrPcImmediateOffset(Instr instr); |
+ static inline Address UntagAddress(Address addr); |
+ static inline bool IsThumbAddress(Address addr); |
+ static inline Address AlignAddress(Address addr); |
// Constants in pools are accessed via pc relative addressing, which can |
// reach +/-4KB for integer PC-relative loads and +/-1KB for floating-point |