diff options
author | Björn Gustavsson <[email protected]> | 2018-06-29 14:14:40 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2018-06-29 14:23:08 +0200 |
commit | d10fd4596270d7f8503dc46a0a7c229ad08795d2 (patch) | |
tree | 568cf6292ea1dc07e801197c386ff82ad146c9e1 /lib/compiler/src | |
parent | a0ae44f324576104760a63fe6cf63e0ca31756fc (diff) | |
download | otp-d10fd4596270d7f8503dc46a0a7c229ad08795d2.tar.gz otp-d10fd4596270d7f8503dc46a0a7c229ad08795d2.tar.bz2 otp-d10fd4596270d7f8503dc46a0a7c229ad08795d2.zip |
Eliminate a crash in the beam_jump pass
https://bugs.erlang.org/browse/ERL-660
Diffstat (limited to 'lib/compiler/src')
-rw-r--r-- | lib/compiler/src/beam_utils.erl | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/compiler/src/beam_utils.erl b/lib/compiler/src/beam_utils.erl index 5510624b2d..30b6dcac8c 100644 --- a/lib/compiler/src/beam_utils.erl +++ b/lib/compiler/src/beam_utils.erl @@ -355,6 +355,9 @@ split_even(Rs) -> split_even(Rs, [], []). %% exit BIF will raise an exception %% used - Reg is used +check_liveness({fr,_}, _, St) -> + %% Conservatively always consider the floating point register used. + {used,St}; check_liveness(R, [{block,Blk}|Is], St0) -> case check_liveness_block(R, Blk, St0) of {transparent,St1} -> |