| 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);
|
|
|