aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/test
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2010-04-27 11:11:38 +0200
committerRaimo Niskanen <[email protected]>2010-05-20 12:20:49 +0200
commit0078862df75ff97827a09aee8e59fe3cf9343a5e (patch)
tree85abf7fc2deedeb2bf6c3f8190073f0c4477004e /lib/compiler/test
parent2bbfb378e90ac6569c950571c26a207ed8e559db (diff)
downloadotp-0078862df75ff97827a09aee8e59fe3cf9343a5e.tar.gz
otp-0078862df75ff97827a09aee8e59fe3cf9343a5e.tar.bz2
otp-0078862df75ff97827a09aee8e59fe3cf9343a5e.zip
beam_block: Remove a clause that will never be executed
Since the introduction of literals in R12B, empty tuples are literals. Thus the put_tuple/2 instruction is always followed by at least one put/1 instruction. Therefore the alloc_may_pass/1 function in beam_block no longer needs a clause for for "put_tuple", because the clause for "put" will always be reached first (since the instruction stream is scanned in reverse execution order). Note that if the compiler would generate a "put_tuple 0 Dst" instruction for some unfathomable reason, we should still be because the run-time system will now refuse to load a module containing such an instruction.
Diffstat (limited to 'lib/compiler/test')
0 files changed, 0 insertions, 0 deletions