C-Breeze
C Compiler Infrastructure

[ Project home page]
Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

CBZ Class Reference

#include <c_breeze.h>

List of all members.

Static Public Member Functions

void set_file (const char *name, int line, bool is_new_file)
bool is_file_included ()
void char_to_text (char *array, unsigned char value)
void Fail (const string file, int line, const string msg)
void SyntaxError (string s)
void Warning (int level, string s)
void SyntaxError (Coord c, string s)
void Warning (int level, Coord c, string s)
void WarnAboutPrecedence (unsigned int op_id, exprNode *the_expr)
void Error (Coord c, string s)
string get_temp_id_str ()
idNodeget_temp_id ()
idNodeget_temp_var (blockNode *containing_block, typeNode *type)

Static Public Attributes

unit_list Program
str_vec Files
string input_suffix = ".c"
string output_suffix = ".p.c"
string preproc
string default_preproc = "/usr/bin/gcc-2.95 -x c -E -D__C_BREEZE__ -U__GNUC__ "
string gcc_preproc = "/usr/bin/gcc -x c -E -D__C_BREEZE__ -D__QI__=1 -D__HI__=1 -D__SI__=1 -D__DI__=1 -D__word__=1 -D__extension__='' -D__const='' -D__restrict='' -D__printf__='' -D__builtin_va_list='long int'"
string ansi_preproc = "/usr/bin/gcc -E -ansi -x c"
float VersionNumber
string VersionDate
string Executable
arch_info ArchInfo
int WarningLevel = 4
str_listcpp_flags
unitNodecurrent_unit
int current_file
int current_line
int current_offset
text_list pragmas
string PhaseName
bool QuietlyIgnore = false
bool DebugLex = false
bool PrintSymTables = false
bool TrackInsertSymbol = false
bool PrintLineOffset = false
bool IgnoreLineDirectives = false
bool ANSIOnly = false
bool FormatReadably = false
bool Preprocess = true
bool ShowPreprocess = false
bool GCCisms = false
bool NoRegAlloc = false
bool OldStyleFunctionDefinition

Static Private Attributes

unsigned int next_temp_id_seed = 0


Member Function Documentation

void CBZ::char_to_text char *    array,
unsigned char    value
[static]
 

Definition at line 168 of file c_breeze.cc.

void CBZ::Error Coord    c,
string    s
[static]
 

Definition at line 246 of file c_breeze.cc.

References current_unit, and unitNode::inc_errors().

Referenced by InitializerDismantle::at_decl(), InitializerDismantle::init_array(), and InitializerDismantle::init_struct().

void CBZ::Fail const string    file,
int    line,
const string    msg
[static]
 

Definition at line 190 of file c_breeze.cc.

References current_file, current_line, Files, and PhaseName.

Referenced by sueNode::output_type(), and typeNode::qualified_equal_to().

idNode * CBZ::get_temp_id   [static]
 

Definition at line 272 of file c_breeze.cc.

References get_temp_id_str().

Referenced by get_temp_var().

string CBZ::get_temp_id_str   [static]
 

Definition at line 258 of file c_breeze.cc.

Referenced by get_temp_id().

idNode * CBZ::get_temp_var blockNode   containing_block,
typeNode   type
[static]
 

Definition at line 278 of file c_breeze.cc.

References idNode::decl(), declNode::decl_location(), blockNode::decls(), get_temp_id(), and exprNode::type().

bool CBZ::is_file_included   [static]
 

Definition at line 158 of file c_breeze.cc.

References current_file, current_unit, Files, and unitNode::input_file().

Referenced by defNode::defNode().

void CBZ::set_file const char *    name,
int    line,
bool    is_new_file
[static]
 

Definition at line 133 of file c_breeze.cc.

References current_file, Files, and Warning().

Referenced by unitNode::parse().

void CBZ::SyntaxError Coord    c,
string    s
[static]
 

Definition at line 215 of file c_breeze.cc.

References current_unit, and unitNode::inc_errors().

void CBZ::SyntaxError string    s [static]
 

Definition at line 201 of file c_breeze.cc.

References current_file, current_line, current_unit, Files, and unitNode::inc_errors().

Referenced by funcNode::add_parameter_types(), basic_type::alignment(), semcheck_expr_visitor::at_binary(), id_lookup_walker::at_binary(), set_container_walker::at_break(), semcheck_expr_visitor::at_call(), set_container_walker::at_case(), set_container_walker::at_continue(), goto_label_walker::at_goto(), goto_label_walker::at_label(), sue_complete_walker::at_suespec(), semcheck_expr_visitor::check_binary(), semcheck_expr_visitor::check_unary(), id_lookup_walker::conflict(), unitNode::exit_scope(), scope_walker::exit_scope(), typeNode::finish(), basic_type::merge_in(), Labels_table::notify_exit_scope(), procNode::procNode(), basic_type::size(), and suespecNode::update().

