Age | Commit message (Collapse) | Author |
|
|
|
By accident a previous instance of St is used, which is
harmless in this case, but leads to worse quality of
the generated code.
|
|
Code such as
foo(A) -> <<A:0>>.
would cause a compiler crash.
|
|
The inliner can cause illegal uses of the bs_context_to_binary/1
instruction, such as:
bs_context_to_binary {literal,"string"}
or
bs_context_to_binary {integer,1}
Remove the bs_context_to_binary/1 instruction if the operand
is not a register (it is clearly not needed).
|
|
* bg/compiler-remove-r11-support:
compiler: Don't support the no_binaries option
erts: Don't support the put_string/3 instruction
compiler: Don't support the no_constant_pool option
compiler: Don't support the r11 option
test_server: Don't support communication with R11 nodes
binary_SUITE: Don't test bit-level binary roundtrips with R11 nodes
erts: Test compatibility of funs with R12 instead of R11
OTP-8531 bg/compiler-remove-r11-support
|
|
The no_constant_pool option was implied by the r11 option. It turns
off the usage of the constant (literal) pool, so that BEAM
instructions that use constants can be loaded in an R11 system.
Since the r11 option has been removed, there is no need to
retain the no_constant_pool option.
|
|
|