Inheritance diagram for convertsuif1to2b:
Public Methods | |
convertsuif1to2b (SuifEnv *s, const LString &name = "convertsuif1to2") | |
~convertsuif1to2b () | |
FileSetBlock* | build_file_set_block () |
PointerType* | build_array_ref_type (PointerType *base_array_address_type) |
bool | is_initialized () |
void | initialize () |
initializes the modules. More... | |
virtual Module* | clone () const |
generates a new copy of the current instance if necessary The implementor of a subclass is responsible for overriding this method if the implementation has a unique state the default implementation returns the current instance. | |
void | build_the_fileset () |
Protected Methods | |
void | mark_translation (suif_object *s1_object, SuifObject *y_object) |
Expression* | int_to_SourceOp (int i) |
Expression* | int_to_SourceOp (int i, DataType *t) |
Expression* | symbol_to_source_op (immed s1_immed, DataType *y_result_type) |
Expression* | var_to_SourceOp (VariableSymbol *var) |
void | copy_annotes (suif_object *s1_object, AnnotableObject *yobject) |
Annote* | handle_annote (suif1_annote *s1_annote) |
AnnotableObject* | lookup_suif_object (suif_object *obj) |
QualifiedType* | lookup (type_node *s1_type) |
Type* | lookup_type (type_node *s1_type) |
CProcedureType* | lookup_func_type (func_type *s1_type) |
void | start_type (type_node *s1_type, SymbolTable *outSymtab) |
void | finish_type (type_node *s1_type) |
Expression* | convert_array_bound (const array_bound &bnd) |
Symbol* | lookup (sym_node *s1_sym) |
void | start_symbol (sym_node *s1_sym_node, SymbolTable *y_symtab) |
void | finish_symbol (sym_node *s1_sym_node) |
void | start_symbol_table (base_symtab* s1_symtab, SymbolTable *y_symtab) |
void | finish_symbol_table (base_symtab* s1_symtab, SymbolTable *y_symtab) |
void | process_variable_defs (base_symtab *s1_symtab, DefinitionBlock *y_def_block) |
boolean | is_init_annote (suif1_annote *s1_annote) |
ValueBlock* | build_floating_point_value_block (VariableSymbol *base_var, FloatingPointType *t, base_init_struct_list *inits) |
ValueBlock* | build_integer_value_block (VariableSymbol *base_var, IntegerType *t, base_init_struct_list *inits) |
ValueBlock* | build_pointer_value_block (VariableSymbol *base_var, PointerType *t, base_init_struct_list *inits) |
ValueBlock* | build_array_value_block (VariableSymbol *base_var, ArrayType *t, base_init_struct_list *inits) |
void | eat_zero_bits (const IInteger &num_bits, base_init_struct_list *inits) |
ValueBlock* | build_struct_value_block (VariableSymbol *base_var, StructType *t, base_init_struct_list *inits) |
ValueBlock* | build_group_value_block (VariableSymbol *base_var, GroupType *t, base_init_struct_list *inits) |
ValueBlock* | build_union_value_block (VariableSymbol *base_var, UnionType *t, base_init_struct_list *inits) |
ValueBlock* | build_value_block (VariableSymbol *base_var, DataType *t, base_init_struct_list *inits) |
void | check_procedure_definition (ProcedureDefinition *proc_def) |
boolean | check_init_annote (suif1_annote *s1_annote) |
boolean | check_init_value (immed s1_value) |
Expression* | handle_operand (const suif1_operand &s1_operand) |
Expression* | handle_source_op_copy (const suif1_operand &op) |
VariableSymbol* | handle_variable (var_sym *s1_var) |
CodeLabelSymbol* | handle_label_symbol (label_sym *s1_sym) |
Expression* | make_set_expression (in_rrr *s1_rrr, LString y_opcode) |
Expression* | handle_boolean_op (const suif1_operand &s1_operand) |
Expression* | handle_expression_expression (suif1_instruction *s1_instr) |
Statement* | handle_expression_statement (suif1_instruction *s1_instr) |
Statement* | handle_statement (tree_node *s1_tree_node) |
void | handle_statement_list (tree_node_list *s1_tree_nodes, StatementList *y_stmt_list) |
SuifBrick* | immed_to_brick (const immed &the_immed) |
String | string_for_immed_double (immed the_immed) |
PointerType* | pointer_to (Type *t) |
void | cache_pointer_to (PointerType *t) |
void | cache_array_of (ArrayType *t) |
void | cache_qualified_of (QualifiedType *t) |
IInteger | default_array_alignment (Type *element_type, const IInteger &lb, const IInteger &ub) |
DataType* | get_array_type (QualifiedType *t, const IInteger &lb, const IInteger &ub) |
QualifiedType* | get_qualified_type (DataType *t) |
QualifiedType* | get_qualified_type (DataType *t, const list<LString> &quals) |
IntegerType* | get_integer_type (const IInteger &size, int alignment, bool is_signed) |
IntegerType* | get_sized_integer_type (const IInteger &value) |
IntConstant* | build_int_constant (const IInteger &value) |
FloatingPointType* | get_floating_point_type (const IInteger &size, int alignment) |
Expression* | expression_for_immed (immed s1_immed, type_node *s1_type_node) |
Expression* | expression_for_symbol_immed (immed s1_immed, PointerType *s1_result_type = NULL) |
ProcedureDefinition* | handle_procedure_definition (tree_proc *s1_proc, SymbolTable *y_encl_symbol_table) |
FileBlock* | handle_file (file_set_entry *s1_file, SymbolTable *y_encl_symtab) |
void | init_file_set_block (FileSetBlock *y_fsb) |
void | go_multiple_to_multiple (file_set *s1_fsb, FileSetBlock *y_fsb) |
virtual Expression* | find_test_for_branch_to ( tree_node_list *the_tree_node_list, label_sym *target) |
virtual Expression* | reverse_conditional (Expression * conditional) |
|
|
|
|
|
Reimplemented from FrontendPass.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
generates a new copy of the current instance if necessary The implementor of a subclass is responsible for overriding this method if the implementation has a unique state the default implementation returns the current instance.
Reimplemented from Module.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
initializes the modules.
This method must/will be called before a call to parse_command_line or execute
Reimplemented from FrontendPass.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|