void CBZ::WarnAboutPrecedence unsigned int    op_id,
exprNode   the_expr
[static]
 

Definition at line 229 of file c_breeze.cc.

References Operator::ANDAND, Binary, Node::coord(), Operator::OROR, Node::parenthesized(), Node::typ(), and Warning().

void CBZ::Warning int    level,
Coord    c,
string    s
[static]
 

Definition at line 221 of file c_breeze.cc.

References current_unit, unitNode::inc_warnings(), and WarningLevel.

void CBZ::Warning int    level,
string    s
[static]
 

Definition at line 207 of file c_breeze.cc.

References current_file, current_line, current_unit, Files, unitNode::inc_warnings(), and WarningLevel.

Referenced by funcNode::add_parameter_types(), procNode::define(), typeNode::finish(), NodeInfo::getNode(), basic_type::merge_in(), Externals_table::notify_exit_scope(), Labels_table::notify_exit_scope(), Identifiers_table::notify_exit_scope(), set_file(), Tags_table::shadow(), Identifiers_table::shadow(), and WarnAboutPrecedence().


Member Data Documentation

string CBZ::ansi_preproc = "/usr/bin/gcc -E -ansi -x c" [static]
 

Definition at line 79 of file c_breeze.cc.

Referenced by process_flags().

bool CBZ::ANSIOnly = false [static]
 

Definition at line 117 of file c_breeze.cc.

Referenced by basic_type::merge_in(), and process_flags().

arch_info CBZ::ArchInfo [static]
 

Definition at line 87 of file c_breeze.cc.

Referenced by procNode::alloc_stack_local(), briggs_reg_alloc::allocate(), storage_alloc::assign_arg_register(), briggs_reg_alloc::assignRegisters(), lir_gen_walker::at_proc(), briggs_reg_alloc::buildAdjMatrix(), LIR::Call(), lir_flow_walker::computeRegisterLiveness(), asm_gen_walker::computeStackFrameSize(), asm_gen_walker::createTempForRegSave(), asm_gen_walker::doCalleeSave(), asm_gen_walker::doCallerSave(), asm_gen_walker::emit(), lir_gen_walker::gen_call(), Symbol::getLirVt(), Register::getRegFp(), Register::getRegRetValFixed(), Register::getRegRetValFloat(), Register::getRegSp(), briggs_reg_alloc::interfere(), dummy_reg_alloc::is_real_reg(), lir_gen_walker::load_const(), briggs_reg_alloc::makeDuChains(), briggs_reg_alloc::makeWebs(), briggs_reg_alloc::modifyCode(), process_flags(), storage_alloc::reset(), asmGenWalkerPhase::run(), regAllocPhase::run(), lirGenWalkerPhase::run(), dummy_reg_alloc::setup_rregs(), reg_or_const::to_string(), and Register::to_string().

str_list * CBZ::cpp_flags [static]
 

Definition at line 93 of file c_breeze.cc.

Referenced by main().

int CBZ::current_file [static]
 

Definition at line 98 of file c_breeze.cc.

Referenced by Fail(), is_file_included(), set_file(), SyntaxError(), and Warning().

int CBZ::current_line [static]
 

Definition at line 99 of file c_breeze.cc.

Referenced by Fail(), get_pos(), SyntaxError(), and Warning().

int CBZ::current_offset [static]
 

Definition at line 100 of file c_breeze.cc.

unitNode * CBZ::current_unit [static]
 

Definition at line 97 of file c_breeze.cc.

Referenced by procNode::define(), Error(), is_file_included(), blockNode::output_stmt(), unitNode::parse(), procNode::procNode(), sueNode::set_name_fields(), declNode::set_type(), SyntaxError(), and Warning().

bool CBZ::DebugLex = false [static]
 

Definition at line 112 of file c_breeze.cc.

string CBZ::default_preproc = "/usr/bin/gcc-2.95 -x c -E -D__C_BREEZE__ -U__GNUC__ " [static]
 

Definition at line 64 of file c_breeze.cc.

Referenced by process_flags().

string CBZ::Executable [static]
 

Definition at line 86 of file c_breeze.cc.

str_vec CBZ::Files [static]
 

Definition at line 51 of file c_breeze.cc.

