aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/src/beam_utils.erl
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2012-08-15 11:05:30 +0200
committerBjörn Gustavsson <[email protected]>2012-08-15 11:05:30 +0200
commitc5e5cf792d87e0d23f80ff572f499f0e3e044933 (patch)
tree585bc144e76486ed0959e4675015fbb760c6c33c /lib/compiler/src/beam_utils.erl
parent9492bf7abbf5e43a9bdada5b0ace0432ce1f4223 (diff)
parent6cdc6b667a8db2b63a4613c63dc4f75a34a5ea7f (diff)
downloadotp-c5e5cf792d87e0d23f80ff572f499f0e3e044933.tar.gz
otp-c5e5cf792d87e0d23f80ff572f499f0e3e044933.tar.bz2
otp-c5e5cf792d87e0d23f80ff572f499f0e3e044933.zip
Merge branch 'bjorn/compiler/minor-fixes/OTP-10185' into maint
* bjorn/compiler/minor-fixes/OTP-10185: erl_lint: Add a deprecated warning for literal tuple funs beam_utils:live_opt/1: Correct handling of try_case_end/1 Correct guard_SUITE_tuple_size.S beam_type: Print the offending function if this pass crashes beam_validator: Validate the size operand in bs_init_bits and bs_init2
Diffstat (limited to 'lib/compiler/src/beam_utils.erl')
-rw-r--r--lib/compiler/src/beam_utils.erl5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/compiler/src/beam_utils.erl b/lib/compiler/src/beam_utils.erl
index abcd93f280..194f089ba1 100644
--- a/lib/compiler/src/beam_utils.erl
+++ b/lib/compiler/src/beam_utils.erl
@@ -741,6 +741,9 @@ live_opt([{badmatch,Src}=I|Is], _, D, Acc) ->
live_opt([{case_end,Src}=I|Is], _, D, Acc) ->
Regs = x_live([Src], 0),
live_opt(Is, Regs, D, [I|Acc]);
+live_opt([{try_case_end,Src}=I|Is], _, D, Acc) ->
+ Regs = x_live([Src], 0),
+ live_opt(Is, Regs, D, [I|Acc]);
live_opt([if_end=I|Is], _, D, Acc) ->
Regs = 0,
live_opt(Is, Regs, D, [I|Acc]);
@@ -802,8 +805,6 @@ live_opt([{deallocate,_}=I|Is], Regs, D, Acc) ->
live_opt(Is, Regs, D, [I|Acc]);
live_opt([{kill,_}=I|Is], Regs, D, Acc) ->
live_opt(Is, Regs, D, [I|Acc]);
-live_opt([{try_case_end,_}=I|Is], Regs, D, Acc) ->
- live_opt(Is, Regs, D, [I|Acc]);
live_opt([{try_end,_}=I|Is], Regs, D, Acc) ->
live_opt(Is, Regs, D, [I|Acc]);
live_opt([{loop_rec_end,_}=I|Is], Regs, D, Acc) ->