Commit 5fa3bd84 authored by ager@chromium.org's avatar ager@chromium.org

Remove unused code. This code used to be used to "decide" if a call

to eval is aliased.  Now that we correctly track eval aliasing, we do
not need this code.
Review URL: http://codereview.chromium.org/20078

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1228 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent d7a9f15b
......@@ -50,7 +50,6 @@ static int CompareLocal(Variable* const* v, Variable* const* w) {
template<class Allocator>
ScopeInfo<Allocator>::ScopeInfo(Scope* scope)
: function_name_(Factory::empty_symbol()),
supports_eval_(scope->SupportsEval()),
parameters_(scope->num_parameters()),
stack_slots_(scope->num_stack_slots()),
context_slots_(scope->num_heap_slots()),
......@@ -151,7 +150,6 @@ ScopeInfo<Allocator>::ScopeInfo(Scope* scope)
// Encoding format in the Code object:
//
// - function name
// - supports eval info
//
// - number of variables in the context object (smi) (= function context
// slot index + 1)
......@@ -247,7 +245,6 @@ static Object** ReadList(Object** p,
template<class Allocator>
ScopeInfo<Allocator>::ScopeInfo(Code* code)
: function_name_(Factory::empty_symbol()),
supports_eval_(false),
parameters_(4),
stack_slots_(8),
context_slots_(8),
......@@ -257,7 +254,6 @@ ScopeInfo<Allocator>::ScopeInfo(Code* code)
Object** p0 = &Memory::Object_at(code->sinfo_start());
Object** p = p0;
p = ReadSymbol(p, &function_name_);
p = ReadBool(p, &supports_eval_);
p = ReadList<Allocator>(p, &context_slots_, &context_modes_);
p = ReadList<Allocator>(p, &parameters_);
p = ReadList<Allocator>(p, &stack_slots_);
......@@ -310,8 +306,8 @@ static Object** WriteList(Object** p,
template<class Allocator>
int ScopeInfo<Allocator>::Serialize(Code* code) {
// function name, supports eval, length & sentinel for 3 tables:
const int extra_slots = 1 + 1 + 2 * 3;
// function name, length & sentinel for 3 tables:
const int extra_slots = 1 + 2 * 3;
int size = (extra_slots +
context_slots_.length() * 2 +
parameters_.length() +
......@@ -322,7 +318,6 @@ int ScopeInfo<Allocator>::Serialize(Code* code) {
Object** p0 = &Memory::Object_at(code->sinfo_start());
Object** p = p0;
p = WriteSymbol(p, function_name_);
p = WriteInt(p, supports_eval_);
p = WriteList(p, &context_slots_, &context_modes_);
p = WriteList(p, &parameters_);
p = WriteList(p, &stack_slots_);
......@@ -343,8 +338,8 @@ void ScopeInfo<Allocator>::IterateScopeInfo(Code* code, ObjectVisitor* v) {
static Object** ContextEntriesAddr(Code* code) {
ASSERT(code->sinfo_size() > 0);
// +2 for function name, supports eval:
return &Memory::Object_at(code->sinfo_start()) + 2;
// +1 for function name:
return &Memory::Object_at(code->sinfo_start()) + 1;
}
......@@ -366,21 +361,6 @@ static Object** StackSlotEntriesAddr(Code* code) {
}
template<class Allocator>
bool ScopeInfo<Allocator>::SupportsEval(Code* code) {
bool result = false;
if (code->sinfo_size() > 0) {
ReadBool(&Memory::Object_at(code->sinfo_start()) + 1, &result);
}
#ifdef DEBUG
{ ScopeInfo info(code);
ASSERT(result == info.supports_eval_);
}
#endif
return result;
}
template<class Allocator>
int ScopeInfo<Allocator>::NumberOfStackSlots(Code* code) {
if (code->sinfo_size() > 0) {
......@@ -551,9 +531,6 @@ void ScopeInfo<Allocator>::Print() {
PrintF("/* no function name */");
PrintF("{");
if (supports_eval_)
PrintF("\n // supports eval\n");
PrintList<Allocator>("parameters", 0, parameters_);
PrintList<Allocator>("stack slots", 0, stack_slots_);
PrintList<Allocator>("context slots", Context::MIN_CONTEXT_SLOTS,
......
......@@ -75,8 +75,6 @@ class ScopeInfo BASE_EMBEDDED {
Handle<String> function_name() const { return function_name_; }
bool supports_eval() const { return supports_eval_; }
Handle<String> parameter_name(int i) const { return parameters_[i]; }
int number_of_parameters() const { return parameters_.length(); }
......@@ -104,8 +102,6 @@ class ScopeInfo BASE_EMBEDDED {
// encoding of it's information in a Code object, which is why these
// functions are in this class.
static bool SupportsEval(Code* code);
// Return the number of stack slots for code.
static int NumberOfStackSlots(Code* code);
......@@ -146,7 +142,6 @@ class ScopeInfo BASE_EMBEDDED {
private:
Handle<String> function_name_;
bool supports_eval_;
List<Handle<String>, Allocator > parameters_;
List<Handle<String>, Allocator > stack_slots_;
List<Handle<String>, Allocator > context_slots_;
......
......@@ -324,11 +324,6 @@ void Scope::AllocateVariables() {
}
bool Scope::SupportsEval() const {
return scope_calls_eval_ || inner_scope_calls_eval_;
}
bool Scope::AllowsLazyCompilation() const {
return !force_eager_compilation_ && HasTrivialOuterContext();
}
......
......@@ -222,10 +222,6 @@ class Scope: public ZoneObject {
int num_stack_slots() const { return num_stack_slots_; }
int num_heap_slots() const { return num_heap_slots_; }
// True if this scope supports calling eval (has a properly
// initialized context).
bool SupportsEval() const;
// Make sure this scope and all outer scopes are eagerly compiled.
void ForceEagerCompilation() { force_eager_compilation_ = true; }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment