diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2010-08-23 09:44:19 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2010-08-23 09:44:19 -0700 |
commit | 9581562e653f6df810e40c076bc97d50daccf302 (patch) | |
tree | cda56ce9cae5dfed609c9d3704b6b47cae4a791a /src/arch/x86/isa/microops/regop.isa | |
parent | f6182f948bdc05f3d0949627378ac5d15eea8e58 (diff) | |
download | gem5-9581562e653f6df810e40c076bc97d50daccf302.tar.xz |
X86: Get rid of the flagless microop constructor.
This will reduce clutter in the source and hopefully speed up compilation.
Diffstat (limited to 'src/arch/x86/isa/microops/regop.isa')
-rw-r--r-- | src/arch/x86/isa/microops/regop.isa | 54 |
1 files changed, 2 insertions, 52 deletions
diff --git a/src/arch/x86/isa/microops/regop.isa b/src/arch/x86/isa/microops/regop.isa index c072eca22..4b0080d40 100644 --- a/src/arch/x86/isa/microops/regop.isa +++ b/src/arch/x86/isa/microops/regop.isa @@ -101,20 +101,12 @@ def template MicroRegOpImmExecute {{ def template MicroRegOpDeclare {{ class %(class_name)s : public %(base_class)s { - protected: - void buildMe(); - public: %(class_name)s(ExtMachInst _machInst, const char * instMnem, uint64_t setFlags, InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, uint8_t _dataSize, uint16_t _ext); - %(class_name)s(ExtMachInst _machInst, - const char * instMnem, - InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, - uint8_t _dataSize, uint16_t _ext); - %(BasicExecDeclare)s }; }}; @@ -123,42 +115,17 @@ def template MicroRegOpImmDeclare {{ class %(class_name)s : public %(base_class)s { - protected: - void buildMe(); - public: %(class_name)s(ExtMachInst _machInst, const char * instMnem, uint64_t setFlags, InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, uint8_t _dataSize, uint16_t _ext); - %(class_name)s(ExtMachInst _machInst, - const char * instMnem, - InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, - uint8_t _dataSize, uint16_t _ext); - %(BasicExecDeclare)s }; }}; def template MicroRegOpConstructor {{ - - inline void %(class_name)s::buildMe() - { - %(constructor)s; - } - - inline %(class_name)s::%(class_name)s( - ExtMachInst machInst, const char * instMnem, - InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, - uint8_t _dataSize, uint16_t _ext) : - %(base_class)s(machInst, "%(mnemonic)s", instMnem, 0, - _src1, _src2, _dest, _dataSize, _ext, - %(op_class)s) - { - buildMe(); - } - inline %(class_name)s::%(class_name)s( ExtMachInst machInst, const char * instMnem, uint64_t setFlags, InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, @@ -167,28 +134,11 @@ def template MicroRegOpConstructor {{ _src1, _src2, _dest, _dataSize, _ext, %(op_class)s) { - buildMe(); + %(constructor)s; } }}; def template MicroRegOpImmConstructor {{ - - inline void %(class_name)s::buildMe() - { - %(constructor)s; - } - - inline %(class_name)s::%(class_name)s( - ExtMachInst machInst, const char * instMnem, - InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, - uint8_t _dataSize, uint16_t _ext) : - %(base_class)s(machInst, "%(mnemonic)s", instMnem, 0, - _src1, _imm8, _dest, _dataSize, _ext, - %(op_class)s) - { - buildMe(); - } - inline %(class_name)s::%(class_name)s( ExtMachInst machInst, const char * instMnem, uint64_t setFlags, InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, @@ -197,7 +147,7 @@ def template MicroRegOpImmConstructor {{ _src1, _imm8, _dest, _dataSize, _ext, %(op_class)s) { - buildMe(); + %(constructor)s; } }}; |