@@ -430,6 +430,14 @@ Bool CLG_(process_cmd_line_option)(const HChar* arg)
430430 fn_config * fnc = get_fnc (tmp_str );
431431 fnc -> skip = CONFIG_TRUE ;
432432 }
433+ else if VG_STR_CLO (arg , "--obj-skip" , tmp_str ) {
434+ HChar * obj_name = VG_ (strdup )("cl.clo.pclo.1" , tmp_str );
435+ CLG_ (clo ).objs_to_skip_count ++ ;
436+ CLG_ (clo ).objs_to_skip = VG_ (realloc )("cl.clo.pclo.2" ,
437+ CLG_ (clo ).objs_to_skip ,
438+ CLG_ (clo ).objs_to_skip_count * sizeof (HChar * ));
439+ CLG_ (clo ).objs_to_skip [CLG_ (clo ).objs_to_skip_count - 1 ] = obj_name ;
440+ }
433441
434442 else if VG_STR_CLO (arg , "--dump-before" , tmp_str ) {
435443 fn_config * fnc = get_fnc (tmp_str );
@@ -611,6 +619,7 @@ void CLG_(print_usage)(void)
611619" --skip-plt=no|yes Ignore calls to/from PLT sections? [yes]\n"
612620" --skip-direct-rec=no|yes Ignore direct recursions? [yes]\n"
613621" --fn-skip=<function> Ignore calls to/from function?\n"
622+ " --obj-skip=<object> Ignore calls to/from object?\n"
614623#if CLG_EXPERIMENTAL
615624" --fn-group<no>=<func> Put function into separation group <no>\n"
616625#endif
@@ -681,6 +690,8 @@ void CLG_(set_clo_defaults)(void)
681690
682691 /* Call graph */
683692 CLG_ (clo ).pop_on_jump = False ;
693+ CLG_ (clo ).objs_to_skip_count = 0 ;
694+ CLG_ (clo ).objs_to_skip = 0 ;
684695
685696#if CLG_ENABLE_DEBUG
686697 CLG_ (clo ).verbose = 0 ;
0 commit comments