| Index: src/compiler/instruction.h
|
| diff --git a/src/compiler/instruction.h b/src/compiler/instruction.h
|
| index c6a3d6df0c6bae04f664d43fe5df9704fe4b8410..687b1b8761312c5ee50ea3804337bfd63d455a36 100644
|
| --- a/src/compiler/instruction.h
|
| +++ b/src/compiler/instruction.h
|
| @@ -10,11 +10,13 @@
|
| #include <map>
|
| #include <set>
|
|
|
| +#include "src/base/compiler-specific.h"
|
| #include "src/compiler/common-operator.h"
|
| #include "src/compiler/frame.h"
|
| #include "src/compiler/instruction-codes.h"
|
| #include "src/compiler/opcodes.h"
|
| #include "src/compiler/source-position.h"
|
| +#include "src/globals.h"
|
| #include "src/macro-assembler.h"
|
| #include "src/register-configuration.h"
|
| #include "src/zone/zone-allocator.h"
|
| @@ -516,8 +518,8 @@ class LocationOperand : public InstructionOperand {
|
| class IndexField : public BitField64<int32_t, 35, 29> {};
|
| };
|
|
|
| -
|
| -class ExplicitOperand : public LocationOperand {
|
| +class V8_EXPORT_PRIVATE ExplicitOperand
|
| + : public NON_EXPORTED_BASE(LocationOperand) {
|
| public:
|
| ExplicitOperand(LocationKind kind, MachineRepresentation rep, int index);
|
|
|
| @@ -792,7 +794,7 @@ std::ostream& operator<<(std::ostream& os, const ReferenceMap& pm);
|
|
|
| class InstructionBlock;
|
|
|
| -class Instruction final {
|
| +class V8_EXPORT_PRIVATE Instruction final {
|
| public:
|
| size_t OutputCount() const { return OutputCountField::decode(bit_field_); }
|
| const InstructionOperand* OutputAt(size_t i) const {
|
| @@ -1019,8 +1021,7 @@ class RpoNumber final {
|
|
|
| std::ostream& operator<<(std::ostream&, const RpoNumber&);
|
|
|
| -
|
| -class Constant final {
|
| +class V8_EXPORT_PRIVATE Constant final {
|
| public:
|
| enum Type {
|
| kInt32,
|
| @@ -1211,7 +1212,8 @@ class DeoptimizationEntry final {
|
|
|
| typedef ZoneVector<DeoptimizationEntry> DeoptimizationVector;
|
|
|
| -class PhiInstruction final : public ZoneObject {
|
| +class V8_EXPORT_PRIVATE PhiInstruction final
|
| + : public NON_EXPORTED_BASE(ZoneObject) {
|
| public:
|
| typedef ZoneVector<InstructionOperand> Inputs;
|
|
|
| @@ -1236,7 +1238,8 @@ class PhiInstruction final : public ZoneObject {
|
|
|
|
|
| // Analogue of BasicBlock for Instructions instead of Nodes.
|
| -class InstructionBlock final : public ZoneObject {
|
| +class V8_EXPORT_PRIVATE InstructionBlock final
|
| + : public NON_EXPORTED_BASE(ZoneObject) {
|
| public:
|
| InstructionBlock(Zone* zone, RpoNumber rpo_number, RpoNumber loop_header,
|
| RpoNumber loop_end, bool deferred, bool handler);
|
| @@ -1343,7 +1346,8 @@ struct PrintableInstructionSequence;
|
|
|
| // Represents architecture-specific generated code before, during, and after
|
| // register allocation.
|
| -class InstructionSequence final : public ZoneObject {
|
| +class V8_EXPORT_PRIVATE InstructionSequence final
|
| + : public NON_EXPORTED_BASE(ZoneObject) {
|
| public:
|
| static InstructionBlocks* InstructionBlocksFor(Zone* zone,
|
| const Schedule* schedule);
|
| @@ -1501,8 +1505,8 @@ class InstructionSequence final : public ZoneObject {
|
| void ValidateSSA() const;
|
|
|
| private:
|
| - friend std::ostream& operator<<(std::ostream& os,
|
| - const PrintableInstructionSequence& code);
|
| + friend V8_EXPORT_PRIVATE std::ostream& operator<<(
|
| + std::ostream& os, const PrintableInstructionSequence& code);
|
|
|
| typedef ZoneMap<const Instruction*, SourcePosition> SourcePositionMap;
|
|
|
| @@ -1530,9 +1534,8 @@ struct PrintableInstructionSequence {
|
| const InstructionSequence* sequence_;
|
| };
|
|
|
| -
|
| -std::ostream& operator<<(std::ostream& os,
|
| - const PrintableInstructionSequence& code);
|
| +V8_EXPORT_PRIVATE std::ostream& operator<<(
|
| + std::ostream& os, const PrintableInstructionSequence& code);
|
|
|
| } // namespace compiler
|
| } // namespace internal
|
|
|