Permalink
Browse files

Use "stop-at-existing-trace" for now.

  • Loading branch information...
1 parent e72e2e8 commit e363527412f756f62d58c83d6e1ce80f0b26f395 @nominolo committed Sep 18, 2012
Showing with 9 additions and 0 deletions.
  1. +7 −0 vm/jit.cc
  2. +2 −0 vm/jit.hh
View
@@ -692,6 +692,13 @@ bool Jit::recordIns(BcIns *ins, Word *base, const Code *code) {
parent = parent->parent_;
}
if (!parent) {
+ // For now we just use "stop-at-existing trace".
+ LC_ASSERT(F->startPc() == ins);
+ DBG(cerr << "Linking to existing trace: " << F->traceId() << endl);
+ buf_.emit(IR::kSAVE, IRT_VOID | IRT_GUARD, IR_SAVE_LINK,
+ F->traceId());
+ finishRecording();
+ return true;
cerr << "NYI: Trace through JFUNC?\n";
goto abort_recording;
}
View
@@ -248,6 +248,8 @@ public:
///
/// TODO: What if a side trace needs to increase this value?
inline uint16_t frameSize() const { return frameSize_; }
+
+ inline BcIns *startPc() const { return startPc_; }
inline MCode *entry() { return mcode_; }
uint64_t literalValue(IRRef, Word* base);

0 comments on commit e363527

Please sign in to comment.