Referenced by Fail(), Coord::filename(), NodeInfo::getCoord(), is_file_included(), operator<<(), unitNode::output(), set_file(), SyntaxError(), Coord::to_string(), and Warning().

bool CBZ::FormatReadably = false [static]
 

Definition at line 120 of file c_breeze.cc.

Referenced by process_flags().

string CBZ::gcc_preproc = "/usr/bin/gcc -x c -E -D__C_BREEZE__ -D__QI__=1 -D__HI__=1 -D__SI__=1 -D__DI__=1 -D__word__=1 -D__extension__='' -D__const='' -D__restrict='' -D__printf__='' -D__builtin_va_list='long int'" [static]
 

Definition at line 74 of file c_breeze.cc.

Referenced by process_flags().

bool CBZ::GCCisms = false [static]
 

Definition at line 118 of file c_breeze.cc.

Referenced by process_flags().

bool CBZ::IgnoreLineDirectives = false [static]
 

Definition at line 116 of file c_breeze.cc.

string CBZ::input_suffix = ".c" [static]
 

Definition at line 54 of file c_breeze.cc.

unsigned int CBZ::next_temp_id_seed = 0 [static, private]
 

Definition at line 256 of file c_breeze.cc.

bool CBZ::NoRegAlloc = false [static]
 

Definition at line 119 of file c_breeze.cc.

Referenced by lir_gen_walker::gen_arg_decl(), lir_gen_walker::gen_local_decl(), and process_flags().

bool CBZ::OldStyleFunctionDefinition [static]
 

Definition at line 107 of file c_breeze.cc.

string CBZ::output_suffix = ".p.c" [static]
 

Definition at line 55 of file c_breeze.cc.

Referenced by process_flags().

string CBZ::PhaseName [static]
 

Definition at line 105 of file c_breeze.cc.

Referenced by Fail().

text_list CBZ::pragmas [static]
 

Definition at line 101 of file c_breeze.cc.

Referenced by gcWalker::collect(), defNode::defNode(), and stmtNode::stmtNode().

string CBZ::preproc [static]
 

Definition at line 58 of file c_breeze.cc.

Referenced by unitNode::_open_input_file(), and process_flags().

bool CBZ::Preprocess = true [static]
 

Definition at line 125 of file c_breeze.cc.

Referenced by unitNode::_open_input_file(), unitNode::parse(), and process_flags().

bool CBZ::PrintLineOffset = false [static]
 

Definition at line 115 of file c_breeze.cc.

Referenced by NodeInfo::NodeInfo(), and testUnify::run().

bool CBZ::PrintSymTables = false [static]
 

Definition at line 113 of file c_breeze.cc.

unit_list CBZ::Program [static]
 

Definition at line 47 of file c_breeze.cc.

Referenced by UnificationBasedPtr::analyze_all(), reachingDefinitionsWalker::analyze_all(), NodeLocator::at_stmt(), copyPropChanger::change(), constantFoldingChanger::change(), constantPropChanger::change(), TreeChecker::check(), gcWalker::collect(), findmain(), NodeInfo::getCoord(), function_inline::inline_functions(), Linker::link(), main(), name_mangle_walker::mangle(), process_flags(), NodeInfo::readCall(), NodeInfo::readProc(), NodeInfo::readsuef(), vcgCCGPhase::run(), vcgASTPhase::run(), P::run(), dfpreds_phase::run(), ssa_phase::run(), pointers_phase::run(), TreeCheckerPhase::run(), DeadPhase::run(), asmGenWalkerPhase::run(), regAllocPhase::run(), lirFlowWalkerPhase::run(), lirGenWalkerPhase::run(), CfgPhase::run(), DismantleChangerPhase::run(), DismantleControlChangerPhase::run(), output_c_phase::run(), print_ast_phase::run(), LiveTest::run(), and fi::run().

bool CBZ::QuietlyIgnore = false [static]
 

Definition at line 111 of file c_breeze.cc.

bool CBZ::ShowPreprocess = false [static]
 

Definition at line 127 of file c_breeze.cc.

Referenced by process_flags().

bool CBZ::TrackInsertSymbol = false [static]
 

Definition at line 114 of file c_breeze.cc.

string CBZ::VersionDate [static]
 

Definition at line 85 of file c_breeze.cc.

float CBZ::VersionNumber [static]
 

Definition at line 84 of file c_breeze.cc.

int CBZ::WarningLevel = 4 [static]
 

Definition at line 90 of file c_breeze.cc.

Referenced by process_flags(), Tags_table::shadow(), Identifiers_table::shadow(), and Warning().


The documentation for this class was generated from the following files:

Generated on August 27, 2003
Back to the C-Breeze home page