Commit 14296d64 authored by titzer's avatar titzer Committed by Commit bot

[crankshaft] TODO bankruptcy.

R=verwaest@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1694643004

Cr-Commit-Position: refs/heads/master@{#33982}
parent 83f69507
......@@ -44,7 +44,6 @@ class HAliasAnalyzer : public ZoneObject {
// Constant objects can be distinguished statically.
if (a->IsConstant()) {
// TODO(titzer): DataEquals() is more efficient, but that's protected.
return a->Equals(b) ? kMustAlias : kNoAlias;
}
return kMayAlias;
......
......@@ -765,7 +765,6 @@ void HInstruction::Verify() {
bool HInstruction::CanDeoptimize() {
// TODO(titzer): make this a virtual method?
switch (opcode()) {
case HValue::kAbnormalExit:
case HValue::kAccessArgumentsAt:
......@@ -2731,7 +2730,6 @@ HConstant::HConstant(Handle<Object> object, Representation r)
bit_field_, has_int32_value && Smi::IsValid(int32_value_));
double_value_ = n;
bit_field_ = HasDoubleValueField::update(bit_field_, true);
// TODO(titzer): if this heap number is new space, tenure a new one.
}
Initialize(r);
......@@ -2904,7 +2902,6 @@ bool HConstant::EmitAtUses() {
DCHECK(IsLinked());
if (block()->graph()->has_osr() &&
block()->graph()->IsStandardConstant(this)) {
// TODO(titzer): this seems like a hack that should be fixed by custom OSR.
return true;
}
if (HasNoUses()) return true;
......
......@@ -2789,8 +2789,6 @@ class HCheckValue final : public HUnaryOperation {
bool in_new_space = isolate->heap()->InNewSpace(*func);
// NOTE: We create an uninitialized Unique and initialize it later.
// This is because a JSFunction can move due to GC during graph creation.
// TODO(titzer): This is a migration crutch. Replace with some kind of
// Uniqueness scope later.
Unique<JSFunction> target = Unique<JSFunction>::CreateUninitialized(func);
HCheckValue* check = new(zone) HCheckValue(value, target, in_new_space);
return check;
......@@ -3320,7 +3318,6 @@ class HPhi final : public HValue {
Representation representation_from_non_phi_uses_ = Representation::None();
bool has_type_feedback_from_uses_ = false;
// TODO(titzer): we can't eliminate the receiver for generating backtraces
bool IsDeletable() const override { return !IsReceiver(); }
};
......
......@@ -243,7 +243,6 @@ class HLoadEliminationTable : public ZoneObject {
if (instr->has_transition()) {
// A transition introduces a new field and alters the map of the object.
// Since the field in the object is new, it cannot alias existing entries.
// TODO(titzer): introduce a constant for the new map and remember it.
KillFieldInternal(object, FieldOf(JSObject::kMapOffset), NULL);
} else {
// Kill non-equivalent may-alias entries.
......@@ -402,7 +401,6 @@ class HLoadEliminationTable : public ZoneObject {
// Compute the field index for the given in-object offset; -1 if not tracked.
int FieldOf(int offset) {
if (offset >= kMaxTrackedFields * kPointerSize) return -1;
// TODO(titzer): track misaligned loads in a separate list?
if ((offset % kPointerSize) != 0) return -1; // Ignore misaligned accesses.
return offset / kPointerSize;
}
......
......@@ -36,7 +36,6 @@ void HStoreEliminationPhase::Run() {
HInstruction* instr = it.Current();
if (instr->CheckFlag(HValue::kIsDead)) continue;
// TODO(titzer): eliminate unobserved HStoreKeyed instructions too.
switch (instr->opcode()) {
case HValue::kStoreNamedField:
// Remove any unobserved stores overwritten by this store.
......@@ -68,7 +67,6 @@ void HStoreEliminationPhase::ProcessStore(HStoreNamedField* store) {
prev->id(), store->id()));
unobserved_.Remove(i);
} else {
// TODO(titzer): remove map word clearing from folded allocations.
i++;
}
}
......
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