anchor.diff:    catch throw:no_input -> ok
     end.
   
  --spec safe_analyse(cfg(), data()) -> #state{}.
  +-spec safe_analyse(cfg(), data()) -> state().
   
   safe_analyse(CFG, Data={MFA,_,_,_}) ->
     State = state__init(CFG, Data),
  
positive.code:   (state__result_action(NewState))(MFA, [state__ret_type(NewState)]),
    NewState.
  
  -spec rewrite_blocks(#state{}) -> #state{}.
  
  rewrite_blocks(State) ->
    CFG = state__cfg(State),
    Start = hipe_icode_cfg:start_label(CFG),
    rewrite_blocks([Start], State, [Start]).
  
  -spec rewrite_blocks([label()], #state{}, [label()]) -> #state{}.
  
  rewrite_blocks([Next|Rest], State, Visited) ->
    Info = state__info_in(State, Next),
  
negative.code:       analyse_blocks(NewState, NewWork2)
    end.
  
  -spec analyse_block(label(), info(), state(), boolean()) -> {state(), [label()]}.
  
  analyse_block(Label, Info, State, Rewrite) ->
    BB = state__bb(State, Label),
  