CBMC
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
remove_asmt Class Reference
+ Collaboration diagram for remove_asmt:

Public Member Functions

 
 

Protected Member Functions

  Replaces inline assembly instructions in the goto function by non-assembly goto program instructions.
 
  Translates the given inline assembly code (which must be in either gcc or msc style) to non-assembly goto program instructions.
 
  Translates the given inline assembly code (in gcc style) to non-assembly goto program instructions.
 
  Translates the given inline assembly code (in msc style) to non-assembly goto program instructions.
 
  Adds a call to a library function that implements the given gcc-style inline assembly statement.
 
  Adds a call to a library function that implements the given msc-style inline assembly statement.
 

Protected Attributes

 
 
 

Detailed Description

Definition at line 30 of file remove_asm.cpp.

Constructor & Destructor Documentation

◆  remove_asmt()

remove_asmt::remove_asmt ( symbol_tablet_symbol_table,
goto_functionst_goto_functions,
message_handlertmessage_handler 
)
inline

Definition at line 33 of file remove_asm.cpp.

Member Function Documentation

◆  gcc_asm_function_call()

void remove_asmt::gcc_asm_function_call ( const irep_idtfunction_base_name,
const code_asm_gcctcode,
std::size_t  n_args,
goto_programtdest 
)
protected

Adds a call to a library function that implements the given gcc-style inline assembly statement.

Parameters
function_base_name Name of the function to call
code gcc-style inline assembly statement to translate to function call
n_args Number of arguments required by function_base_name
dest Goto program to append the function call to

Definition at line 89 of file remove_asm.cpp.

◆  msc_asm_function_call()

void remove_asmt::msc_asm_function_call ( const irep_idtfunction_base_name,
const exprt::operandstoperands,
const code_asmtcode,
goto_programtdest 
)
protected

Adds a call to a library function that implements the given msc-style inline assembly statement.

Parameters
function_base_name Name of the function to call
operands Arguments to be passed to function
code msc-style inline assembly statement to translate to function call
dest Goto program to append the function call to

Definition at line 173 of file remove_asm.cpp.

◆  operator()()

void remove_asmt::operator() ( )
inline

Definition at line 43 of file remove_asm.cpp.

◆  process_function()

void remove_asmt::process_function ( const irep_idtfunction_id,
goto_functionst::goto_functiontgoto_function 
)
protected

Replaces inline assembly instructions in the goto function by non-assembly goto program instructions.

Parameters
function_id Name of function being processed
goto_function The goto function

Definition at line 544 of file remove_asm.cpp.

◆  process_instruction()

void remove_asmt::process_instruction ( const irep_idtfunction_id,
goto_programt::instructiontinstruction,
goto_programtdest 
)
protected

Translates the given inline assembly code (which must be in either gcc or msc style) to non-assembly goto program instructions.

Parameters
function_id Name of function being processed
instruction The goto program instruction containing the inline assembly statements
dest The goto program to append the new instructions to

Definition at line 225 of file remove_asm.cpp.

◆  process_instruction_gcc()

void remove_asmt::process_instruction_gcc ( const code_asm_gcctcode,
goto_programtdest 
)
protected

Translates the given inline assembly code (in gcc style) to non-assembly goto program instructions.

Parameters
code The inline assembly code statement to translate
dest The goto program to append the new instructions to

Definition at line 247 of file remove_asm.cpp.

◆  process_instruction_msc()

void remove_asmt::process_instruction_msc ( const irep_idtfunction_id,
const code_asmtcode,
goto_programtdest 
)
protected

Translates the given inline assembly code (in msc style) to non-assembly goto program instructions.

Parameters
function_id Name of function being processed
code The inline assembly code statement to translate
dest The goto program to append the new instructions to

Definition at line 417 of file remove_asm.cpp.

Member Data Documentation

◆  goto_functions

goto_functionst& remove_asmt::goto_functions
protected

Definition at line 51 of file remove_asm.cpp.

◆  message_handler

message_handlert& remove_asmt::message_handler
protected

Definition at line 52 of file remove_asm.cpp.

◆  symbol_table

symbol_tablet& remove_asmt::symbol_table
protected

Definition at line 50 of file remove_asm.cpp.


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

AltStyle によって変換されたページ (->オリジナル) /