Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
isa_print_gen.cxx File Reference
#include <cstddef>
#include <cstdlib>
#include <cstdarg>
#include <cstdio>
#include <cassert>
#include <cstring>
#include <vector>
#include <list>
#include "topcode.h"
#include "targ_isa_properties.h"
#include "gen_util.h"
#include "isa_print_gen.h"
Include dependency graph for isa_print_gen.cxx:

Go to the source code of this file.

Classes

struct  isa_print_type
struct  list_info
struct  op_pr

Defines

#define MAX_OPNDS   6
#define MAX_RESULTS   2
#define MAX_LISTING_OPERANDS   (RESULT+MAX_RESULTS)
#define FNAME   "targ_isa_print"

Typedefs

typedef list_infoLISTING_INFO

Enumerations

enum  COMP_TYPE {
  END = 0, OPND = 1, RESULT = OPND+MAX_OPNDS, END = 0,
  NAME = 1, OPND = 2, RESULT = OPND+MAX_OPNDS
}

Functions

const char * Print_Name (int print_index)
void ISA_Print_Begin (const char *)
ISA_PRINT_TYPE ISA_Print_Type_Create (const char *name, const char *format_string)
void Instruction_Print_Group (ISA_PRINT_TYPE print_type, TOP top,...)
void Name (void)
void Operand (int operand_index)
void Result (int result_index)
void Set_AsmName_Func (const char *(*asmname_func)(TOP topcode))
void ISA_Print_End (void)

Variables

static list< LISTING_INFOall_prints
static LISTING_INFO current_print_desc
static op_prop_prints [TOP_count+1]
static list< op_pr * > op_prints_list
static int list_index
static const char *(* asmname )(TOP topcode)
static bool top_specified [TOP_count]
static const char *const interface []

Define Documentation

#define FNAME   "targ_isa_print"

Definition at line 76 of file isa_print_gen.cxx.

Referenced by ISA_Print_End(), Name(), Operand(), Print_Name(), and Result().

#define MAX_OPNDS   6

Definition at line 65 of file isa_print_gen.cxx.

Referenced by Operand(), and Print_Name().

#define MAX_RESULTS   2

Definition at line 66 of file isa_print_gen.cxx.

Referenced by Print_Name(), and Result().


Typedef Documentation

Definition at line 91 of file isa_print_gen.cxx.


Enumeration Type Documentation

enum COMP_TYPE
Enumerator:
END 
OPND 
RESULT 
END 
NAME 
OPND 
RESULT 

Definition at line 69 of file isa_print_gen.cxx.


Function Documentation

void Instruction_Print_Group ( ISA_PRINT_TYPE  print_type,
TOP  top,
  ... 
)

Definition at line 222 of file isa_print_gen.cxx.

References current_print_desc, op_pr::desc, fprintf(), list_info::have_name, isa_print_type::name, op_prints, op_prints_list, top_specified, and list_info::type.

Referenced by main().

Here is the call graph for this function:

void ISA_Print_Begin ( const char *  )

Definition at line 193 of file isa_print_gen.cxx.

Referenced by main().

void Name ( void  )

Definition at line 253 of file isa_print_gen.cxx.

References list_info::arg, list_info::args, current_print_desc, exit(), fprintf(), list_info::have_name, MAX_LISTING_OPERANDS, isa_print_type::name, NAME, and list_info::type.

Here is the call graph for this function:

void Operand ( int  operand_index)

Definition at line 269 of file isa_print_gen.cxx.

References list_info::arg, list_info::args, current_print_desc, exit(), fprintf(), MAX_LISTING_OPERANDS, MAX_OPNDS, isa_print_type::name, OPND, and list_info::type.

Here is the call graph for this function:

const char* Print_Name ( int  print_index)

Definition at line 159 of file isa_print_gen.cxx.

References buf, END, initialized, MAX_LISTING_OPERANDS, MAX_OPNDS, MAX_RESULTS, NAME, OPND, RESULT, and strdup.

void Result ( int  result_index)

Definition at line 289 of file isa_print_gen.cxx.

References list_info::arg, list_info::args, current_print_desc, exit(), fprintf(), MAX_LISTING_OPERANDS, MAX_RESULTS, isa_print_type::name, RESULT, and list_info::type.

Here is the call graph for this function:

void Set_AsmName_Func ( const char *(*)(TOP topcode)  asmname_func)

Definition at line 313 of file isa_print_gen.cxx.

References asmname, and Set_AsmName_Func().

Referenced by main(), and Set_AsmName_Func().

Here is the call graph for this function:


Variable Documentation

list<LISTING_INFO> all_prints [static]

Definition at line 99 of file isa_print_gen.cxx.

Referenced by ISA_Print_End(), and ISA_Print_Type_Create().

const char*(* asmname)(TOP topcode) [static]

Definition at line 104 of file isa_print_gen.cxx.

Referenced by ISA_Print_End(), and Set_AsmName_Func().

const char* const interface[] [static]

Definition at line 107 of file isa_print_gen.cxx.

Referenced by ISA_Print_End().

int list_index [static]

Definition at line 103 of file isa_print_gen.cxx.

Referenced by ISA_Print_End(), and ISA_Print_Type_Create().

op_pr* op_prints[TOP_count+1] [static]

Definition at line 101 of file isa_print_gen.cxx.

Referenced by Instruction_Print_Group(), and ISA_Print_End().

list<op_pr*> op_prints_list [static]

Definition at line 102 of file isa_print_gen.cxx.

Referenced by Instruction_Print_Group().

bool top_specified[TOP_count] [static]

Definition at line 105 of file isa_print_gen.cxx.

Referenced by Instruction_Print_Group(), and ISA_Print_End().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines