Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: bjorng/otp
...
head fork: bjorng/otp
Checking mergeability… Don't worry, you can still create the pull request.
This comparison is big! We're only showing the most recent 250 commits
Commits on Feb 18, 2014
@schlagert schlagert Fix non-library appup files according to issue #240
Fix the appup files of runtime_tools and os_mon with wildcard
version regexps. inets, odbc and ssh regexps have been corrected
to match as originally intended.
15e1ff7
@schlagert schlagert Fix library application appup files
As discussed in issue #240 *all* OTP library applications use the '.*'
wildcard as up and down version. This makes library applications
always up- and downgradeable. Using the wildcard version obsoletes
all maintenance tasks regarding library applications' appup files.
Additionally, it prevents upgrade problems caused by automatically
included application dependencies when using reltool to create
releases. Missing copyright headers are now consistently present.
a61f66e
@byaruhaf byaruhaf Updated Copyright year and recent Erlang books
Added "Introducing Erlang" & "Learn You Some Elrlang for Great Good"
Also changed the href for "Programming Erlang" to the new second edition.
db5b030
Commits on Feb 19, 2014
@bjorng Merge branch 'nox/compiler/v3_core-comprehensions-cleanup'
* nox/compiler/v3_core-comprehensions-cleanup:
  Simplify comprehension compilation in v3_core

OTP-11720
f2b3aa8
@bjorng Update primary bootstrap cbe9bc1
Anders Svensson Use inet:{peer,sock}names/1 in diameter_sctp
OTP-10229 (commit c4592b6) added these function to give access to all
addresses on a multihomed endpoint, their singular siblings not
returning anything useful in this case.

This fixes {accept, Match} config, which matches peer addresses against
configured addresses or regexps to decide whether or not a newly
established association should be retained. The functionality was added
in OTP-10893 (commit 9bbf27e) but predated OTP-10229 by a few months.

It also fixes the addresses shown for SCTP associations in
diameter:service_info/2 output.
30d8dc3
Anders Svensson Merge branch 'anders/diameter/sctp/OTP-11661'
* anders/diameter/sctp/OTP-11661:
  Use inet:{peer,sock}names/1 in diameter_sctp
9fbb7a9
@bjorng beam/utils.c: Change back cmp() to only take two arguments
Commit d5c2384 added a third
argument to the cmp() function, but did not change the code generation
of native code that called cmp().

Name the new functions with an "erts_" prefix, and reinstate the
old cmp() function with two arguments.

We don't have to keep a cmp() function in the halfword emulator,
since HiPE does not support the halfword emulator.
04f4d96
@rickard-green rickard-green Misc adjustments of OTP version 3fd4e3e
@rickard-green rickard-green Build documentation with bootstrap system
Enables build of documentation in source trees that has been cross built
f51da9b
@psyeugenic psyeugenic erts: Introduce new instructions for combined key fetches 3e20656
@psyeugenic psyeugenic compiler: Check literal order in beam_validator bf21750
@psyeugenic psyeugenic compiler: Use aliasing in map pair patterns bd1ced9
@psyeugenic psyeugenic compiler: Test Maps aliasing fddad19
@dgud dgud kernel: Fix an application terminate deadlock possibility
Could happen if get_child was called during terminate.
io (since it is a group_leader) also causes problems after
get_child was called.

Split up and do it async.
397e69f
@psyeugenic psyeugenic compiler: Transform list of Args to exact literal type 70d3c4d
@sverker sverker Merge branch 'sverk/crypto/hmac-context-reuse-bug'
OTP-11722
OTP-11724

* sverk/crypto/hmac-context-reuse-bug:
  crypto: Fix bug when using old hmac context
  erts: Fix NIF bug when load/upgrade fails after enif_open_resource_type

Conflicts:
	erts/emulator/test/nif_SUITE.erl
8c17e70
@sverker sverker Merge branch 'sverk/crypto/nomem-abort'
OTP-11725

* sverk/crypto/nomem-abort:
  crypto: Abort VM if out of memory
a40cc98
@sverker sverker Merge branch 'sverk/test_server/openbsd-dynlink'
* sverk/test_server/openbsd-dynlink:
  erts: Skip driver_SUITE:thr_free_drv for VM without threads
  erts: Fix driver_SUITE:otp_9302 for VM without threads
  test_server: Fix dynlib link command for openbsd
5cdba8e
@sverker sverker erts: Fix race bug in ets:all/0
causing recently created/deleted tables to not be included/excluded.
5006a54
@sverker sverker erts: Fix harmless (?) typo in beam_load.c 32d4c07
@sverker sverker erts: Fix faulty asserts in erts_sys_aligned_alloc/free f8693cf
@sverker sverker Merge branch 'sverk/ets-all-race'
OTP-11726

* sverk/ets-all-race:
  erts: Fix faulty asserts in erts_sys_aligned_alloc/free
  erts: Fix harmless (?) typo in beam_load.c
  erts: Fix race bug in ets:all/0
d7889a5
@psyeugenic psyeugenic erts: Fix erts_debug:disassemble/1
Now handles map instructions correctly.
8899c39
Commits on Feb 20, 2014
@garazdawi garazdawi Merge branch 'lukas/erts/dtrace-config-logging/OTP-11622'
* lukas/erts/dtrace-config-logging/OTP-11622:
  dtrace: Update dtrace docs with latest tested platforms
  erts: Fix dtrace generation on FreeBSD
  erts: Rewrite dtrace configure test
b1bb2f3
@garazdawi garazdawi Merge branch 'lukas/tools/fix_maps_in_emacs_mode/OTP-11616'
* lukas/tools/fix_maps_in_emacs_mode/OTP-11616:
  tools: Update emacs mode with map highlights
22f6c2e
@IngelaAndin IngelaAndin ssl: Correct clean up of certificate database when certs are inputed
in pure DER format.

The incorrect code could cause a memory leek when certs where inputed
in DER.
fe64a86
@sverker sverker erts: Fix memory leak in nif_SUITE:resource_takeover a1c3150
@sverker sverker Merge branch 'sverk/nif_SUITE-memleak'
* sverk/nif_SUITE-memleak:
  erts: Fix memory leak in nif_SUITE:resource_takeover
3cfcf10
@bjorng Merge branch 'fenollp/shell-expand-0arity-completely'
* fenollp/shell-expand-0arity-completely:
  Correct parenthesis expansion
  Clean up edlin_expand_SUITE.erl to facilitate maintainance
a1631b1
@dgud dgud Merge branch 'dgud/runtime_tools/scheduler_wall_time_flags/OTP-11693'
* dgud/runtime_tools/scheduler_wall_time_flags/OTP-11693:
  runtime_tools: Do not turn off scheduler_wall_time
ae8e71d
@dgud dgud Merge branch 'dgud/kernel/application-deadlock/OTP-11171'
* dgud/kernel/application-deadlock/OTP-11171:
  kernel: Fix an application terminate deadlock possibility
4c538e1
@bjorng Merge branch 'bjorn/asn1/cleanup/OTP-11727'
* bjorn/asn1/cleanup/OTP-11727:
  asn1ct_check: Use a return value to silence a dialyzer warning
  asn1ct_check: Remove useless call to check_integer/3
  asn1ct_check: Correct error handling for illegal OCTET STRING values
  asn1ct: Silence dialyzer warnings for unmatched returns
  asn1ct_table: Remove unused flexibility in table creation
  asn1ct_table: Silence a dialyzer warning for unmatched return
  asn1ct_gen: Silence dialyzer warnings for unmatched returns
  asn1ct_value: Silence a dialyzer warning for unmatched return
  asn1ct_tok: Check return value from file:close/1
39c1811
@dgud dgud mnesia: Add explicit sync_log command
For performance reasons the file data is not synced to disk in mnesia,
data loss can happen between each dump.

mnesia:dump_log() can be used explicitly to ensure data is written to disk.
But that can take a long time, so mnesia:sync_log() which just
sync the log have been added.
70373f8
@dgud dgud mnesia: Improve mnesia coredump info
Add stacktrace of mnesia processes.
2cb2874
@dgud dgud mnesia: Shorten testcase names
For windows tests (limited path lenghts)
86dd1a1
@dgud dgud mnesia: cleanup some dialyzer unmatched return warnings 8d70f05
@bjorng Speed up bs_construct_SUITE:dynamic/1
The original test comes from the emulator test suite for testing
binary syntax in the run-time system.

Running interpreted it can be quite slow, especially when the system
has been compiled with the configure option --enable-native-libs
(probably because of very many context switches between native code
and BEAM code).

Speed up the test by scaling down the size of binaries from 128
bits to 64 bits. That should speed up the test roughly four times.
By running the little and big endian tests in parallel we will
cut that time in half. Thus all in all the test will run roughly
8 times faster.
1c8a57c
@bjorng With --enable-native-libs, skip eprof_SUITE:basic_option/1
eprof does not work on native-compiled code. Since
eprof_SUITE:basic_option/1 does profiling on the lists modules,
the test case will fail if --enable-native-libs is used.
04d156d
@bjorng Merge branch 'bjorn/cuddle-with-tests'
* bjorn/cuddle-with-tests:
  With --enable-native-libs, skip eprof_SUITE:basic_option/1
  Speed up bs_construct_SUITE:dynamic/1
4ba99d6
Hans Bolinder Fix a bug in epp concerning circular macro definitions
epp could loop when encountering a circular macro definition in an
included file.

Thanks to Maruthavanan Subbarayan for reporting the bug, and to
Richard Carlsson for providing a bug fix.
b3bee03
@psyeugenic psyeugenic compiler: Remove dead warning f31d54a
Hans Bolinder Correct the contract of inet:ntoa/1
Thanks to Max Treskin.
5605ed4
@sverker sverker ASSERT that GC is not tried with "need" when GC is disabled 880239f
@psyeugenic psyeugenic compiler: Strengthen Maps compile tests 1c37990
@sirihansen sirihansen Merge branch 'siri/appup_tests_17/OTP-11534'
* siri/appup_tests_17/OTP-11534:
  Update sasl/test/test_lib.hrl with recent versions of kernel and stdlib
  Update appups and appup tests for kernel, stdlib and sasl
8fcf49c
@sirihansen sirihansen Merge branch 'siri/restart_app-type/OTP-11716'
* siri/restart_app-type/OTP-11716:
  [sasl] Use restart type from .rel when restarting apps during upgrade
0f8fb8d
@sverker sverker erts: Add more details to warning in on_load docs 452948a
@sverker sverker Merge branch 'sverk/on_load-warning'
* sverk/on_load-warning:
  erts: Add more details to warning in on_load docs
e8cc3e6
@HansN HansN Merge branch 'hans/ssh/patch_1261/rbs'
* hans/ssh/patch_1261/rbs:
  fix calculation of variable thanks to Alexander Demidenko
  ssh: The server ssh_cli does not delay tty_geometry requests in case no tty is allocated
  ssh: fix 'known_hosts' bug in ssh_file
  ssh: Changed order of decode clauses to temp fix decode error
  ssh: Fixes memory crash
  Fix that result on stderr sent back to ssh:exec had length info present
259c048
Commits on Feb 21, 2014
Hans Bolinder Merge branch 'hb/stdlib/epp_bug_fix/OTP-11728'
* hb/stdlib/epp_bug_fix/OTP-11728:
  Fix a bug in epp concerning circular macro definitions
08b9742
Hans Bolinder Merge branch 'hb/kernel/spec_bug_fix/OTP-11730'
* hb/kernel/spec_bug_fix/OTP-11730:
  Correct the contract of inet:ntoa/1
ee884bd
@dgud dgud Merge branch 'dgud/mnesia/add-sync-log/OTP-11729'
* dgud/mnesia/add-sync-log/OTP-11729:
  mnesia: cleanup some dialyzer unmatched return warnings
  mnesia: Shorten testcase names
  mnesia: Improve mnesia coredump info
  mnesia: Add explicit sync_log command
986611b
@rickard-green rickard-green Merge branch 'rickard/otp_version/OTP-11615'
* rickard/otp_version/OTP-11615:
  Misc adjustments of OTP version
dd298cc
@rickard-green rickard-green Merge branch 'rickard/doc-build/OTP-11713'
* rickard/doc-build/OTP-11713:
  Build documentation with bootstrap system
2b7d4be
@psyeugenic psyeugenic Merge branch 'egil/compiler/maps-get_map_elements'
* egil/compiler/maps-get_map_elements:
  compiler: Strengthen Maps compile tests
  compiler: Remove dead warning
  erts: Fix erts_debug:disassemble/1
  compiler: Transform list of Args to exact literal type
  compiler: Test Maps aliasing
  compiler: Use aliasing in map pair patterns
  compiler: Check literal order in beam_validator
  erts: Introduce new instructions for combined key fetches
  compiler: Change map instructions for fetching values
2d3c60d
@psyeugenic psyeugenic Merge branch 'nox/maps-erl_syntax-fix-docs'
* nox/maps-erl_syntax-fix-docs:
  Mention map trees in erl_syntax:type/1 documentation
