CBMC
gcc_modet Class Reference

#include <gcc_mode.h>

+ Inheritance diagram for gcc_modet:
+ Collaboration diagram for gcc_modet:

Public Member Functions

int doit () final
 does it. More...
 
void help_mode () final
 display command line help More...
 
 gcc_modet (goto_cc_cmdlinet &_cmdline, const std::string &_base_name, bool _produce_hybrid_binary)
 
- Public Member Functions inherited from goto_cc_modet
int main (int argc, const char **argv)
 starts the compiler More...
 
void help ()
 display command line help More...
 
virtual void usage_error ()
 Prints a message informing the user about incorrect options. More...
 
 goto_cc_modet (goto_cc_cmdlinet &, const std::string &_base_name, message_handlert &)
 constructor More...
 
 ~goto_cc_modet ()
 constructor More...
 

Protected Member Functions

int preprocess (const std::string &language, const std::string &src, const std::string &dest, bool act_as_bcc)
 call gcc for preprocessing More...
 
int run_gcc (const compilet &compiler)
 call gcc with original command line More...
 
int gcc_hybrid_binary (compilet &compiler)
 
int asm_output (bool act_as_bcc, const std::list< std::string > &preprocessed_source_files, const compilet &compiler)
 
- Protected Member Functions inherited from goto_cc_modet
void register_languages ()
 

Static Protected Member Functions

static bool needs_preprocessing (const std::string &)
 

Protected Attributes

gcc_message_handlert gcc_message_handler
 
const bool produce_hybrid_binary
 
std::string native_tool_name
 
const std::string goto_binary_tmp_suffix
 
const std::map< std::string, std::set< std::string > > arch_map
 Associate CBMC architectures with processor names. More...
 
gcc_versiont gcc_version
 
- Protected Attributes inherited from goto_cc_modet
goto_cc_cmdlinetcmdline
 
const std::string base_name
 
message_handlertmessage_handler
 

Detailed Description

Definition at line 27 of file gcc_mode.h.

Constructor & Destructor Documentation

◆ gcc_modet()

gcc_modet::gcc_modet ( goto_cc_cmdlinet _cmdline,
const std::string &  _base_name,
bool  _produce_hybrid_binary 
)

Definition at line 95 of file gcc_mode.cpp.

Member Function Documentation

◆ asm_output()

int gcc_modet::asm_output ( bool  act_as_bcc,
const std::list< std::string > &  preprocessed_source_files,
const compilet compiler 
)
protected

Definition at line 1062 of file gcc_mode.cpp.

◆ doit()

int gcc_modet::doit ( )
finalvirtual

does it.

Implements goto_cc_modet.

Definition at line 309 of file gcc_mode.cpp.

◆ gcc_hybrid_binary()

int gcc_modet::gcc_hybrid_binary ( compilet compiler)
protected

Definition at line 946 of file gcc_mode.cpp.

◆ help_mode()

void gcc_modet::help_mode ( )
finalvirtual

display command line help

Implements goto_cc_modet.

Definition at line 1151 of file gcc_mode.cpp.

◆ needs_preprocessing()

bool gcc_modet::needs_preprocessing ( const std::string &  file)
staticprotected

Definition at line 294 of file gcc_mode.cpp.

◆ preprocess()

int gcc_modet::preprocess ( const std::string &  language,
const std::string &  src,
const std::string &  dest,
bool  act_as_bcc 
)
protected

call gcc for preprocessing

Definition at line 823 of file gcc_mode.cpp.

◆ run_gcc()

int gcc_modet::run_gcc ( const compilet compiler)
protected

call gcc with original command line

Definition at line 902 of file gcc_mode.cpp.

Member Data Documentation

◆ arch_map

const std::map<std::string, std::set<std::string> > gcc_modet::arch_map
protected

Associate CBMC architectures with processor names.

Definition at line 48 of file gcc_mode.h.

◆ gcc_message_handler

gcc_message_handlert gcc_modet::gcc_message_handler
protected

Definition at line 39 of file gcc_mode.h.

◆ gcc_version

gcc_versiont gcc_modet::gcc_version
protected

Definition at line 68 of file gcc_mode.h.

◆ goto_binary_tmp_suffix

const std::string gcc_modet::goto_binary_tmp_suffix
protected

Definition at line 45 of file gcc_mode.h.

◆ native_tool_name

std::string gcc_modet::native_tool_name
protected

Definition at line 43 of file gcc_mode.h.

◆ produce_hybrid_binary

const bool gcc_modet::produce_hybrid_binary
protected

Definition at line 41 of file gcc_mode.h.


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