Index: src/ia32/assembler-ia32.h |
diff --git a/src/ia32/assembler-ia32.h b/src/ia32/assembler-ia32.h |
index 0d701916992cb865085daf5bcbe3802bd8979bf8..48f06037525cf48c30ce1eea9206b55235630e1a 100644 |
--- a/src/ia32/assembler-ia32.h |
+++ b/src/ia32/assembler-ia32.h |
@@ -512,12 +512,15 @@ |
void GetCode(CodeDesc* desc); |
// Read/Modify the code target in the branch/call instruction at pc. |
- inline static Address target_address_at(Address pc, Address constant_pool); |
- inline static void set_target_address_at( |
- Address pc, Address constant_pool, Address target, |
- ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED); |
+ inline static Address target_address_at(Address pc, |
+ ConstantPoolArray* constant_pool); |
+ inline static void set_target_address_at(Address pc, |
+ ConstantPoolArray* constant_pool, |
+ Address target, |
+ ICacheFlushMode icache_flush_mode = |
+ FLUSH_ICACHE_IF_NEEDED); |
static inline Address target_address_at(Address pc, Code* code) { |
- Address constant_pool = code ? code->constant_pool() : NULL; |
+ ConstantPoolArray* constant_pool = code ? code->constant_pool() : NULL; |
return target_address_at(pc, constant_pool); |
} |
static inline void set_target_address_at(Address pc, |
@@ -525,7 +528,7 @@ |
Address target, |
ICacheFlushMode icache_flush_mode = |
FLUSH_ICACHE_IF_NEEDED) { |
- Address constant_pool = code ? code->constant_pool() : NULL; |
+ ConstantPoolArray* constant_pool = code ? code->constant_pool() : NULL; |
set_target_address_at(pc, constant_pool, target); |
} |
@@ -1448,8 +1451,6 @@ |
// inline tables, e.g., jump-tables. |
void db(uint8_t data); |
void dd(uint32_t data); |
- void dq(uint64_t data); |
- void dp(uintptr_t data) { dd(data); } |
void dd(Label* label); |
// Check if there is less than kGap bytes available in the buffer. |
@@ -1476,12 +1477,11 @@ |
byte byte_at(int pos) { return buffer_[pos]; } |
void set_byte_at(int pos, byte value) { buffer_[pos] = value; } |
- void PatchConstantPoolAccessInstruction(int pc_offset, int offset, |
- ConstantPoolEntry::Access access, |
- ConstantPoolEntry::Type type) { |
- // No embedded constant pool support. |
- UNREACHABLE(); |
- } |
+ // Allocate a constant pool of the correct size for the generated code. |
+ Handle<ConstantPoolArray> NewConstantPool(Isolate* isolate); |
+ |
+ // Generate the constant pool for the generated code. |
+ void PopulateConstantPool(ConstantPoolArray* constant_pool); |
protected: |
void emit_sse_operand(XMMRegister reg, const Operand& adr); |
@@ -1512,7 +1512,6 @@ |
TypeFeedbackId id = TypeFeedbackId::None()); |
inline void emit(const Immediate& x); |
inline void emit_w(const Immediate& x); |
- inline void emit_q(uint64_t x); |
// Emit the code-object-relative offset of the label's position |
inline void emit_code_relative_offset(Label* label); |