aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2011-10-21Fix a few tests that used to fail on the HiPE platformHans Bolinder
2011-10-20Merge branch 'rc/epp-include-path-fix'Henrik Nord
* rc/epp-include-path-fix: Make epp search directory of current file first when including another file OTP-9645
2011-10-20Merge branch 'hl/fix-ms_transform-scope-warn'Henrik Nord
* hl/fix-ms_transform-scope-warn: ms_transform: Fix incorrect `variable shadowed' warnings OTP-9646
2011-10-20Merge branch 'cf/simple_one_for_one_shutdown'Henrik Nord
* cf/simple_one_for_one_shutdown: Explain how dynamic child processes are stopped Stack errors when dynamic children are stopped Explicitly kill dynamic children in supervisors Conflicts: lib/stdlib/doc/src/supervisor.xml OTP-9647
2011-10-20Merge branch 'cf/supervisor_shutdown_infinity'Henrik Nord
* cf/supervisor_shutdown_infinity: Add a warning to docs about workers' shutdown strategy Allow an infinite timeout to shutdown worker processes OTP-9648
2011-10-20Merge branch 'bjorn/unicode-noncharacters/OTP-9624'Björn Gustavsson
* bjorn/unicode-noncharacters/OTP-9624: Allow noncharacter code points in unicode encoding and decoding
2011-10-20Merge branch 'bjorn/parallel-make/OTP-9451'Björn Gustavsson
* bjorn/parallel-make/OTP-9451: corba applications: Fix broken 'make clean' ic documentation: Support parallel make Revert "ic documentation: Support parallel make"
2011-10-19Merge branch 'maint-r14'Lars Thorsen
* maint-r14: Fix match bug
2011-10-19Fix erroneous merge resolutionRickard Green
Previously removed code erroneously reappeared in a merge to the master branch (ec36499d7e329b4dc69a1a3be3422eac7907c260).
2011-10-18Merge branch 'fm/enif_is_number'Henrik Nord
* fm/enif_is_number: Add NIF function enif_is_number Conflicts: erts/emulator/beam/erl_nif_api_funcs.h OTP-9629
2011-10-18Merge branch 'sverker/random-improved-algo'Sverker Eriksson
* sverker/random-improved-algo: Improve algorithm in module random. Fix a bug in the implementation of the pseudo-random number generator OTP-8713
2011-10-18Merge branch 'pg/des-cfb-functions'Sverker Eriksson
* pg/des-cfb-functions: [crypto] Remove swedish characters from test code [crypto] Add DES and Triple DES cipher feedback (CFB) mode functions OTP-9640
2011-10-18[crypto] Remove swedish characters from test codeSverker Eriksson
2011-10-18[crypto] Add DES and Triple DES cipher feedback (CFB) mode functionsPaul Guyot
2011-10-17Make epp search directory of current file first when including another fileRichard Carlsson
The expected behaviour of a C-style preprocessor (such as Erlang's epp) is to allow a header file to include another header file in the same directory even though that directory is not explicitly in the include path, and even if the actual include path might reference another directory containing a file with the same name. For example, if src/foo.erl explicitly includes "../include/foo.hrl", then foo.hrl should be able to include "bar.hrl" in that same directory even though "../include" might not be in the search path, and even if another file named bar.hrl could be found using the search path it should not override the one in the same directory as foo.hrl. In Erlang, the most common situation is that a user of an installed application includes a main public header file using include_lib ("appname/include/foo.hrl") and that file includes a secondary header file "bar.hrl". However, if it does this using include_lib, it causes a bootstrapping problem - in the build environment for the application itself, the application is not necessarily found by name. On the other hand, if foo.hrl uses a plain include, then bar.hrl might be found when the application is built (if explicit paths are set in the makefils) but not later on when a user includes the main header file of the installed application via include_lib. By making -include always look in the directory of the current file before it uses the search path, this problem is remedied, and include directives behave in a more intuitive way. This completes a partial fix in R11 that only worked for include_lib().
2011-10-17Merge branch 'anders/diameter/testsuites/OTP-9620'Anders Svensson
* anders/diameter/testsuites/OTP-9620: Add failover suite Use util to simplify connection establishment in suites Move certificate generation into own testcase Add beam target to makefile Add util functions for managing connections Use tcp/sctp port resolution from testsuites
2011-10-17Merge branch 'anders/diameter/port_resolution/OTP-9623'Anders Svensson
* anders/diameter/port_resolution/OTP-9623: Register tcp listener before transport start return Add port resolution interface to transport modules
2011-10-17Merge branch 'hb/stdlib/dets_repair/OTP-9607'Hans Bolinder
* hb/stdlib/dets_repair/OTP-9607: Fix a bug in Dets concerning repair of almost full tables
2011-10-17Fix a bug in Dets concerning repair of almost full tablesHans Bolinder
A Dets table with sufficiently large buckets could not always be repaired. (Reported by Gordon Guthrie.) The format of Dets files has been modified. When downgrading tables created with the new system will be repaired. Otherwise the modification should not be noticeable.
2011-10-17Merge branch 'hb/doc_fixes/OTP-9616'Hans Bolinder
* hb/doc_fixes/OTP-9616: Correct the docs
2011-10-17Merge branch 'hb/erl_docgen/man_fixes/OTP-9614'Hans Bolinder
* hb/erl_docgen/man_fixes/OTP-9614: Fix bugs in the generation of manpages
2011-10-17Correct the docsHans Bolinder
2011-10-17Fix bugs in the generation of manpagesHans Bolinder
The indentation of the <d> tag has been corrected, as has the corresponding tag used for Erlang specs. The contents of the <v> was not properly processed.
2011-10-13Allow noncharacter code points in unicode encoding and decodingBjörn Gustavsson
The two noncharacter code points 16#FFFE and 16#FFFF were not allowed to be encoded or decoded using the unicode module or bit syntax. That causes an inconsistency, since the noncharacters 16#FDD0 to 16#FDEF could be encoded/decoded. There is two ways to fix that inconsistency. We have chosen to allow 16#FFFE and 16#FFFF to be encoded and decoded, because the noncharacters could be useful internally within an application and it will make encoding and decoding slightly faster. Reported-by: Alisdair Sullivan
2011-10-13asn1: Fix typo that caused failure of 'make release' on WindowsBjörn Gustavsson
2011-10-13make_preload: Don't output a C comment start inside a commentBjörn Gustavsson
We already avoid outputting a comment terminator ("*/") inside a comment to avoid causing a syntax error. Also avoid outputting the start of a comment ("/*") to avoid causing a compiler warning. Noticed-by: Tuncer Ayaz
2011-10-13Merge branch 'hb/stdlib/dets_repair/OTP-9622'Hans Bolinder
* hb/stdlib/dets_repair/OTP-9622: Fix a minor bug in Dets
2011-10-13Merge branch 'ia/ssl-peername-one-should-not-be-removed'Ingela Anderton Andin
* ia/ssl-peername-one-should-not-be-removed: Put back ssl:peercert/1
2011-10-12Merge branch 'lars/ic/fix-match-bug/OTP-9630' into maint-r14Erlang/OTP
* lars/ic/fix-match-bug/OTP-9630: Fix match bug
2011-10-12Fix match bugLars Thorsen
Incorrect use of ets:match changed to ets:match_object.
2011-10-12Merge branch 'bjorn/erts/beam-loader-fixes'Björn Gustavsson
* bjorn/erts/beam-loader-fixes: Print transformtions sorted on the name of the first instruction Share code for call of predicate and transformation functions Simplify transformations of gc_bif[123] instructions Refactor 'too_old_compiler' handling Introduce 'try_me_else_fail' Combine 'store_var' with 'next_arg' Merge 'next_instr' and 'is_op' into 'next_instr' Merge 'new_instr' and 'store_op' into 'new_instr' Combine a 'call' instruction with the following 'end' instruction Remove some unnecessary type constraints in transformations Get rid of redundant 'try_me_else' and 'fail' instructions Add some more information in instruction comments In transformations, don't store variables that are never used Remove redundant 'next_arg' before 'next_instr' Generalize and rename is_set_var_instr() to is_instr() Remove too_old_compiler handling for very old instruction variants Remove the special instructions for the hybrid heap emulator Remove optimization of 'move R R'
2011-10-12corba applications: Fix broken 'make clean'Lars Thorsen
The IDL-GENERATED files must be removed too; otherwise the target files will not be made the next time 'make' is invoked.
2011-10-11Merge branch 'bjorn/some-configure-clean-ups'Björn Gustavsson
* bjorn/some-configure-clean-ups: erts/configure.in: Remove test for reversed setvbuf() arguments erts/configure.in: Remove broken support for System V erts/configure.in: Don't check for the presence of mach-o/dyld.h erts/configure.in: Remove useless --disable-fixalloc option
2011-10-11Print transformtions sorted on the name of the first instructionBjörn Gustavsson
2011-10-11Share code for call of predicate and transformation functionsBjörn Gustavsson
2011-10-11Simplify transformations of gc_bif[123] instructionsBjörn Gustavsson
Each gc_bif[123] instruction must have both a transformation in ops.tab and special code in gen_guard_bif[123](). Rewrite it to do most of the work in gen_guard_bif[123]().
2011-10-11Refactor 'too_old_compiler' handlingBjörn Gustavsson
In the handling of generic instructions, we used to always test whether the instruction was 'too_old_compiler' and abort loading with a special error message. Refactor the code so that we only do test if we an error has occurred. That will allow us to make the test more expensive in the future, allowing us to customize error messages for certain opcode without any cost in the successful case.
2011-10-11Introduce 'try_me_else_fail'Björn Gustavsson
2011-10-11Combine 'store_var' with 'next_arg'Björn Gustavsson
'store_var' is always followed by 'next_arg'.
2011-10-11Merge 'next_instr' and 'is_op' into 'next_instr'Björn Gustavsson
'next_instr' is always followed by 'is_op'.
2011-10-11Merge 'new_instr' and 'store_op' into 'new_instr'Björn Gustavsson
Since the 'new_instr' instruction always occurs before the 'store_op' instruction, we can merge the instructions into one. Also, there is no need to include the arity of the BEAM instruction as an operand, since the arity can be looked up based on the opcode.
2011-10-11Combine a 'call' instruction with the following 'end' instructionBjörn Gustavsson
A 'call' instruction in the loader transformation language is always followed by an 'end' instruction, so we can replace the 'call' instruction with a 'call_end' instruction.
2011-10-11Remove some unnecessary type constraints in transformationsBjörn Gustavsson
We don't need type constraints that essentially are assertions; the wrong type will be detected and loading aborted when no specific instruction can be found.
2011-10-11Get rid of redundant 'try_me_else' and 'fail' instructionsBjörn Gustavsson
If the left part of a transformation will always match, omit the the 'try_me_else' and 'fail' instructions. As part of this optimization, make it an error to have a transformation that can never be reached because of a previous transformation that will always match. (Remove one transformation from ops.tab that was found to be unreachable.)
2011-10-11Add some more information in instruction commentsBjörn Gustavsson
2011-10-11In transformations, don't store variables that are never usedBjörn Gustavsson
This optimization will save some space (in the loader tables) and some loading time.
2011-10-11Remove redundant 'next_arg' before 'next_instr'Björn Gustavsson
Fix the incorrect code that attempted to remove a single 'next_arg' instructions before 'next_instr'.
2011-10-11Put back ssl:peercert/1Ingela Anderton Andin
I accidentally removed a little too much, only peercert/2 was deprecated.
2011-10-11Generalize and rename is_set_var_instr() to is_instr()Björn Gustavsson
It is more useful to have a helper function that can test for any instruction.
2011-10-11Remove too_old_compiler handling for very old instruction variantsBjörn Gustavsson
is_list/2 and other test instructions with a zero label was last generated by the v1 BEAM compiler which was last supported in R6B. Since BEAM modules produced by that compiler will be rejected with a nice error message for other reasons (e.g. by the test for the module_info/0,1 functions), retaining those transformations serves no useful purpose.