CBMC
|
Globally accessible architectural configuration. More...
#include <config.h>
Classes | |
struct | ansi_ct |
struct | bv_encodingt |
struct | cppt |
struct | javat |
struct | verilogt |
Public Member Functions | |
void | set_arch (const irep_idt &) |
void | set_from_symbol_table (const symbol_table_baset &) |
bool | set (const cmdlinet &cmdline) |
void | set_object_bits_from_symbol_table (const symbol_table_baset &) |
Sets the number of bits used for object addresses. More... | |
std::string | object_bits_info () |
mp_integer | max_malloc_size () const |
The maximum allocation size is determined by the number of bits that are left in the pointer of width ansi_c.pointer_width . More... | |
Static Public Member Functions | |
static irep_idt | this_architecture () |
static irep_idt | this_operating_system () |
Public Attributes | |
struct configt::ansi_ct | ansi_c |
struct configt::cppt | cpp |
struct configt::verilogt | verilog |
struct configt::javat | java |
struct configt::bv_encodingt | bv_encoding |
std::optional< std::string > | main |
Private Member Functions | |
void | set_classpath (const std::string &cp) |
mp_integer configt::max_malloc_size | ( | ) | const |
The maximum allocation size is determined by the number of bits that are left in the pointer of width ansi_c.pointer_width
.
The allocation size cannot exceed the number represented by the (signed) offset, otherwise it would not be possible to store a pointer into a valid bit of memory. Therefore, the max allocation size is 2^(offset_bits - 1), where the offset bits is the number of bits left in the pointer after the object bits.
The offset must be signed, as a pointer can point to the end of the memory block, and needs to be able to point back to the start.
Definition at line 1587 of file config.cpp.
std::string configt::object_bits_info | ( | ) |
Definition at line 1431 of file config.cpp.
bool configt::set | ( | const cmdlinet & | cmdline | ) |
Definition at line 863 of file config.cpp.
void configt::set_arch | ( | const irep_idt & | arch | ) |
Definition at line 763 of file config.cpp.
|
private |
Definition at line 1530 of file config.cpp.
void configt::set_from_symbol_table | ( | const symbol_table_baset & | symbol_table | ) |
Definition at line 1347 of file config.cpp.
void configt::set_object_bits_from_symbol_table | ( | const symbol_table_baset & | symbol_table | ) |
Sets the number of bits used for object addresses.
symbol_table | The symbol table |
Definition at line 1406 of file config.cpp.
|
static |
Definition at line 1442 of file config.cpp.
|
static |
Definition at line 1546 of file config.cpp.
struct configt::ansi_ct configt::ansi_c |
struct configt::bv_encodingt configt::bv_encoding |
struct configt::cppt configt::cpp |
struct configt::javat configt::java |
struct configt::verilogt configt::verilog |