@@ -831,13 +831,12 @@ aliased_pair_tl_instr(Ls) ->
831831aliasing_after_tuple_extract (N ) ->
832832 aliasing_after_tuple_extract (N , {<<>>, dummy }).
833833
834- % % Check that the Acc tuple is unique on entry, but that the elements
835- % % are aliased.
834+ % % Check that both the tuple (Acc) and the extracted element (X) are
835+ % % aliased.
836836aliasing_after_tuple_extract (0 , Acc ) ->
837837% ssa% (_,Acc) when post_ssa_opt ->
838- % ssa% X = get_tuple_element(Acc, 0) {unique => [Acc]},
839- % ssa% Bin = bs_create_bin(_,_,X,...) {aliased => [X]},
840- % ssa% Tuple = put_tuple(Bin, Acc) {aliased => [Bin], unique => [Acc]}.
838+ % ssa% X = get_tuple_element(Acc, 0) {aliased => [Acc]},
839+ % ssa% _ = bs_create_bin(_,_,X,...) {aliased => [X]}.
841840 Acc ;
842841aliasing_after_tuple_extract (N , Acc ) ->
843842 {X ,_ } = Acc ,
@@ -853,9 +852,8 @@ alias_after_pair_hd(0, Acc) ->
853852 Acc ;
854853alias_after_pair_hd (N , Acc ) ->
855854% ssa% (_,Acc) when post_ssa_opt ->
856- % ssa% X = get_hd(Acc) {unique => [Acc]},
857- % ssa% Bin = bs_create_bin(_,_,X,...) {aliased => [X]},
858- % ssa% Tuple = put_list(Bin, Acc) {aliased => [Bin], unique => [Acc]}.
855+ % ssa% X = get_hd(Acc) {aliased => [Acc]},
856+ % ssa% _ = bs_create_bin(_,_,X,...) {aliased => [X]}.
859857 [X |_ ] = Acc ,
860858 alias_after_pair_hd (N - 1 , [<<X /bitstring , 1 >>|Acc ]).
861859
@@ -868,9 +866,8 @@ alias_after_pair_tl(0, Acc) ->
868866 Acc ;
869867alias_after_pair_tl (N , Acc ) ->
870868% ssa% (_,Acc) when post_ssa_opt ->
871- % ssa% X = get_tl(Acc) {unique => [Acc]},
872- % ssa% Bin = bs_create_bin(_,_,X,...) {aliased => [X]},
873- % ssa% Tuple = put_list(Acc, Bin) {aliased => [Bin], unique => [Acc]}.
869+ % ssa% X = get_tl(Acc) {aliased => [Acc]},
870+ % ssa% _ = bs_create_bin(_,_,X,...) {aliased => [X]}.
874871 [_ |X ] = Acc ,
875872 alias_after_pair_tl (N - 1 , [Acc |<<X /bitstring , 1 >>]).
876873
@@ -1204,8 +1201,8 @@ nested_tuple_inner() ->
12041201
12051202nested_tuple () ->
12061203% ssa% () when post_ssa_opt ->
1207- % ssa% U = bs_create_bin(append, _, T, ...) { unique => [T] },
1208- % ssa% R = put_tuple(U, A) { aliased => [A], unique => [U ] },
1204+ % ssa% U = bs_create_bin(append, _, T, ...) { aliased => [T] },
1205+ % ssa% R = put_tuple(U, A) { aliased => [U, A ] },
12091206% ssa% ret(R).
12101207 {{{{Z ,X }}}} = nested_tuple_inner (),
12111208 {<<Z /binary , 1 :8 >>,X }.
@@ -1228,8 +1225,8 @@ nested_mixed_inner() ->
12281225
12291226nested_mixed () ->
12301227% ssa% () when post_ssa_opt ->
1231- % ssa% U = bs_create_bin(append, _, T, ...) { unique => [T] },
1232- % ssa% R = put_tuple(U, A) { aliased => [A], unique => [U ] },
1228+ % ssa% U = bs_create_bin(append, _, T, ...) { aliased => [T] },
1229+ % ssa% R = put_tuple(U, A) { aliased => [U, A ] },
12331230% ssa% ret(R).
12341231 [{[{Z ,X }]}] = nested_mixed_inner (),
12351232 {<<Z /binary , 1 :8 >>,X }.
0 commit comments