687d9c0
@bjorng Deprecate asn1 functions
Those asn1 functions are no longer needed because they all have
better alternatives.
e5c71b7
@bjorng Merge branch 'bjorn/erts/restore-cmp-arguments'
* bjorn/erts/restore-cmp-arguments:
  beam/utils.c: Change back cmp() to only take two arguments
db911c1
@psyeugenic psyeugenic compiler: Add variable coverage of map in cerl 91e3f8f
@psyeugenic psyeugenic compiler: Fix map inlining
Added coverage of operating map variable.
79251a6
@sirihansen sirihansen Unload 'deadlock' application in application_SUITE:shutdown_deadlock
This is just to clean up properly after the test case. If not,
code_SUITE:bit_boot_embedded might fail since it tries to include the
'deadlock' application in the boot file and fails when running
systools:make_script.
dba1f39
@sirihansen sirihansen Use default timetrap (30 min) for kernel, stdlib and sasl app tests
These tests start new nodes, and they frequently timed out on some
slow test hosts.
ae91a79
@psyeugenic psyeugenic erts: Maps src instructions can't be literals
Move src to a register if it is a literal.
0dd1ae6
@IngelaAndin IngelaAndin ssl: Add test that memory is not leeked 794b344
@psyeugenic psyeugenic compiler: Update map_SUITE to handle inlining 771fa6d
Commits on Feb 22, 2014
Hans Bolinder Solve remote types in parameters 8cc06c1
Hans Bolinder Fix a bug concerning parameterized types
This should fix a problem with variables in parameterized types.

In particular it concerns parameterized opaque types and records.
f58b946
Hans Bolinder Introduce parameterized opaque types
Handle immediate opaque types as aliases:

A declaration of dict/0

  -opaque dict() :: dict(_, _).
  -opaque dict(Key, Value) :: ...

is handled as an alias, that is, when using dict() it is immediately
replaced by dict(_, _).

This is a means to avoid having to handle equivalent opaque types
later. To be changed if it doesn't work well.
85a5aca
Commits on Feb 23, 2014
Hans Bolinder Merge branch 'hb/dialyzer/para_opaque/OTP-11625'
* hb/dialyzer/para_opaque/OTP-11625:
  Introduce parameterized opaque types
  Fix a bug concerning parameterized types
  Solve remote types in parameters
502b13a
Hans Bolinder Deprecate pre-defined built-in types
The types array(), dict(), digraph(), gb_set(), gb_tree(), queue(),
set(), and tid() have been deprecated. They will be removed in OTP 18.0.

Instead the types array:array(), dict:dict(), digraph:graph(),
gb_set:set(), gb_tree:tree(), queue:queue(), sets:set(), and ets:tid()
can be used. (Note: it has always been necessary to use ets:tid().)

It is allowed in OTP 17.0 to locally re-define the types array(), dict(),
and so on.

New types array:array/1, dict:dict/2, gb_sets:set/1, gb_trees:tree/2,
queue:queue/1, and sets:set/1 have been added.
b66e75c
@rickard-green rickard-green Introduce configure option --with-assumed-cache-line-size=SIZE b2017b9
Commits on Feb 24, 2014
Hans Bolinder FIx handling of 'on_load' attribute
[pull request from Kostis Sagonas]

The handling of functions appearing in an 'on_load' attribute was wrong.
Instead of considering the functions specified in these attributes as
escaping from the module and performing a full analysis starting from
them, the code just bypassed this analysis and only suppressed unused
warning messages for these functions. This worked for most of the cases
but resulted in functions (directly or indirectly) called by 'on_load'
functions being reported as not called by the module.

Such a case existed in the code of the 'crypto' application.

To solve these issues the initialization code for functions escaping
from the module was changed and the test for the on_load functionality
was appropriately extended.
f4bafbf
@IngelaAndin IngelaAndin Merge branch 'ia/ssl/cache-fix/OTP-11733'
* ia/ssl/cache-fix/OTP-11733:
  ssl: Add test that memory is not leeked
  ssl: Correct clean up of certificate database when certs are inputed in pure DER format.
7211dab
@garazdawi garazdawi erts: Set default external enc to use new float scheme
This change was triggered by the OSE float printing function
not working exactly the same way as linux/win32. But it is
also a good one in general as it cuts size in more than half
for floats.
a3af5f4
@schlagert schlagert Introduce appup test utility
This adds a test function similar to the app file test function
existing in test_server. The code is mostly taken from the asn1,
snmp and inets test suites. Low-level upgrade instruction checking
is stripped. Library application's appup files get specialized
treatment, since their content is almost static.
e13698d
@schlagert schlagert Add test suites performing app and appup file checks
Add the mentioned test suites for *all* library and touched
non-library applications.
841addf
@schlagert schlagert Fix missing module on hipe app file template 1cb2aa3
@schlagert schlagert Make hipe non-upgradable by setting appup file empty
The reason for this is that if you are running a system with native
compiled code, then you will have major problems with soft upgrade
and the only reasonable way to go is to restart your emulator.

Currently there is no instruction that will force ONLY a restart of
the emulator, so the solution would be to hand write a relup with
only a restart_emulator instruction. By letting hipe.appup be empty,
systools will complain and not generate a relup - which should
indicate that you might have to write your relup by hand.
d5b4bd0
@schlagert schlagert Disable hipe_SUITE when environment doesn't support it 4fe82b4
@schlagert schlagert Dynamically configure typer_SUITE according to environment
Disables the typer app_test when dependent applications are missing.
beae7ae
@sirihansen sirihansen Merge branch 'schlagert/fix_basic_appups'
* schlagert/fix_basic_appups:
  Dynamically configure typer_SUITE according to environment
  Disable hipe_SUITE when environment doesn't support it
  Make hipe non-upgradable by setting appup file empty
  Fix missing module on hipe app file template
  Add test suites performing app and appup file checks
  Introduce appup test utility
  Fix library application appup files
  Fix non-library appup files according to issue #240

OTP-11744
cd03c96
Hans Bolinder Merge branch 'hb/dialyzer/deprecate_types/OTP-10342'
* hb/dialyzer/deprecate_types/OTP-10342:
  Deprecate pre-defined built-in types
790e373
@bjorng Remove or de-emphasize references to the deprecated asn1rt module 1bdb47b
Hans Bolinder Merge branch 'hb/dialyzer/fix_on_load/OTP-11743'
* hb/dialyzer/fix_on_load/OTP-11743:
  FIx handling of 'on_load' attribute
bfbc7d6
@sirihansen sirihansen Add upgrade_SUITE to test upgrade of OTP release
This test creates an OTP package of the previous major release and
performs an upgrade to the current release.
c68f8f0
@sirihansen sirihansen Use $INSTALL_SCRIPT instead of $INSTALL_DATA for start[_erl].src
To make the result executable as is the case for erl.src.
00623ae
@sirihansen sirihansen Skip upgrade_SUITE when running cerl aeb2f71
@sirihansen sirihansen In upgrade_SUITE stop node with init:stop instead of test_server:stop…
…_node

This is only for nodes not started with test_server:start_node.
0256f0e
@sirihansen sirihansen Allow config to point out old releases in upgrade_SUITE
This suite was earlier only possible to run on linux hosts in the OTP
test lab. Now a ct config file can be used to point out the two last
major releases, e.g. like this:

{otp_releases,[{r16,"/path/to/r16/bin/erl"},
	       {'17',"/path/to/17/bin/erl"}]}.

Until OTP 17.0 is really released, the entry named '17' may well be
left out, causing the test case upgrade_SUITE:minor to be skipped.
41b4ec7
@sirihansen sirihansen Start all non-core applications as temporary in upgrade_SUITE d9ebb21
@tuncer tuncer Default enable silent rules
It's much easier to spot new warnings with silent rules enabled,
and I don't know of a good reason to keep it opt-in.
b4ce42f
@tuncer tuncer Use correct variable name for silent rule C++ compiler
Using CPP as the variable name for the C++ compiler makes no sense, as CPP
usually refers to the C/C++ preprocessor. That's why we have CXXFLAGS for C++
and CPPFLAGS for the C/C++ preprocessor.
8bc9868
@bjorng Merge branch 'ta/silent-rules/OTP-11746'
* ta/silent-rules/OTP-11746:
  Use correct variable name for silent rule C++ compiler
  Default enable silent rules
f56c221
@bjorng Merge branch 'bjorn/asn1/deprecations/OTP-11731'
* bjorn/asn1/deprecations/OTP-11731:
  Remove or de-emphasize references to the deprecated asn1rt module
  Deprecate asn1 functions
e70a2dc
@sirihansen sirihansen Include more applications in upgrade_SUITE
Many appup files are now corrected and the applications can be
included in the upgrade suite.
1ca1d9d
@sirihansen sirihansen Merge branch 'siri/upgrade_SUITE/OTP-11649'
* siri/upgrade_SUITE/OTP-11649:
  Include more applications in upgrade_SUITE
  Start all non-core applications as temporary in upgrade_SUITE
  Allow config to point out old releases in upgrade_SUITE
  In upgrade_SUITE stop node with init:stop instead of test_server:stop_node
  Skip upgrade_SUITE when running cerl
  Use $INSTALL_SCRIPT instead of $INSTALL_DATA for start[_erl].src
  Add upgrade_SUITE to test upgrade of OTP release
287a235
@sirihansen sirihansen Merge branch 'siri/master-cuddle-with-tests'
* siri/master-cuddle-with-tests:
  Use default timetrap (30 min) for kernel, stdlib and sasl app tests
  Unload 'deadlock' application in application_SUITE:shutdown_deadlock
e2896b5
@bjorng Eliminate warnings for deprecated funtions in test suites
Commit e5c71b7 deprecated several all functions in the asn1rt
module. As a result, calls to those functions from test suites
caused warnings, and as the warnings_as_errors option was active,
two test files failed to compile.
db3265f
@vinoski vinoski further enhancements for dirty schedulers
Add support for setting the number of dirty CPU schedulers online via
erlang:system_flag/2. Assuming the emulator is built with dirty schedulers
enabled, the number of dirty CPU schedulers online may not be less than 1,
nor greater than the number of dirty CPU schedulers available, nor greater
than the number of normal schedulers online. Dirty CPU scheduler threads
that are taken offline via system_flag/2 are suspended. The number of dirty
CPU schedulers online may be adjusted independently of the number of normal
schedulers online, but if system_flag/2 is used to set the number of normal
schedulers online to a value less than the current number of normal
schedulers online, the number of dirty CPU schedulers online is decreased
proportionally. Likewise, if the number of normal schedulers online is
increased, the number of dirty CPU schedulers online is increased
proportionally. For example, if 8 normal schedulers and 4 dirty CPU
schedulers are online, and system_flag/2 is called to set the number of
normal schedulers online to 4, the number of dirty CPU schedulers online is
also decreased by half, to 2. Subsequently setting the number of normal
schedulers online back to 8 also sets the number of dirty CPU schedulers
online back to 4. Augment the system_flag/2 documentation in the erlang man
page to explain this relationship between schedulers_online and
dirty_cpu_schedulers_online.

Also ensure that all dirty CPU and I/O schedulers are suspended when
multi-scheduling is blocked via system_flag/2, and brought back online when
multi-scheduling is unblocked.

Add Rickard Green's rewritten check_enqueue_in_prio_queue() function that
inspects process state more thoroughly to determine if to enqueue it and if
so on what queue, including dirty queues when appropriate.

Make sure dirty NIF jobs do not trigger erlang:system_monitor long_schedule
messages.

Add more dirty scheduler testing to the scheduler test suite.

Remove the erts_no_dirty_cpu_schedulers_online global variable, since it's
no longer needed.

Execute dirty NIFs on a normal scheduler thread while multi-scheduling
blocking is in effect. Evacuate any dirty jobs residing in the dirty run
queues over to a normal run queue when multi-scheduling is blocked.

Allow dirty schedulers to execute aux work.

Set the dirty run queues halt_in_progress flag when halting the normal
schedulers.

Change dirty scheduler numbers to a structure including both scheduler
number and type, either dirty CPU or dirty I/O. Add some assertions to
ensure that dirty CPU schedulers operate only on dirty CPU scheduler
process flags, and the same for dirty I/O schedulers.
3e8b423
@rickard-green rickard-green Merge branch 'vinoski/ds2'
* vinoski/ds2:
  further enhancements for dirty schedulers
  allow optional whitespace in dirty scheduler erl options
59c3f29
@bjorng Merge branch 'bjorn/asn1/deprecations/OTP-11731'
* bjorn/asn1/deprecations/OTP-11731:
  Eliminate warnings for deprecated funtions in test suites
15c4e79
@rickard-green rickard-green Merge branch 'rickard/assumed-cacheline-size/OTP-11742'
* rickard/assumed-cacheline-size/OTP-11742:
  Introduce configure option --with-assumed-cache-line-size=SIZE
ce61472
@psyeugenic psyeugenic Merge branch 'egil/maps/fix-cerl-inlining'
* egil/maps/fix-cerl-inlining:
  compiler: Update map_SUITE to handle inlining
  erts: Maps src instructions can't be literals
  compiler: Fix map inlining
  compiler: Add variable coverage of map in cerl
4acee7b
@rickard-green rickard-green Always default to disabled floating point exceptions on Linux
This since there exist unresolved stability issues in the implementation
for Linux.
c7ddafb
@rickard-green rickard-green Merge branch 'rickard/configure-defaults/OTP-11723'
* rickard/configure-defaults/OTP-11723:
  Always default to disabled floating point exceptions on Linux
093966d
@rickard-green rickard-green Merge branch 'rickard/erts_alloc_config/OTP-11662'
* rickard/erts_alloc_config/OTP-11662:
  Produce configs that better fit todays SMP VM
c38217f
@garazdawi garazdawi Added support for ENEA OSE
This port has support for both non-smp and smp.

It contains a new way to do io checking in which erts_poll_wait
receives the payload of the polled entity. This has implications
for all linked-in drivers.
200fbe9
@garazdawi garazdawi ose: Use the swfp when compiling for OSE
The hwfp has been tested as well and seem to work,
but most processors that OSE will run on does not have
a fpu.
67c5954
@garazdawi garazdawi ose: Add unsetenv and update to use get_env
Before get_envp was used and this caused the environment
variables to not be accessible in the correct way by
use debug tools.
8084f0f
@garazdawi garazdawi ose: Add signal debugging macros
To enable just uncomment and all signals going in or out will be
printed to stdout.
33f5280
Rasmuss Graaf ose: Adapt suite for OSE 06928bc
@garazdawi garazdawi erts: Make source file info available in lc 48201ab
@garazdawi garazdawi ose: Force atleast one async thread for ose
This is needed because a file has to be opened and operated on
in the same process at all times. Using async threads guarantee this.
c743ed3
@garazdawi garazdawi ose: Convert EFILE_SEEK to unistd seek for gzio
This is needed because OSE does not have the same integers
as unix/win32 for SEEK_ST and friends.
eed38c1
@garazdawi garazdawi ose: Debug wait__ does receive_fsem instead of wait_fsem
This is done in order to catch rogue signals
e6c7086
@garazdawi garazdawi ose: Extract signal numbers to common file 3a4bdad
Jonas Karlsson ose: lseek() to use SEEK_CUR
This is needed because OSE does not use 1 for SEEK_CUR
e2d4b77
@garazdawi garazdawi ose: Fix stdlib testcases f8cfcf3
@garazdawi garazdawi ose: Change start way to use arguments to beam.smp directly
The old way registered a shell command that needed to be executed. This
way is more flexible as you can also use the lmconf file to set arguments
there.
8ed59e4
@garazdawi garazdawi ose: Add module that allows interaction with any OSE process
The interface of this module is made to be as generic as possible
in order for other IPC mechanisms to mimic it and allow porting of
code between different os:es.
fa3dd14
@garazdawi garazdawi ose: Copied driver_int.h from unix 7e6cdce
@garazdawi garazdawi ose: Change get_envp to ose_get_ppdata for tsd
There is a system limit on the number of ppdata that is available
but that should not be reached, and ppdata is faster than using
get_envp.
5dc2c6b
@garazdawi garazdawi ose: Add link conf for gcc 4.4.3 51a07bb
@garazdawi garazdawi ose: Add eh_frame_hdr section to linker file 5009faf
@garazdawi garazdawi ose: Change signal base to registered range a3eba23
@garazdawi garazdawi erts: configure number of write_concurrency locks
Make it possible to change the number of write_concurrency locks to use. This
is usefull to change when you for some reason want to use more/less locks
per write_concurrency ets table. eg. OSs with a limit on how many mutexes
can exist at once.
d932131
@garazdawi garazdawi ose: Fix various build environment issues a6788ea
@garazdawi garazdawi ose: Style updates only fd3aa9d
@garazdawi garazdawi ose,erts: Specify name for tsd keys
This simplified debugging on OSE and also limits the number of ppdata
keys that are created when beam is restarted.
8103fed
@garazdawi garazdawi ose: Fix clearmake compat issue 53863fd
@garazdawi garazdawi ose: Handle lseek() with offset beyond EOF in the file driver. cbfff8e
Jonas Karlsson ose: Use spinlock as default heap lock mechanism 5352e80
Jonas Karlsson ose: Bugfixes to filesystem related issues. a0766a4
@garazdawi garazdawi ose: Fix printout to stdout to not duplicate long buffers 7d924d6
Jonas Karlsson ose: efile driver updates. 3d24208
Jonas Karlsson ose: OSE port related cleanup and fixes
Some OSE cross-chains have problems with system includes
being used, so for atleast OSE specific parts we use ""
instead of <>.
2145db9
Robert Paal ose: Add xcomp env variables to OSE xcomp
Use these to switch inbetween debug and non-debug emulators
and 4.4.3 and 4.6.3 versions of gcc.
6552935
@garazdawi garazdawi ose: Update erl_assert_error after R16B03 api change 8080aa6
@garazdawi garazdawi ose: Disable non-ose relevant apps 455f6ea
@garazdawi garazdawi ose: Fix starting with pm_create
For some reason starting with pm_create offsets the
input argument list by one, so we have to adjust them
before calling erl_start.
809ee10
@garazdawi garazdawi ose: Shutdown cleanly 6930aac
@garazdawi garazdawi ose: Rewrite resolve_signal API for ose drivers
This new API has less impact on the check_io code and
also removes the callback from ErlDrvEntry. The downside
is that you have to give the resolve function when creating
each event.

Also the mode if the resolve was removed as this mimics the
win32 code and decreases complexity.
c64851d
@garazdawi garazdawi ose: Fix check for HAVE_OSE_SPI_H b309ad9
@garazdawi garazdawi ose: Create OSE application
Create an specific OSE application that mainly contains documentation
around the OSE specific part of Erlang/OTP.
cd69c2a
@garazdawi garazdawi to_erl: Fix handshake ^R -> ^L code comments d6ead9a
@garazdawi garazdawi erts: Refactor common parts out of run_erl and to_erl
This is in preperation for writing ose version of run_erl and to_erl
aa80261
@garazdawi garazdawi ose: Port run_erl and to_erl 5c299e3
@garazdawi garazdawi ose: Refactor global variables to ppdata
This is needed because when starting multiple processes
from the same shell command they will see the same
global data if using status variables.
ae561e4
@garazdawi garazdawi ose: Add -block option to run_erl ose docs 31c4876
@garazdawi garazdawi ose: Add fair scheduling yields
This is needed on OSs that do not do round robin scheduling
of threads.
ff463a1
@garazdawi garazdawi ose: Update ddll interface after rebase to 17.0-rc1
Also deleted all the copy-paste stuff
e48c536
@garazdawi garazdawi ose: Skip building tests for skipped apps 734c74b
@garazdawi garazdawi ose: Remove receive in debug
Sometimes scheduler 1 should go in here and it will have signals,
so remove this. If needed later a check to see that fsem is used
for scheduler 1 is needed.
d3b2604
Robert Paal ose: Eliminating delays when trying to open files
When opening filers on not mounted volumes the default
timeout on OSE is quite big and since at startup we load
something like 20 beam files this slows down startup by
as much as 50 seconds.
b16f213
Robert Paal ose: Added Enea copyright header to lcf files.
Also removed softkernel lcf files.
15350e5
@garazdawi garazdawi ose: Cleanup POLL_SCHED_1 code
Now schedulers 2..N make sure to wake sched 1 if they
find that all io has been consumed and sched 1 is
sleeping. Before sched 1 was spinning in sys_schedule
waiting for sched 2..N to finish consuming io jobs
3b0eb33
@garazdawi garazdawi crypto: Add rand_seed function
This function is needed on OSs that do not automatically
initialize the PRNG seed.
d58602a
@garazdawi garazdawi ose: Fix support for crypto
To enable it you have to modify the OSESSL variable in the
ose xcomp file.
6c4ee83
@garazdawi garazdawi ose: Do not use spinlocks on OSE
This is because it is very easy to deadlock/livelock inbetween
processes on OSE.
c6d34b4
@garazdawi garazdawi ose: Start using ppdata for tse key 0f9fd47
@garazdawi garazdawi ose: Yielding the cpu is done "the OSE" way 2bf4f22
@garazdawi garazdawi ose: Thread priorities configurable from lmconf
The pattern used for getting the priority from the lmconf
is based on the name of the process created. The pattern is:

ERTS_%%PROCESS_NAME%%_PRIO

with the %%PROCESS_NAME%% replaced by the prefix of the process
the priority applies to. eg:

ERTS_SCHEDULER_PRIO=24

applies to processes with name SCHEDULER_1, SCHEDULER_2 etc.
a35d0f5
@garazdawi garazdawi ose: Fix broken doc links ff77d50
@garazdawi garazdawi erts: Fix sys_msg_dispatcher assert
Schedulers is too restrictive. Managed threads should be
able to clean this up.
2c20bdf
@garazdawi garazdawi ose: Fix ssl configure test for osx 7687e5b
@garazdawi garazdawi ose: Remove uneccesary define 04e8415
@garazdawi garazdawi win32: Compile erl_log.exe
erl_log is used together with debug emulator.
Use 'erl -debug -console' to get a denug console.
6d010bd
@garazdawi garazdawi ose: Cleanup of mutex selection defines ad9d36c
Jonas Karlsson ose: Updating event and signal API for OSE 4a6850e
Jonas Karlsson ose: Updating fd_driver and spawn_driver for OSE 06e55b6
@garazdawi garazdawi ose: Add ose specific x-compile flags 68053cc
@garazdawi garazdawi ose: Polish mmap configure checks f4a93ad
@garazdawi garazdawi ose: Cleanup cleanup of mutex selection defines 494d912
@garazdawi garazdawi ose: Add dummy ttsl driver 08910c5
@garazdawi garazdawi ose: Expand OSE docs 13ed577
@garazdawi garazdawi ose: Use -O2 when building b0c0057
@garazdawi garazdawi erts: Fix unix efile assert
If writev return an error (eg ENOSPC) we do not want to abort here
but instead propagate upwards into erlang.
81abbc4
@psyeugenic psyeugenic syntax_tools: Fix broken doc links for Maps b473dd9
@proxyles proxyles Merge branch 'josevalim/jv-eval-guards/OTP-11747'
* josevalim/jv-eval-guards/OTP-11747:
  Fix erl_eval bug when erlang:'=='/2 is used in guards
ca693a0
@proxyles proxyles Merge branch 'fenollp/otp-edoc-usage-fixes'
* fenollp/otp-edoc-usage-fixes:
  Fix edoc usage errors

OTP-11702
109a067
@proxyles proxyles Merge branch 'fenollp/yecc-bad-example-code/OTP-11749'
* fenollp/yecc-bad-example-code/OTP-11749:
  Replace fixed-length list-nodes by tuple-nodes
9fd8dfa
@proxyles proxyles Merge branch 'sgolovan/check_if_ftp_path_is_sane/OTP-11750'
* sgolovan/check_if_ftp_path_is_sane/OTP-11750:
  lib/inets/src/ftp/ftp.erl: Check the filenames, usernames, passwords etc.     for <CR> and <LF> in them and return error if these offending chars     are found. See http://erlang.org/pipermail/erlang-bugs/2014-January/003998.html     for details. lib/inets/test/ftp_suite_lib.erl: Added checks for <CR><LF> in file and directory     names.
6995e47
@proxyles proxyles Merge branch 'tuncer/update-deprecation-message/OTP-11751'
* tuncer/update-deprecation-message/OTP-11751:
  compiler: update 'asm' deprecation message
e4b6877
@proxyles proxyles Merge branch 'Vagabond/adt-faster-io_lib_pretty/OTP-11752'
* Vagabond/adt-faster-io_lib_pretty/OTP-11752:
  Use lists:keyfind in io_lib_pretty as it is faster
4203d5c
@proxyles proxyles Merge branch 'efine/eldap-IPv6-connections/OTP-11753'
* efine/eldap-IPv6-connections/OTP-11753:
  Add support for IPv6 connections
c09955d
@proxyles proxyles Merge branch 'byaruhaf/add-books/OTP-11754'
* byaruhaf/add-books/OTP-11754:
  Updated Copyright year and recent Erlang books
da3e915
@psyeugenic psyeugenic Merge branch 'egil/fix-syntax_tools-doc'
* egil/fix-syntax_tools-doc:
  syntax_tools: Fix broken doc links for Maps
