aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/export.c
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2016-05-23 20:13:48 +0200
committerBjörn Gustavsson <[email protected]>2016-05-30 13:19:20 +0200
commitb1b27719d713c0e62d3242bbf1da0600ea0a651f (patch)
tree7376b00ada2e29bae532bd997a2a02fecec1faf6 /erts/emulator/beam/export.c
parent88632d70cc866b5e54589ccb9311c7c5a88ecb46 (diff)
downloadotp-b1b27719d713c0e62d3242bbf1da0600ea0a651f.tar.gz
otp-b1b27719d713c0e62d3242bbf1da0600ea0a651f.tar.bz2
otp-b1b27719d713c0e62d3242bbf1da0600ea0a651f.zip
Eliminate unsafe use of Y registers
If the Core Erlang optimization were turned off (using no_copt), the optimization passes for Beam assembly could generate unsafe code that did not initialize all Y registers before (for example) a call instruction. To fix this, beam_dead should not attempt to remove stores to Y registers. That is not safe if there is an exception-generating instruction inside a try...catch block.
Diffstat (limited to 'erts/emulator/beam/export.c')
0 files changed, 0 insertions, 0 deletions