Index: src/x64/assembler-x64.h |
=================================================================== |
--- src/x64/assembler-x64.h (revision 5449) |
+++ src/x64/assembler-x64.h (working copy) |
@@ -1005,6 +1005,7 @@ |
// but it may be bound only once. |
void bind(Label* L); // binds an unbound label L to the current code position |
+ void bind(NearLabel* L); |
// Calls |
// Call near relative 32-bit displacement, relative to next instruction. |
@@ -1029,10 +1030,16 @@ |
// Jump near absolute indirect (m64) |
void jmp(const Operand& src); |
+ // Short jump |
+ void jmp(NearLabel* L); |
+ |
// Conditional jumps |
void j(Condition cc, Label* L); |
void j(Condition cc, Handle<Code> target, RelocInfo::Mode rmode); |
+ // Conditional short jump |
+ void j(Condition cc, NearLabel* L, Hint hint = no_hint); |
+ |
// Floating-point operations |
void fld(int i); |
@@ -1196,6 +1203,7 @@ |
private: |
byte* addr_at(int pos) { return buffer_ + pos; } |
byte byte_at(int pos) { return buffer_[pos]; } |
+ void set_byte_at(int pos, byte value) { buffer_[pos] = value; } |
uint32_t long_at(int pos) { |
return *reinterpret_cast<uint32_t*>(addr_at(pos)); |
} |
@@ -1371,7 +1379,6 @@ |
// labels |
// void print(Label* L); |
void bind_to(Label* L, int pos); |
- void link_to(Label* L, Label* appendix); |
// record reloc info for current pc_ |
void RecordRelocInfo(RelocInfo::Mode rmode, intptr_t data = 0); |