A | |
| add_fct_ff_filter [SlicingProject] | |
| add_fct_src_filter [SlicingProject] |
Add an action to the action list to filter the function
fct_id with
the given criterion.
|
| add_filter [SlicingProject] | |
| add_marks_to_fi [Fct_slice] |
add the marks to the persistent marks to be used when new slices will be
created.
|
| add_persistent_cmdline [SlicingCmds] |
Registered as a slicing request function:
Add selections that will be applied to all the slices of the function
(already existing or created later)
Note: the function begins by applying the remaining internal requests., the requests added for the last kernel function are not applied.
|
| add_persistent_selection [SlicingCmds] |
Registered as a slicing request function:
Add selections that will be applied to all the slices of the function
(already existing or created later)
Note: the function begins by applying the remaining internal requests., the requests added for the last kernel function are not applied.
|
| add_selection [SlicingCmds] |
Registered as a slicing request function:
Add selections to all concerned slices, as slicing requests and apply them,
kernel function by kernel function.
|
| add_top_mark_to_fi [Fct_slice] | |
| apply_add_marks [Fct_slice] |
main function to build or modify a slice.
|
| apply_all [SlicingCmds] | |
| apply_all_actions [SlicingProject] | |
| apply_change_call [Fct_slice] |
check if
f_to_call is ok for this call, and if so,
change the function call and propagate missing marks in the inputs
if needed.
|
| apply_choose_call [Fct_slice] |
Choose the function (slice or source) to call according to the
slicing level of the called function.
|
| apply_examine_calls [Fct_slice] | |
| apply_missing_inputs [Fct_slice] | ff calls a slice g that needs more inputs than those computed by ff.
|
| apply_missing_outputs [Fct_slice] | ff calls a slice g that doesn't compute enough outputs for the call.
|
| apply_next_action [SlicingProject] | |
B | |
| bottom_mark [SlicingMarks] | |
| build_addr_dpds_selection [SlicingActions] |
Only the control dependencies of the nodes will be marked
|
| build_ctrl_dpds_selection [SlicingActions] |
Only the control dependencies of the nodes will be marked
|
| build_data_dpds_selection [SlicingActions] |
Only the control dependencies of the nodes will be marked
|
| build_dot_project [PrintSlice] | |
| build_node_and_dpds_selection [SlicingActions] |
Build a description to tell how the selected PDG nodes and their
dependencies will have to be marked
(see
SlicingTypes.Internals.node_or_dpds).
|
| build_simple_node_selection [SlicingActions] |
Build a description to tell that the associated nodes have to be marked
with the given mark, and than the same one will be propagated through
their dependencies.
|
C | |
| change_fi_slicing_level [SlicingMacros] | |
| change_slicing_level [SlicingMacros] | |
| check_outputs_before_change_call [Fct_slice] |
When the user wants to make a
change_call to a function that doesn't
compute enough outputs, he can call check_outputs_before_change_call in
order to build the action the add those outputs.
|
| clear [SlicingParameters] | |
| clear_ff [Fct_slice] | ff has to be removed.
|
| combine_marks [SlicingMarks] | combine_marks add a new information to the old value.
|
| compare_mark [SlicingInternals] | |
| compare_marks [SlicingMarks] | |
| compare_pdg_mark [SlicingInternals] | |
| copy [Datatype.S] |
Deep copy: no possible sharing between
x and copy x.
|
| copy_slice [Fct_slice] | |
| create_slice [SlicingProject] |
Add a new slice for the function.
|
D | |
| default_slice_names [SlicingTransform] | |
| dummy_fct_info [SlicingInternals] | |
| dummy_fct_slice [SlicingInternals] | |
| dummy_fct_user_crit [SlicingInternals] | |
| dummy_ff_marks [SlicingInternals] | |
| dummy_marks_index [SlicingInternals] | |
| dummy_pdg_mark [SlicingInternals] |
For the journalization of these internals types
|
| dummy_project [SlicingInternals] |
The whole project.
|
| dyn_sl_fct_slice [SlicingTypes] | |
| dyn_sl_mark [SlicingTypes] | |
E | |
| empty_sig [SlicingMarks] | |
| equal_ff [SlicingMacros] | |
| equal_fi [SlicingMacros] | |
| exists [Parameter_sig.Set] |
Is there some element satisfying the given predicate?
|
| extract [SlicingTransform] |
Apply the actions still waiting in the project
and transform the program (CIL AST) using slicing results
Can optionally specify how to name the sliced functions using
f_slice_names.
|
F | |
| f_name [SlicingMacros] | |
| ff_name [SlicingMacros] |
get the name of the function corresponding to that slice.
|
| ff_slicing_level [SlicingMacros] | |
| ff_src_name [SlicingMacros] | |
| ff_svar [SlicingMacros] | |
| fi_has_persistent_selection [SlicingMacros] | |
| fi_name [SlicingMacros] | |
| fi_slices [SlicingMacros] | |
| fi_svar [SlicingMacros] | |
| filter_already_in [Fct_slice] |
a function that doesn't modify anything but test if the
nodes_marks
are already in the slice or not.
|
| fold_fi [SlicingMacros] | |
G | |
| get [SlicingState] |
Get the state of the slicing project.
|
| get_all_input_marks [SlicingMarks] | |
| get_called_slice [Fct_slice] |
Inform about the called slice or else calls to source functions.
|
| get_default_level_option [SlicingMacros] | |
| get_ff_id [SlicingMacros] |
getting num id
|
| get_ff_kf [SlicingMacros] | |
| get_ff_pdg [SlicingMacros] | |
| get_fi_call [SlicingMacros] |
get the
fct_info of the called function, if we know it
|
| get_fi_kf [SlicingMacros] | |
| get_fi_pdg [SlicingMacros] | |
| get_function_name [Parameter_sig.String] |
returns the given argument only if it is a valid function name
(see
Parameter_customize.get_c_ified_functions for more information),
and abort otherwise.
|
| get_in_ctrl_mark [SlicingMarks] | |
| get_input_loc_under_mark [Fct_slice] | |
| get_input_loc_under_mark [SlicingMarks] | |
| get_input_mark [SlicingMarks] | |
| get_kf_fi [SlicingMacros] |
Get the fct_info if it exists or build a new fct_info.
|
| get_label_mark [Fct_slice] | |
| get_local_var_mark [Fct_slice] | |
| get_mark_from_src_fun [Fct_slice] |
The mark
m related to all statements of a source function kf.
|
| get_marked_out_zone [SlicingMarks] | |
| get_matching_input_marks [SlicingMarks] | |
| get_node_key_mark [Fct_slice] | |
| get_node_mark [Fct_slice] | |
| get_param_mark [Fct_slice] | |
| get_pdg_kf [SlicingMacros] | |
| get_plain_string [Parameter_sig.String] |
always return the argument, even if the argument is not a function name.
|
| get_possible_values [Parameter_sig.String] |
What are the acceptable values for this parameter.
|
| get_range [Parameter_sig.Int] |
What is the possible range of values for this parameter.
|
| get_slice_callers [SlicingProject] | |
| get_slices [SlicingProject] | |
| get_stmt_mark [Fct_slice] | |
| get_top_input_mark [Fct_slice] | |
H | |
| has_persistent_selection [SlicingMacros] | |
I | |
| incr [Parameter_sig.Int] |
Increment the integer.
|
| inter_marks [SlicingMarks] | |
| is_addr_mark [SlicingMarks] | |
| is_bottom_mark [SlicingMarks] | |
| is_call_stmt [SlicingMacros] | |
| is_ctrl_mark [SlicingMarks] | |
| is_data_mark [SlicingMarks] | |
| is_on [SlicingParameters] | |
| is_request_empty [SlicingProject] | |
| is_spare_mark [SlicingMarks] | |
| is_src_fun_called [SlicingTransform] |
Return
true if the source function is called
(even indirectly via transitivity) from a Slice.t.
|
| is_src_fun_called [SlicingMacros] | |
| is_src_fun_visible [SlicingTransform] |
Return
true if the source function is visible
(even indirectly via transitivity) from a Slice.t.
|
| is_src_fun_visible [SlicingMacros] | |
| is_top_mark [SlicingMarks] | |
| is_topin_visible [SlicingMarks] | |
M | |
| make_new_ff [Fct_slice] |
build a new empty slice in the given
fct_info.
|
| make_type [Datatype.Hashtbl] | |
| mark_to_string [SlicingMarks] | |
| may [SlicingState] |
apply the given closure if the slicing project has been initialized through
Db.Slicing.reset_slice.
|
| may_map [SlicingState] |
apply the given closure if the slicing project has been initialized through
Db.Slicing.reset_slice, or else return the default value.
|
| mem [Parameter_sig.Set] |
Does the given element belong to the set?
|
| memo [Datatype.Hashtbl] | memo tbl k f returns the binding of k in tbl.
|
| merge_inputs_m1_mark [Fct_slice] | |
| merge_inputs_m1_mark [SlicingMarks] | |
| merge_marks [SlicingMarks] | |
| merge_slices [SlicingProject] |
Build a new slice
ff which contains the marks of ff1 and ff2
and generate everything that is needed to choose the calls in ff.
|
| merge_slices [Fct_slice] |
Build a new slice which marks are a join between
ff1 marks and ff2
marks.
|
| minus_marks [SlicingMarks] | |
| missing_input_mark [SlicingMarks] | |
| missing_output_mark [SlicingMarks] | |
| mk_appli_select_calls [SlicingActions] | |
| mk_crit_add_output_marks [SlicingActions] | |
| mk_crit_change_call [SlicingActions] | |
| mk_crit_choose_call [SlicingActions] | |
| mk_crit_examines_calls [SlicingActions] | |
| mk_crit_fct_top [SlicingActions] | |
| mk_crit_fct_user_select [SlicingActions] | |
| mk_crit_mark_calls [SlicingActions] | |
| mk_crit_missing_inputs [SlicingActions] | |
| mk_crit_missing_outputs [SlicingActions] | |
| mk_crit_prop_persit_marks [SlicingActions] | |
| mk_fct_crit [SlicingActions] |
build an action to apply the criteria to the persistent selection of the
function.
|
| mk_ff_user_select [SlicingActions] | |
| mk_gen_spare [SlicingMarks] |
generated
spare = the smallest visible mark
|
| mk_user_mark [SlicingMarks] | |
| mk_user_spare [SlicingMarks] | |
O | |
| off [Parameter_sig.Bool] |
Set the boolean to
false.
|
| on [Parameter_sig.Bool] |
Set the boolean to
true.
|
P | |
| pdg_mark_packed_descr [SlicingInternals] | |
| pp_sl_fct_slice [SlicingTypes] | |
| pp_sl_mark [SlicingTypes] | |
| pp_sl_project [SlicingTypes] | |
| pretty_mark [SlicingMarks] | |
| pretty_sig [SlicingMarks] | |
| pretty_slice [SlicingProject] | |
| print_crit [SlicingActions] | |
| print_f_crit [SlicingActions] | |
| print_fct_from_pdg [PrintSlice] | |
| print_fct_stmts [PrintSlice] | |
| print_ff_sig [Fct_slice] | |
| print_list_crit [SlicingActions] | |
| print_marked_ff [PrintSlice] | |
| print_nd_and_mark_list [SlicingActions] |
Printing
|
| print_nodes [SlicingActions] | |
| print_original_glob [PrintSlice] | |
| print_proj_worklist [SlicingProject] | |
| print_project_and_worklist [SlicingProject] | |
| print_sel_marks_list [SlicingActions] | |
R | |
| remove_ff [SlicingProject] |
Delete
ff_to_remove if it is not called.
|
| remove_uncalled_slices [SlicingProject] | |
S | |
| same_ff_call [SlicingMacros] | |
| select_func_annots [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of the annotations related to a function.
|
| select_func_calls_into [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of calls to a
kf.
|
| select_func_calls_to [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of calls to a
kf.
|
| select_func_lval [SlicingCmds] |
Registered as a slicing selection function:
Add selection of function outputs.
|
| select_func_lval_rw [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of data relative to read/write accesses.
|
| select_func_return [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of the
kf return statement.
|
| select_func_zone [SlicingCmds] |
Registered as a slicing selection function:
Add selection of function outputs.
|
| select_pdg_nodes [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of the pdg nodes.
|
| select_stmt [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of the statement.
|
| select_stmt_annot [SlicingCmds] |
Registered as a slicing selection function:
Add selection of the annotations related to a statement.
|
| select_stmt_annots [SlicingCmds] |
Registered as a slicing selection function:
Add selection of the annotations related to a statement.
|
| select_stmt_ctrl [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of the statement reachability.
|
| select_stmt_lval [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of data relative to a statement.
|
| select_stmt_lval_rw [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of rw accesses to lvalues relative to a statement.
|
| select_stmt_pred [SlicingCmds] |
Registered as a slicing selection function:
Add selection of the annotations related to a statement.
|
| select_stmt_term [SlicingCmds] |
Registered as a slicing selection function:
Add selection of the annotations related to a statement.
|
| select_stmt_zone [SlicingCmds] |
Registered as a slicing selection function:
Add a selection of data relative to a statement.
|
| set_off [SlicingParameters] | |
| set_possible_values [Parameter_sig.String] |
Set what are the acceptable values for this parameter.
|
| set_range [Parameter_sig.Int] |
Set what is the possible range of values for this parameter.
|
| some_visible_out [SlicingMarks] | |
| something_visible [SlicingMarks] | |
| split_slice [SlicingProject] | |
| str_level_option [SlicingMacros] | |
T | |
| topologic_propagation [SlicingCmds] |
Topologically propagate user marks to callers in whole project
|
| translate_crit_to_select [SlicingActions] |