Index: src/assembler.h |
diff --git a/src/assembler.h b/src/assembler.h |
index 25060018221140df2a8a453fb26fbb7115013f87..7a6b303362c0c93ac142628d621f77ef230e3352 100644 |
--- a/src/assembler.h |
+++ b/src/assembler.h |
@@ -276,9 +276,10 @@ class RelocInfo BASE_EMBEDDED { |
EXTERNAL_REFERENCE, // The address of an external C++ function. |
INTERNAL_REFERENCE, // An address inside the same function. |
- // Marks a constant pool. Only used on ARM. |
- // It uses a custom noncompact encoding. |
+ // Marks constant and veneer pools. Only used on ARM and A64. |
+ // They use a custom noncompact encoding. |
CONST_POOL, |
+ VENEER_POOL, |
// add more as needed |
// Pseudo-types |
@@ -288,7 +289,7 @@ class RelocInfo BASE_EMBEDDED { |
CODE_AGE_SEQUENCE, // Not stored in RelocInfo array, used explictly by |
// code aging. |
FIRST_REAL_RELOC_MODE = CODE_TARGET, |
- LAST_REAL_RELOC_MODE = CONST_POOL, |
+ LAST_REAL_RELOC_MODE = VENEER_POOL, |
FIRST_PSEUDO_RELOC_MODE = CODE_AGE_SEQUENCE, |
LAST_PSEUDO_RELOC_MODE = CODE_AGE_SEQUENCE, |
LAST_CODE_ENUM = DEBUG_BREAK, |
@@ -342,6 +343,9 @@ class RelocInfo BASE_EMBEDDED { |
static inline bool IsConstPool(Mode mode) { |
return mode == CONST_POOL; |
} |
+ static inline bool IsVeneerPool(Mode mode) { |
+ return mode == VENEER_POOL; |
+ } |
static inline bool IsPosition(Mode mode) { |
return mode == POSITION || mode == STATEMENT_POSITION; |
} |
@@ -537,7 +541,7 @@ class RelocInfoWriter BASE_EMBEDDED { |
inline void WriteTaggedPC(uint32_t pc_delta, int tag); |
inline void WriteExtraTaggedPC(uint32_t pc_delta, int extra_tag); |
inline void WriteExtraTaggedIntData(int data_delta, int top_tag); |
- inline void WriteExtraTaggedConstPoolData(int data); |
+ inline void WriteExtraTaggedPoolData(int data, int pool_type); |
inline void WriteExtraTaggedData(intptr_t data_delta, int top_tag); |
inline void WriteTaggedData(intptr_t data_delta, int tag); |
inline void WriteExtraTag(int extra_tag, int top_tag); |
@@ -588,7 +592,7 @@ class RelocIterator: public Malloced { |
void ReadTaggedPC(); |
void AdvanceReadPC(); |
void AdvanceReadId(); |
- void AdvanceReadConstPoolData(); |
+ void AdvanceReadPoolData(); |
void AdvanceReadPosition(); |
void AdvanceReadData(); |
void AdvanceReadVariableLengthPCJump(); |