Reviewers: danno, Jakob, Paul Lind, kisg, palfia, kilvadyb,

Description:
MIPS: Add flag for testing long branch mode.

TEST=
BUG=

Please review this at https://codereview.chromium.org/173773003/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files (+5, -2 lines):
  M src/flag-definitions.h
  M src/mips/assembler-mips.cc


Index: src/flag-definitions.h
diff --git a/src/flag-definitions.h b/src/flag-definitions.h
index 476e5348af3dd96ea158c27559c29171d660903d..13de6b56eedd5b171d2e8ba2768a3ac6998b9e2e 100644
--- a/src/flag-definitions.h
+++ b/src/flag-definitions.h
@@ -398,6 +398,8 @@ DEFINE_bool(enable_32dregs, ENABLE_32DREGS_DEFAULT,
             "enable use of d16-d31 registers on ARM - this requires VFP3")
 DEFINE_bool(enable_vldr_imm, false,
             "enable use of constant pools for double immediate (ARM only)")
+DEFINE_bool(force_long_branches, false,
+            "force all emitted branches to be in long mode (MIPS only)")

 // bootstrapper.cc
 DEFINE_string(expose_natives_as, NULL, "expose natives in global object")
Index: src/mips/assembler-mips.cc
diff --git a/src/mips/assembler-mips.cc b/src/mips/assembler-mips.cc
index f551dd5e104129e910996606ce45cc0c47573146..9adb9001fa400df8397a29eac072279f25a6db69 100644
--- a/src/mips/assembler-mips.cc
+++ b/src/mips/assembler-mips.cc
@@ -313,11 +313,12 @@ Assembler::Assembler(Isolate* isolate, void* buffer, int buffer_size)
   trampoline_pool_blocked_nesting_ = 0;
   // We leave space (16 * kTrampolineSlotsSize)
   // for BlockTrampolinePoolScope buffer.
-  next_buffer_check_ = kMaxBranchOffset - kTrampolineSlotsSize * 16;
+  next_buffer_check_ = FLAG_force_long_branches
+      ? kMaxInt : kMaxBranchOffset - kTrampolineSlotsSize * 16;
   internal_trampoline_exception_ = false;
   last_bound_pos_ = 0;

-  trampoline_emitted_ = false;
+  trampoline_emitted_ = FLAG_force_long_branches;
   unbound_labels_count_ = 0;
   block_buffer_growth_ = false;



--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to