Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
isa_operands_gen.cxx File Reference
#include <stddef.h>
#include <stdlib.h>
#include <stdarg.h>
#include <stdio.h>
#include <assert.h>
#include <vector>
#include <list>
#include <algorithm>
#include "topcode.h"
#include "gen_util.h"
#include "isa_operands_gen.h"
Include dependency graph for isa_operands_gen.cxx:

Go to the source code of this file.

Classes

struct  operand_value_type
struct  operands_group
struct  operand_use_type

Defines

#define FNAME   "targ_isa_operands"

Typedefs

typedef struct operand_value_typeOPERAND_VALUE_TYPE
typedef struct operands_groupOPERANDS_GROUP

Functions

void ISA_Operands_Begin (const char *)
OPERAND_VALUE_TYPE ISA_Reg_Opnd_Type_Create (const char *name, ISA_REGISTER_CLASS register_class, ISA_REGISTER_SUBCLASS subclass, int size, RTYPE type, FP_TYPE fp_int)
OPERAND_VALUE_TYPE ISA_Lit_Opnd_Type_Create (const char *name, int size, RTYPE type, ISA_LIT_CLASS literal_class)
OPERAND_VALUE_TYPE ISA_Enum_Opnd_Type_Create (const char *name, int size, RTYPE type, ISA_ENUM_CLASS enum_class)
OPERAND_USE_TYPE Create_Operand_Use (const char *name)
void Instruction_Group (const char *name,...)
void Operand (int operand_index, OPERAND_VALUE_TYPE operand_type, OPERAND_USE_TYPE operand_use)
void Relocatable (int operand_index)
void Result (int result_index, OPERAND_VALUE_TYPE result_type)
void ISA_Operands_End (void)

Variables

static vector< OPERANDS_GROUPop_groups
static OPERANDS_GROUP cur_oper_group
static list< OPERAND_VALUE_TYPEall_operand_types
static list< OPERAND_USE_TYPEall_use_types
static list< OPERANDS_GROUPall_groups
static int max_operands = 0
static int max_results = 0
static int max_valtypes = 0
static int max_groups = 0
static int max_uses = 0
static const char *const interface []

Define Documentation

#define FNAME   "targ_isa_operands"

Typedef Documentation

Definition at line 45 of file isa_operands_gen.cxx.

typedef struct operands_group * OPERANDS_GROUP

Function Documentation

void ISA_Operands_Begin ( const char *  )

Definition at line 258 of file isa_operands_gen.cxx.

References op_groups.

Referenced by main().

void Operand ( int  operand_index,
OPERAND_VALUE_TYPE  operand_type,
OPERAND_USE_TYPE  operand_use 
)
void Relocatable ( int  operand_index)

Definition at line 458 of file isa_operands_gen.cxx.

References cur_oper_group, exit(), fprintf(), operands_group::name, and operands_group::relocatable_opnd.

Referenced by main().

Here is the call graph for this function:

void Result ( int  result_index,
OPERAND_VALUE_TYPE  result_type 
)

Variable Documentation

list<OPERANDS_GROUP> all_groups [static]

Definition at line 99 of file isa_operands_gen.cxx.

Referenced by Instruction_Group(), and ISA_Operands_End().

Definition at line 98 of file isa_operands_gen.cxx.

Referenced by Create_Operand_Use(), and ISA_Operands_End().

Definition at line 96 of file isa_operands_gen.cxx.

Referenced by Instruction_Group(), Operand(), Relocatable(), and Result().

const char* const interface[] [static]

Definition at line 109 of file isa_operands_gen.cxx.

Referenced by ISA_Operands_End().

int max_groups = 0 [static]

Definition at line 104 of file isa_operands_gen.cxx.

Referenced by Instruction_Group(), and ISA_Operands_End().

int max_operands = 0 [static]

Definition at line 101 of file isa_operands_gen.cxx.

Referenced by ISA_Operands_End(), and Operand().

int max_results = 0 [static]

Definition at line 102 of file isa_operands_gen.cxx.

Referenced by ISA_Operands_End(), and Result().

int max_uses = 0 [static]

Definition at line 105 of file isa_operands_gen.cxx.

Referenced by Create_Operand_Use(), and ISA_Operands_End().

vector<OPERANDS_GROUP> op_groups [static]

Definition at line 95 of file isa_operands_gen.cxx.

Referenced by Instruction_Group(), ISA_Operands_Begin(), and ISA_Operands_End().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines