anchor.diff:      tdb_update([{Src,{tuple,Arity,[]}}], Ts0);
   update({test,is_map,_Fail,[Src]}, Ts0) ->
       tdb_update([{Src,map}], Ts0);
  +update({get_map_elements,_,Src,{list,Elems0}}, Ts0) ->
  +    {_Ss,Ds} = beam_utils:split_even(Elems0),
  +    Elems = [{Dst,kill} || Dst <- Ds],
  +    tdb_update([{Src,map}|Elems], Ts0);
   update({test,is_nonempty_list,_Fail,[Src]}, Ts0) ->
       tdb_update([{Src,nonempty_list}], Ts0);
   update({test,is_eq_exact,_,[Reg,{atom,_}=Atom]}, Ts) ->
  
positive.code:     end;
  update({test,is_record,_Fail,[Src,Tag,{integer,Arity}]}, Ts) ->
      tdb_update([{Src,{tuple,Arity,[Tag]}}], Ts);
  update({test,_Test,_Fail,_Other}, Ts) ->
      Ts;
  update({test,bs_get_integer2,_,_,Args,Dst}, Ts) ->
      tdb_update([{Dst,get_bs_integer_type(Args)}], Ts);
  update({call_ext,Ar,{extfunc,math,Math,Ar}}, Ts) ->
      case is_math_bif(Math, Ar) of
  	true -> tdb_update([{{x,0},float}], Ts);
  
negative.code: update({call,_Arity,_Func}, Ts) -> tdb_kill_xregs(Ts);
  update({call_ext,_Arity,_Func}, Ts) -> tdb_kill_xregs(Ts);
  update({make_fun2,_,_,_,_}, Ts) -> tdb_kill_xregs(Ts);
  update({call_fun, _}, Ts) -> tdb_kill_xregs(Ts);
  update({apply, _}, Ts) -> tdb_kill_xregs(Ts);
  
  update({line,_}, Ts) -> Ts;
  
  %% The instruction is unknown.  Kill all information.
  update(_I, _Ts) -> tdb_new().
  