4ce83eb
@bjorng gs: Eliminate a compiler warning
We don't want to introduce a potential incompatibility in a
deprecated application, so we will fix the warning by removing
the dead code that causes the warning.
da723e8
@garazdawi garazdawi Merge branch 'lukas/ose/master/OTP-11334'
* lukas/ose/master/OTP-11334: (71 commits)
  erts: Fix unix efile assert
  ose: Use -O2 when building
  ose: Expand OSE docs
  ose: Add dummy ttsl driver
  ose: Cleanup cleanup of mutex selection defines
  ose: Polish mmap configure checks
  ose: Add ose specific x-compile flags
  ose: Updating fd_driver and spawn_driver for OSE
  ose: Updating event and signal API for OSE
  ose: Cleanup of mutex selection defines
  win32: Compile erl_log.exe
  ose: Remove uneccesary define
  ose: Fix ssl configure test for osx
  erts: Fix sys_msg_dispatcher assert
  ose: Fix broken doc links
  ose: Thread priorities configurable from lmconf
  ose: Yielding the cpu is done "the OSE" way
  ose: Start using ppdata for tse key
  ose: Do not use spinlocks on OSE
  ose: Fix support for crypto
  ...

Conflicts:
	lib/crypto/c_src/crypto.c
a157ffc
@bjorng gs: Turn compiler warnings into errors ccc5b0a
@kostis kostis Add tests for the HiPE compiler (Part 1: binaries and bitstrings)
Create tests for the HiPE native code compiler. This is the first
part of the effort and contains tests that check that the native
code produced by the HiPE compiler for binaries and bitstrings is
OK and behaves similarly to the code produced by the BEAM compiler.
7dae40d
@bjorng Merge branch 'bjorn/gs/warnings'
* bjorn/gs/warnings:
  gs: Turn compiler warnings into errors
  gs: Eliminate a compiler warning
60b771c
@HansN HansN Merge branch 'hans/ssh/maint-r16/patch_1261' into maint-r16 450f0f8
@rickard-green rickard-green Update OTP version documentation 663709a
@HansN HansN Merge branch 'maint-r16' into maint 8acc644
@garazdawi garazdawi Merge branch 'lukas/erts/float_encoding/OTP-11738'
* lukas/erts/float_encoding/OTP-11738:
  erts: Set default external enc to use new float scheme
ed5cb31
@kostis kostis Add a Makefile for the HiPE tests a4a535e
@kostis kostis Add check so that tests are skipped if HiPE is not available 54cfcfd
@kostis kostis Up the time limit (globally) for some slow machines 9855233
@rickard-green rickard-green Merge branch 'rickard/otp_version/OTP-11615'
* rickard/otp_version/OTP-11615:
  Update OTP version documentation
b7eb7f0
Anders Svensson Be lenient with the M-bit in Grouped AVPs
RFC 6733 says this, in 4.4:

  Receivers of a Grouped AVP that does not have the 'M' (mandatory) bit
  set and one or more of the encapsulated AVPs within the group has the
  'M' (mandatory) bit set MAY simply be ignored if the Grouped AVP itself
  is unrecognized. The rule applies even if the encapsulated AVP with its
  'M' (mandatory) bit set is further encapsulated within other sub-groups,
  i.e., other Grouped AVPs embedded within the Grouped AVP.

The first sentence is mangled but take it to mean this:

  An unrecognized AVP of type Grouped that does not set the 'M' bit MAY
  be ignored even if one of its encapsulated AVPs sets the 'M' bit.

This is a bit of a non-statement since if the AVP is unrecognized then
its type is unknown. We therefore don't know that its data bytes contain
encapsulated AVPs, so can't but ignore any of those that set the M-bit.
Doing anything else when the type *is* known would be inconsistent.

OTP-11087 (commit 066544f) caused the M-bit on any unrecognized AVP to
be regarded as an error, unrecognized being taken to mean "not
explicitly defined as a member of its container". (That is, an AVP that
can't be packed into a dedicated record field, which is slightly
stronger than "not defined".) This fixed the original intention for
top-level AVPs but broke the required leniency for Grouped AVPs whose
type is known. This commit restores the leniency.

Note that dictionary files need to be recompiled for the commit to have
effect.

Thanks to Rory McKeown for reporting the problem.
bbdb027
@rickard-green rickard-green Updated OTP version to 17.0-rc2 6a88d5d
Anders Svensson Merge branch 'anders/diameter/grouped_decode/OTP-11675'
* anders/diameter/grouped_decode/OTP-11675:
  Be lenient with the M-bit in Grouped AVPs
f73aec5
@HansN HansN Merge branch 'maint' d4f81b8
Commits on Feb 25, 2014
Hans Bolinder Correct a contract in the igor module
Thanks Kostis.
21227c8
Hans Bolinder Merge branch 'hb/syntax_tools/correct_igor_contract'
* hb/syntax_tools/correct_igor_contract:
  Correct a contract in the igor module
7512dc0
@proxyles proxyles Merge branch 'kostis/hipe-tests-bs/OTP-11748'
* kostis/hipe-tests-bs/OTP-11748:
  Up the time limit (globally) for some slow machines
  Add check so that tests are skipped if HiPE is not available
  Add a Makefile for the HiPE tests
  Add tests for the HiPE compiler (Part 1: binaries and bitstrings)
f90751b
@IngelaAndin IngelaAndin ssl: Prepare for release 3f68a59
@IngelaAndin IngelaAndin Merge branch 'ia/ssl/prepare-for-release'
* ia/ssl/prepare-for-release:
  ssl: Prepare for release
98776a4
@sverker sverker erts: Fix heap overwrite by hipe "trap frames" when GC is disabled
by trapping BIFs like term_to_binary and binary_to_term.
eb53a3f
@sverker sverker Merge branch 'sverk/hipe-disable-gc-bug'
* sverk/hipe-disable-gc-bug:
  erts: Fix heap overwrite by hipe "trap frames" when GC is disabled
  ASSERT that GC is not tried with "need" when GC is disabled
b9440a0
@HansN HansN eldap: Prepare for release e2866e7
@HansN HansN inets: Prepare for release 3ff6480
@HansN HansN ssh: Prepare for release 5ba204b
@HansN HansN Merge branch 'rel-fixes' b73ad34
@HansN HansN eldap: Prepare for release 028db74
@HansN HansN Merge branch 'rel-fixes' 359f1ee
@IngelaAndin IngelaAndin ssl: Fix appup regexps and instructions b254363
@IngelaAndin IngelaAndin ssl: Fix compiler warnings 6303b6e
@IngelaAndin IngelaAndin Merge branch 'ia/ssl/fix-warnings'
* ia/ssl/fix-warnings:
  ssl: Fix compiler warnings
  ssl: Fix appup regexps and instructions
