Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1141)

Unified Diff: src/ast.h

Issue 1530003: Rework flow graph construction. (Closed)
Patch Set: Created 10 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/ast.cc » ('j') | src/data-flow.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/ast.h
diff --git a/src/ast.h b/src/ast.h
index fa85eee6fdf9d40fa63a7d144523247d2e798b3b..252c8f8c82f7d0a4fa789c0d0f9bd9c4bc905cfb 100644
--- a/src/ast.h
+++ b/src/ast.h
@@ -294,19 +294,6 @@ class Expression: public AstNode {
bitfields_ |= NumBitOpsField::encode(num_bit_ops);
}
- // Functions used for dead-code elimination. Predicate is true if the
- // expression is not dead code.
- int is_live() const { return LiveField::decode(bitfields_); }
- void mark_as_live() { bitfields_ |= LiveField::encode(true); }
-
- // Mark non-live children as live and push them on a stack for further
- // processing.
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count) {
- }
-
private:
static const int kMaxNumBitOps = (1 << 5) - 1;
@@ -319,7 +306,6 @@ class Expression: public AstNode {
class ToInt32Field : public BitField<bool, 2, 1> {};
class NumBitOpsField : public BitField<int, 3, 5> {};
class LoopConditionField: public BitField<bool, 8, 1> {};
- class LiveField: public BitField<bool, 9, 1> {};
};
@@ -907,10 +893,6 @@ class Literal: public Expression {
virtual bool IsTrivial() { return true; }
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
// Identity testers.
bool IsNull() const { return handle_.is_identical_to(Factory::null_value()); }
@@ -1118,10 +1100,6 @@ class VariableProxy: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
void SetIsPrimitive(bool value) { is_primitive_ = value; }
@@ -1260,10 +1238,6 @@ class Property: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
Expression* obj() const { return obj_; }
Expression* key() const { return key_; }
@@ -1299,10 +1273,6 @@ class Call: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
Expression* expression() const { return expression_; }
ZoneList<Expression*>* arguments() const { return arguments_; }
@@ -1382,10 +1352,6 @@ class UnaryOperation: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
Token::Value op() const { return op_; }
Expression* expression() const { return expression_; }
@@ -1412,10 +1378,6 @@ class BinaryOperation: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
// True iff the result can be safely overwritten (to avoid allocation).
// False for operations that can return one of their operands.
@@ -1473,10 +1435,6 @@ class CountOperation: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
bool is_prefix() const { return is_prefix_; }
bool is_postfix() const { return !is_prefix_; }
@@ -1510,10 +1468,6 @@ class CompareOperation: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
Token::Value op() const { return op_; }
Expression* left() const { return left_; }
@@ -1568,10 +1522,6 @@ class Assignment: public Expression {
virtual bool IsPrimitive();
virtual bool IsCritical();
- virtual void ProcessNonLiveChildren(
- List<AstNode*>* stack,
- ZoneList<Expression*>* body_definitions,
- int variable_count);
Assignment* AsSimpleAssignment() { return !is_compound() ? this : NULL; }
« no previous file with comments | « no previous file | src/ast.cc » ('j') | src/data-flow.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698