JCHVarInfo
class jvar_info_t : variable:CHLanguage.variable_t -> param_index:int -> is_phi:bool -> origins:
int
list -> pc_in_scope:int -> basic_num_vtype:JCHBasicTypesAPI.value_type_t
option -> vtypes:JCHBasicTypesAPI.value_type_t
list -> const:
CHNumerical.numerical_t
option -> is_numeric:bool -> has_length:bool -> first_state:CHLanguage.symbol_t -> last_states:
CHLanguage.symbol_t
list -> read_states:CHLanguage.symbol_t list -> read_vars:CHLanguage.variable_t
list -> return_pc_to_rvar:
CHLanguage.variable_t CHUtils.IntCollections.table_t
option -> origin_operations:CHLanguage.operation_t list -> local_indices:
int
list -> object ... end
val make_jvar_infos :
chif:CHLanguage.system_int ->
meth:JCHBasicTypesAPI.method_int ->
proc:CHLanguage.procedure_int ->
cfg:CHLanguage.cfg_int ->
opcodes:JCHBasicTypesAPI.opcodes_int ->
lc_to_pc:(CHLanguage.variable_t * int) list ->
wto:CHSCC.wto_component_t list ->
dom_info:JCHDominance.dominance_info_t ->
aliases:JCHTransformUtils.alias_sets_t ->
extra_assert_vars:
CHUtils.SymbolCollections.set_t CHUtils.VariableCollections.table_t ->
jvar_info_t CHUtils.VariableCollections.table_t
* CHUtils.SymbolCollections.set_t CHUtils.VariableCollections.table_t
CHUtils.VariableCollections.table_t
* CHUtils.SymbolCollections.set_t CHUtils.VariableCollections.table_t
CHUtils.VariableCollections.table_t
* int
* int
* CHLanguage.variable_t CHUtils.IntCollections.table_t
CHUtils.IntCollections.table_t
val make_state_to_start_num_vars :
jvar_info_t CHUtils.VariableCollections.table_t ->
CHUtils.VariableCollections.set_t CHUtils.SymbolCollections.table_t
val make_state_to_done_num_vars :
jvar_info_t CHUtils.VariableCollections.table_t ->
CHUtils.VariableCollections.set_t CHUtils.SymbolCollections.table_t