From: jochen@chromium.org Date: Wed, 26 Feb 2014 11:54:55 +0000 (+0000) Subject: A64: Decoder should not inherit from DecoderVisitor X-Git-Tag: upstream/4.7.83~10561 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0d297e51d7d0eae5bb64f4a9595d8fa74798363c;p=platform%2Fupstream%2Fv8.git A64: Decoder should not inherit from DecoderVisitor BUG=none R=ulan@chromium.org, rodolph.perfetta@arm.com LOG=n Review URL: https://codereview.chromium.org/177073013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- diff --git a/src/a64/decoder-a64.h b/src/a64/decoder-a64.h index 0f53c34..1a7f6c4 100644 --- a/src/a64/decoder-a64.h +++ b/src/a64/decoder-a64.h @@ -89,23 +89,17 @@ namespace internal { // must provide implementations for all of these functions. class DecoderVisitor { public: + virtual ~DecoderVisitor() {} + #define DECLARE(A) virtual void Visit##A(Instruction* instr) = 0; VISITOR_LIST(DECLARE) #undef DECLARE - - virtual ~DecoderVisitor() {} - - private: - // Visitors are registered in a list. - std::list visitors_; - - friend class Decoder; }; -class Decoder: public DecoderVisitor { +class Decoder { public: - explicit Decoder() {} + Decoder() {} // Top-level instruction decoder function. Decodes an instruction and calls // the visitor functions registered with the Decoder class. @@ -194,6 +188,9 @@ class Decoder: public DecoderVisitor { // tree, and call the corresponding visitors. // On entry, instruction bits 27:25 = 0x7. void DecodeAdvSIMDDataProcessing(Instruction* instr); + + // Visitors are registered in a list. + std::list visitors_; };