hotspot/src/share/vm/adlc/archDesc.hpp
changeset 13971 3c568f3dacca
parent 7433 b418028612ad
child 22844 90f76a40ed8a
equal deleted inserted replaced
13970:11a9630698a6 13971:3c568f3dacca
   363 // Base class for generating a mapping from rule number to value.
   363 // Base class for generating a mapping from rule number to value.
   364 // Used with ArchDesc::build_map() for all maps except "enum MachOperands"
   364 // Used with ArchDesc::build_map() for all maps except "enum MachOperands"
   365 // A derived class defines the appropriate output for a specific mapping.
   365 // A derived class defines the appropriate output for a specific mapping.
   366 class OutputMap {
   366 class OutputMap {
   367 protected:
   367 protected:
   368   FILE     *_hpp;
   368   FILE       *_hpp;
   369   FILE     *_cpp;
   369   FILE       *_cpp;
   370   FormDict &_globals;
   370   FormDict   &_globals;
   371   ArchDesc &_AD;
   371   ArchDesc   &_AD;
       
   372   const char *_name;
   372 public:
   373 public:
   373   OutputMap (FILE *decl_file, FILE *def_file, FormDict &globals, ArchDesc &AD)
   374   OutputMap (FILE *decl_file, FILE *def_file, FormDict &globals, ArchDesc &AD, const char *name)
   374     : _hpp(decl_file), _cpp(def_file), _globals(globals), _AD(AD) {};
   375     : _hpp(decl_file), _cpp(def_file), _globals(globals), _AD(AD), _name(name) {};
   375   // Access files used by this routine
   376   // Access files used by this routine
   376   FILE        *decl_file() { return _hpp; }
   377   FILE        *decl_file() { return _hpp; }
   377   FILE        *def_file()  { return _cpp; }
   378   FILE        *def_file()  { return _cpp; }
   378   // Positions in iteration that derived class will be told about
   379   // Positions in iteration that derived class will be told about
   379   enum position { BEGIN_OPERANDS,
   380   enum position { BEGIN_OPERANDS,