~ppsspp/ppsspp/armips

« back to all changes in this revision

Viewing changes to Archs/Architecture.h

  • Committer: Sérgio Benjamim
  • Date: 2016-01-06 06:20:33 UTC
  • Revision ID: sergio_br2@yahoo.com.br-20160106062033-47f4u4kvedy9cid4
Sync, 23cd57f.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#pragma once
2
2
 
3
3
class IElfRelocator;
 
4
class CAssemblerCommand;
 
5
class Tokenizer;
 
6
class Parser;
4
7
 
5
8
enum class Endianness { Big, Little };
6
9
 
7
10
class CArchitecture
8
11
{
9
12
public:
10
 
        virtual void AssembleOpcode(const std::wstring& name, const std::wstring& args) = 0;
11
 
        virtual bool AssembleDirective(const std::wstring& name, const std::wstring& args) = 0;
 
13
        virtual CAssemblerCommand* parseDirective(Parser& parserr) { return nullptr; };
 
14
        virtual CAssemblerCommand* parseOpcode(Parser& parser) { return nullptr; };
12
15
        virtual void NextSection() = 0;
13
16
        virtual void Pass2() = 0;
14
17
        virtual void Revalidate() = 0;
20
23
class CInvalidArchitecture: public CArchitecture
21
24
{
22
25
public:
23
 
        virtual void AssembleOpcode(const std::wstring& name, const std::wstring& args);
24
 
        virtual bool AssembleDirective(const std::wstring& name, const std::wstring& args);
25
26
        virtual void NextSection();
26
27
        virtual void Pass2();
27
28
        virtual void Revalidate();