#include "src/compiler/decompression-optimizer.h"
#include "src/compiler/graph.h"
#include "src/compiler/node-matchers.h"
#include "src/compiler/node-properties.h"
namespace v8 {
namespace internal {
namespace compiler {
namespace {
bool IsMachineLoad(Node* const node) { … }
bool IsTaggedMachineLoad(Node* const node) { … }
bool IsHeapConstant(Node* const node) { … }
bool IsIntConstant(Node* const node) { … }
bool IsTaggedPhi(Node* const node) { … }
bool IsWord64BitwiseOp(Node* const node) { … }
bool CanBeCompressed(Node* const node) { … }
void Replace(Node* const node, Node* const replacement) { … }
}
DecompressionOptimizer::DecompressionOptimizer(Zone* zone, Graph* graph,
CommonOperatorBuilder* common,
MachineOperatorBuilder* machine)
: … { … }
void DecompressionOptimizer::MarkNodes() { … }
void DecompressionOptimizer::MarkNodeInputs(Node* node) { … }
void DecompressionOptimizer::MarkAddressingBase(Node* base) { … }
void DecompressionOptimizer::MaybeMarkAndQueueForRevisit(Node* const node,
State state) { … }
void DecompressionOptimizer::ChangeHeapConstant(Node* const node) { … }
void DecompressionOptimizer::ChangePhi(Node* const node) { … }
void DecompressionOptimizer::ChangeLoad(Node* const node) { … }
void DecompressionOptimizer::ChangeWord64BitwiseOp(Node* const node,
const Operator* new_op) { … }
void DecompressionOptimizer::ChangeNodes() { … }
void DecompressionOptimizer::Reduce() { … }
}
}
}