e19bf96
Commits on Feb 26, 2014
@HansN HansN ssh: Add appup file corrections 0e3d42a
@HansN HansN Merge branch 'rel-fixes' 2202a88
@bjorng Disable accidentally enabled floating point exceptions on MacOS X
In c7ddafb, which disabled floating point exceptions on Linux,
floating point exceptions were accidentally enabled on MacOS X.
f3646fe
@rickard-green rickard-green Let xcomp/README.md refer to HOWTO/INSTALL-CROSS.md 298753a
@rickard-green rickard-green Update preloaded and primary bootstrap 7d4bb87
@bjorng Merge branch 'bjorn/erts/fp-exceptions-on-osx'
* bjorn/erts/fp-exceptions-on-osx:
  Disable accidentally enabled floating point exceptions on MacOS X
82c3ac6
@rickard-green rickard-green Merge branch 'rickard/xcomp-readme'
* rickard/xcomp-readme:
  Let xcomp/README.md refer to HOWTO/INSTALL-CROSS.md
a74e66a
Commits on Feb 27, 2014
@psyeugenic psyeugenic erts: Fix Map cmp exact equal of an empty map
The expression,

  #{} =:= M

where M was any Map, would always result in 'true'.

This commit fixes this issue by first comparing sizes for
both terms and then checking for size zero.
615e41b
Commits on Feb 28, 2014
@bjorng hipe: Break apart hipe_bif:make_fe/3 into two BIFs
This commit is a preparation for eliminating a race condition
loading the native code for modules whose BEAM code has already
been loaded. Here we introduce two new BIFs so that looking up
a fun entry is separate from setting the native address in the
fun entry.
81c7db0
@bjorng Delay patching of closures to eliminate a race condition
The loader of native code tries to avoid race condition by bringing
down the system to a single scheduler. Unfortunately, that will not
completely avoid race conditions beacuse other processes may still
run while the code is being loaded. Therefore, we must still make
sure that native code has been fully fixed up before it can be
executed.

Under unlucky circumstances, it was possible for the global name
register process to call a fun in native code before the native
code for the fun had been fully fixed up. The run-time system
would crash when running the not-fully-fixed-up code.

Here is a way to make the bug 100% reproducible. First add this
function to the 'global' module:

silly_looper(List) ->
    lists:foreach(fun(E) -> put(any_atom, E) end, List),
    silly_looper(List).

Then insert the following code at the beginning of the init/1
function in the 'global' module:

    spawn_link(fun() -> silly_looper(lists:seq(1, 100)) end),

The run-time system will crash during start up when the native
code for the 'global' module is being loaded. What will happen
is that lists:foreach/2 (which runs in native code) will call
the native code for the fun in silly_looper/1 before the reference
to 'any_atom' has been changed from a 0 to the proper tagged
atom value. The put/2 BIF will exit when attempting to calculate
the hash value for the illegal value 0 (it is not properly tagged).

To eliminate this race condition, we must delay patching the
native code addresses for a fun into the fun entry until the native
code has been fully fixed up. We will use the new BIFs introduced
in the previous commit.

While we are at it, we will also make sure that we erase any
temporary variables in the process dictionary used by the
hipe_unified_loader module.
63a6530
@psyeugenic psyeugenic compiler: Fix error message printout on compile error
Use correct stack in printout.
25cbccc
Commits on Mar 01, 2014
@nox nox Fix expansion of map update arguments
Reported-by: José Valim
974de0f
@nox nox Do not emit blatantly illformed Core Erlang apply expressions
(fun f/1)() should be compiled to let X = 'f'/1 in apply X () to let the compiler
properly generate code that will fail with badarity at runtime.

Reported-by: Ulf Norell
1b8ad68
Commits on Mar 02, 2014
@nox nox Do not mark all calls to erlang:is_record/3 as safe
Calls to erlang:is_record/3 where the second and third arguments are not
respectively a literal atom and a literal integer can't be transformed to guards
and thus are not safe.

Reported-by: Ulf Norell
0b016da
Commits on Mar 03, 2014
Hans Bolinder Fix a qlc bug where filters were erroneously optimized away
Thanks to Sam Bobroff for reporting the bug.
28d4b0c
@psyeugenic psyeugenic Merge branch 'egil/fix-compiler-error-msg'
* egil/fix-compiler-error-msg:
  compiler: Fix error message printout on compile error
cd191db
@psyeugenic psyeugenic Merge branch 'egil/fix-maps-eq'
* egil/fix-maps-eq:
  erts: Fix Map cmp exact equal of an empty map
69dbcf7
@IngelaAndin IngelaAndin ssl: Improved documentation of the cacertfile option cc371d0
@IngelaAndin IngelaAndin Merge branch 'ia/ssl/doc-imp/OTP-11759'
* ia/ssl/doc-imp/OTP-11759:
  ssl: Improved documentation of the cacertfile option
cbf9cc2
@nox nox Properly collect labels in put_map instructions in beam_bool
Reported-by: Ulf Norell
5436de7
Commits on Mar 04, 2014
@IngelaAndin IngelaAndin ssl: Add input sanity check
Avoid puzzling behavior due to options being disregarded if they
are not key value tuples.
9358afe
@IngelaAndin IngelaAndin Merge branch 'ia/ssl/proplist-input-check/OTP-11760'
* ia/ssl/proplist-input-check/OTP-11760:
  ssl: Add input sanity check
4778242
Hans Bolinder Merge branch 'hb/stdlib/qlc_fix/OTP-11758'
* hb/stdlib/qlc_fix/OTP-11758:
  Fix a qlc bug where filters were erroneously optimized away
b5f6094
@bjorng Merge branch 'bjorn/hipe/fix-race-condition'
* bjorn/hipe/fix-race-condition:
  Delay patching of closures to eliminate a race condition
  hipe: Break apart hipe_bif:make_fe/3 into two BIFs
6ddc347
@bjorng Merge branch 'nox/compiler/sys_core_fold-erlang-is_record-3'
* nox/compiler/sys_core_fold-erlang-is_record-3:
  Do not mark all calls to erlang:is_record/3 as safe
54a5b03
@bjorng Merge branch 'nox/compiler/v3_core-mismatched-apply'
* nox/compiler/v3_core-mismatched-apply:
  Do not emit blatantly illformed Core Erlang apply expressions
77b1aea
@psyeugenic psyeugenic Merge branch 'nox/maps-expand-update'
* nox/maps-expand-update:
  Fix expansion of map update arguments
2e5457c
@psyeugenic psyeugenic Merge branch 'nox/maps-fix-beam_bool-put_map'
* nox/maps-fix-beam_bool-put_map:
  Properly collect labels in put_map instructions in beam_bool
2fbbc2f
@bjorng Update primary bootstrap 59a2db3