aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-09-14tools: Add handling of the -on_load() attribute to XrefHans Bolinder
2017-09-14tools: Correction of xref(3)Hans Bolinder
2017-09-14wx: Update doc, OpenGL external linksDan Gudmundsson
They have moved from opengl.org to www.khronos.org
2017-09-14Add compile_info option to compileJosé Valim
This allows compilers built on top of the compile module to attach external compilation metadata to the compile_info chunk. For example, Erlang uses this chunk to store the compiler version. Elixir and LFE may augment this by also adding their own compiler versions, which can be useful when debugging. The deterministic option does not affect the user supplied compile_info. It is therefore the responsibility of external compilers to guarantee any added information does not violate the determinsitic option, if such option is supported. Finally, this code moves the building of the compile_info options to the compile module instead of beam_asm, moving all of the option mangling code to a single place.
2017-09-14wx: Reduce Opengl docsDan Gudmundsson
Only use the first paragraph in the doc which contains an overview, the result of the more detailed doc generated non valid xml, and all math expressions was rendered poorly. Remove for now.
2017-09-14Pack combined instructionsBjörn Gustavsson
2017-09-14beam_makeops: Refactor code generationBjörn Gustavsson
The refactoring will simplify packing of combined instructions.
2017-09-14Correct disassembly of select instructionsBjörn Gustavsson
Make sure to use the 'unpacked[-1]' when accessing the unpacked arguments.
2017-09-14Merge branch 'bjorn/erts/relative-jumps'Björn Gustavsson
* bjorn/erts/relative-jumps: Pack failure labels in i_select_val2 and i_select_tuple_arity2 Optimize i_select_tuple_arity2 and is_select_lins Rewrite select_val_bins so that its labels can be packed Pack sequences of trailing 'f' operands Implement packing of 'f' and 'j' Make sure that mask literals are 64 bits Use relative failure labels Add information about offset to common group start position Remove JUMP_OFFSET Refactor instructions to support relative jumps Introduce a new trace_jump/1 instruction for tracing Avoid using $Src more than once
2017-09-14Pack failure labels in i_select_val2 and i_select_tuple_arity2Björn Gustavsson
2017-09-14Optimize i_select_tuple_arity2 and is_select_linsBjörn Gustavsson
Don't save a pointer to the default failure label. That could relieve register pressure. Instead, if we'll need to signal an error in i_select_tuple_arity2, delay to the execution phase. That should be a clear win because i_select_tuple_arity2 very rarely fails because of the term being selected is not a tuple.
2017-09-14Rewrite select_val_bins so that its labels can be packedBjörn Gustavsson
2017-09-14Pack sequences of trailing 'f' operandsBjörn Gustavsson
Pack sequences of trailing 'f' operands for instructions such at jump_on_val or i_select_val_lins.
2017-09-14Implement packing of 'f' and 'j'Björn Gustavsson
2017-09-14Make sure that mask literals are 64 bitsBjörn Gustavsson
Use the "ull" suffix for the mask literals instead of "ul" to ensure that the literals are 64 bits also on Windows.
2017-09-14Use relative failure labelsBjörn Gustavsson
Relative failure in itself is not an optimization, but we plan to pack failure labels in the future to save memory.
2017-09-14Add information about offset to common group start positionBjörn Gustavsson
2017-09-14Remove JUMP_OFFSETBjörn Gustavsson
It has served its purpose.
2017-09-14Document that the compiler may optimize away atomsBjörn Gustavsson
The following code could fail in the call to list_existing_atom/1: String = atom_to_list(some_atom), Atom = list_to_existing_atom(String) because the compiler will rewrite the code to: String = "some_atom", Atom = list_to_existing_atom(String) If some_atom is not used in another place, it will not exist. The compiler could be updated to preserve the atom in this simple case, but it would be hard to make sure that the compiler never loses atoms that exist in the source text. It also difficult to imagine a real world use case where this would be a problem. If an atom is mentioned only in a way that the compiler can optimize away, is there really any need to create the atom at all in list_to_existing_atom/1? Therefore, it is better to place the responsibility that the atom exists on the user of list_to_existing_atom/1. Update the documentation to mention that the compiler may optimize away atoms. https://bugs.erlang.org/browse/ERL-453
2017-09-14Merge branch 'maint'Dan Gudmundsson
* maint: stdlib: Fix jumping to beginning or end of line Fix del_chars not considering wide chars and update buffer length before calling write_buf Make cp_pos_to_col function aware of the ANSI escape codes
2017-09-14Merge pull request #1549 from ggcampinho/fix-move-cursorDan Gudmundsson
Consider ANSI escape codes on cp_pos_to_col
2017-09-13Fixed dns lookup in case of server close connection with econnrefusedKozlov Yakov
2017-09-13cdv: Find end of 'Last calls' sectionSiri Hansen
This is a bug fix: the end of the 'Last calls' section is meant to be an empty line, but in some situations this is not the case. This could cause the complete dump to be read and stored as 'Last calls', causing very unexpected behavior in the crashdump viewer. This commit adds a check for ": ", which indicates that a new heading has occured and thus the 'Last calls' section is completly read.
2017-09-13cdv: Don't mark process as truncated if truncation is after all proc_heapsSiri Hansen
2017-09-13cdv: Set ERL_CRASH_DUMP_SECONDS to 0 in cdv scriptsSiri Hansen
This is to avoid crashdumps generated by crashdump_viewer, possibly overwriting the currently analysed crashdump.
2017-09-13Merge branch 'sverker/19/on_load-on_load-bug/OTP-14612' into ↵Sverker Eriksson
sverker/on_load-on_load-bug/OTP-14612
2017-09-13erts: Fix 'on_load' tracing bug for modules with -on_loadSverker Eriksson
Symptom: VM crash when erlang:trace_pattern(on_load, ..) is set and module with -on_load is loaded. Problem: Tracing and -on_load clash in their use of Export.beam[1] Solution: Do not do call set_default_trace_pattern in finish_loading_1 for modules with -on_load. finish_after_on_load_2 will do that anyway.
2017-09-13Merge branch 'maint'Anders Svensson
2017-09-13Merge branch 'anders/diameter/grouped_decode/OTP-14607' into maintAnders Svensson
* anders/diameter/grouped_decode/OTP-14607: Fix diameter_packet.avps decode of Grouped AVP errors in Failed-AVP
2017-09-13Merge branch 'anders/diameter/DOIC/OTP-14588' into maintAnders Svensson
* anders/diameter/DOIC/OTP-14588: Fix avp_dictionaries decode with {decode_format, none}
2017-09-13code_SUITE:on_load_trace_on_loadSverker Eriksson
2017-09-13stdlib: Fix jumping to beginning or end of lineDan Gudmundsson
When cursor is before or after a multi-codepoint grapheme cluster.
2017-09-13Fix del_chars not considering wide chars and update buffer length before ↵Glauber Campinho
calling write_buf After deleting the chars the function `del_chars` was considering the code points to move the cursor back and not the graphemes
2017-09-13Merge branch 'maint'Dan Gudmundsson
* maint: Update the version to 2.8.0 Remove the obsolete erlang-buffer-substring function Add a :package-version property to the new defcustom erlang-shell-prompt-read-only Bump the version number Make the erlang-shell prompt read-only by default Remove a mention of Emacs 21 Drop some redundant backwards compatibility code Enable lexical binding for erlang-mode Remove some ancient compatibility aliases
2017-09-13Merge remote-tracking branch 'upstream/pr/1474' into maintDan Gudmundsson
* upstream/pr/1474: Update the version to 2.8.0 Remove the obsolete erlang-buffer-substring function Add a :package-version property to the new defcustom erlang-shell-prompt-read-only Bump the version number Make the erlang-shell prompt read-only by default Remove a mention of Emacs 21 Drop some redundant backwards compatibility code Enable lexical binding for erlang-mode Remove some ancient compatibility aliases
2017-09-13Refactor instructions to support relative jumpsBjörn Gustavsson
Introduce new macros that can be used for relative jumps and use them consistently. Test that everything works by using a non-zero constant JUMP_OFFSET. The loader subtracts JUMP_OFFSET from loaded labels, and all instructions that use 'f' operands add it back.
2017-09-13Merge branch 'bjorn/erts/improve-beam-ops'Björn Gustavsson
* bjorn/erts/improve-beam-ops: Add built-in macros $ARG_POSITION() and $IS_PACKED() Use 't' instead of 'I' bit syntax operands Optimize operand type for match context in i_bs_get_integer Change operand type from 's' to 'S' for a few instructions Use the correct name of the parameter
2017-09-13Add built-in macros $ARG_POSITION() and $IS_PACKED()Björn Gustavsson
2017-09-13Merge pull request #1544 from michalmuskala/eq-optBjörn Gustavsson
Optimise equality comparisons
2017-09-13Merge branch 'potatosalad/erts/binary_find_bif_improved/PR-1480/OTP-14610'Lukas Larsson
* potatosalad/erts/binary_find_bif_improved/PR-1480/OTP-14610: stdlib: Improved BIF for binary matches and split.
2017-09-13Updated OTP versionOTP-20.0.5Erlang/OTP
2017-09-13Update release notesErlang/OTP
2017-09-13Update version numbersErlang/OTP
2017-09-13Merge branch 'peterdmv/prepare_inets_release' into maint-20Erlang/OTP
* peterdmv/prepare_inets_release: inets: prepare for release
2017-09-13Merge branch 'peterdmv/inets/http_uri_backwards_compat/OTP-14573' into maint-20Erlang/OTP
* peterdmv/inets/http_uri_backwards_compat/OTP-14573: inets: Restore old behavior when parsing "+"
2017-09-13Merge branch 'sverker/20/binary_to_atom-utf8-crash/ERL-474/OTP-14590' into ↵Erlang/OTP
maint-20 * sverker/20/binary_to_atom-utf8-crash/ERL-474/OTP-14590: erts: Fix crash in binary_to_atom/term for invalid utf8
2017-09-13Merge branch 'ingela/inets/httpd-chunk-post/OTP-14450' into maint-20Erlang/OTP
* ingela/inets/httpd-chunk-post/OTP-14450: inets: httpd correct server_name environment value inets: httpd - Add chunk handling of client data
2017-09-13Merge branch 'maint'Ingela Anderton Andin
2017-09-13Merge branch 'ingela/inets/maint/httpd-chunk-post/OTP-14450' into maintIngela Anderton Andin
* ingela/inets/maint/httpd-chunk-post/OTP-14450: inets: httpd correct server_name environment value inets: httpd - Add chunk handling of client data
2017-09-13inets: httpd correct server_name environment valueIngela Anderton Andin
Add host_name to hold the resolved name incorrectly provided as server name before.