module Locations: sig
.. end
Memory locations.
Consult the Plugin Development Guide for additional details.
module Location_Bytes: sig
.. end
Association between varids and offsets in byte.
module Location_Bits: sig
.. end
Association between varids and offsets in bits.
module Zone: sig
.. end
Association between varids and ranges of bits.
Locations
type
location = private {
|
loc : Location_Bits.t ; |
|
size : Int_Base.t ; |
}
module Location: Datatype.S
with type t = location
val loc_bottom : location
val make_loc : Location_Bits.t -> Int_Base.t -> location
val loc_equal : location -> location -> bool
val loc_size : location -> Int_Base.t
val can_be_accessed : location -> bool
val is_valid : location -> bool
val is_valid_or_function : location -> bool
val cardinal_zero_or_one : location -> bool
val valid_cardinal_zero_or_one : location -> bool
val valid_part : location -> location
val invalid_part : location -> location
val pretty : Format.formatter -> location -> unit
Conversion functions
val loc_to_loc_without_size : location -> Location_Bytes.t
val loc_bytes_to_loc_bits : Location_Bytes.t -> Location_Bits.t
val loc_bits_to_loc_bytes : Location_Bits.t -> Location_Bytes.t
val loc_without_size_to_loc : Cil_types.lval -> Location_Bytes.t -> location
val loc_bits_to_loc : Cil_types.lval -> Location_Bits.t -> location
val valid_enumerate_bits : location -> Zone.t
val zone_of_varinfo : Cil_types.varinfo -> Zone.t
Since Carbon-20101201
val size_of_varinfo : Cil_types.varinfo -> Abstract_interp.Int.t
val int_base_size_of_varinfo : Cil_types.varinfo -> Int_Base.t
val loc_of_varinfo : Cil_types.varinfo -> location
val loc_of_base : Base.t -> location
val loc_of_typoffset : Base.t -> Cil_types.typ -> Cil_types.offset -> location
val filter_loc : location -> Zone.t -> location