| Index: src/arm/assembler-arm.h
|
| diff --git a/src/arm/assembler-arm.h b/src/arm/assembler-arm.h
|
| index 836ff4f3d02f089aa5206a8f26fabed93d389d36..2241572fcea13015776c01015ebd3cb71210aed7 100644
|
| --- a/src/arm/assembler-arm.h
|
| +++ b/src/arm/assembler-arm.h
|
| @@ -746,7 +746,7 @@ class Assembler : public AssemblerBase {
|
| // Returns the branch offset to the given label from the current code position
|
| // Links the label to the current position if it is still unbound
|
| // Manages the jump elimination optimization if the second parameter is true.
|
| - int branch_offset(Label* L, bool jump_elimination_allowed);
|
| + int branch_offset(Label* L);
|
|
|
| // Returns true if the given pc address is the start of a constant pool load
|
| // instruction sequence.
|
| @@ -852,13 +852,11 @@ class Assembler : public AssemblerBase {
|
| void bx(Register target, Condition cond = al); // v5 and above, plus v4t
|
|
|
| // Convenience branch instructions using labels
|
| - void b(Label* L, Condition cond = al) {
|
| - b(branch_offset(L, cond == al), cond);
|
| - }
|
| - void b(Condition cond, Label* L) { b(branch_offset(L, cond == al), cond); }
|
| - void bl(Label* L, Condition cond = al) { bl(branch_offset(L, false), cond); }
|
| - void bl(Condition cond, Label* L) { bl(branch_offset(L, false), cond); }
|
| - void blx(Label* L) { blx(branch_offset(L, false)); } // v5 and above
|
| + void b(Label* L, Condition cond = al);
|
| + void b(Condition cond, Label* L) { b(L, cond); }
|
| + void bl(Label* L, Condition cond = al);
|
| + void bl(Condition cond, Label* L) { bl(L, cond); }
|
| + void blx(Label* L); // v5 and above
|
|
|
| // Data-processing instructions
|
|
|
| @@ -1536,12 +1534,19 @@ class Assembler : public AssemblerBase {
|
| // Check if is time to emit a constant pool.
|
| void CheckConstPool(bool force_emit, bool require_jump);
|
|
|
| + void MaybeCheckConstPool() {
|
| + if (pc_offset() >= next_buffer_check_) {
|
| + CheckConstPool(false, true);
|
| + }
|
| + }
|
| +
|
| // 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);
|
|
|
| +
|
| bool use_extended_constant_pool() const {
|
| return constant_pool_builder_.current_section() ==
|
| ConstantPoolArray::EXTENDED_SECTION;
|
|
|