Support the LLVM backend in HiPE

Add flags to enable and use the LLVM backend:
  * to_llvm: use the LLVM pipeline for compilation (default optimization level
  is O3),
  * llvm_save_temps: save the intermediate files in current directory in order
  to be able to debug or optimize the LLVM assembly,
  * {to_llvm, O}: set the optimization level of LLVM opt and llc tools.

Add some debug support to the loader; no semantic change intented.
Properly detect reused boolean values in beam_bool

The following code could crash the compiler:

	f(X = true) when X or true or X -> ok.

Reported-by: Ulf Norell
Remove a superfluous echo in the emulator Makefile

It pollutes the output of silent rules.
inets: Fix incorrect argument order

Wrong order of arguments in httpc_handler:update_session/4 error
handling code  should not result in bad_argument error making
stack trace unusable.
Use closefrom(2) when available in child_setup
Support identity transfer-encoding in httpc

> The default (identity) encoding; the use of no transformation whatsoever.

> The Internet Assigned Numbers Authority (IANA) acts as a registry for
> transfer-coding value tokens. Initially, the registry contains the
> following tokens: "chunked" (section 3.6.1), "identity" (section 3.6.2),
> "gzip" (section 3.5), "compress" (section 3.5), and "deflate" (section 3.5).

Reported-by: Andrew Houghton
Properly handle redundant boolean clauses in sys_core_fold

Boolean case expressions with redundant clauses could make the compiler
crash:

    case X == 0 of
        false -> no;
        false -> no;
        true -> yes
    end.

Reported-by: Ulf Norell
remove reference to dbg_wx_edit* modules that don't exist
enable enif_send to work from a dirty scheduler
erl_interface: Fix mem leak in ei_decode_encode_test
erl_interface: Add map support in ei_skip_term
erl_interface: Add test for ei_skip_term of container terms
Correct file:set_cwd/1 typespec

file:set_cwd/1 accepts binaries as arguments, however the binaries
must be properly encoded as per file:native_name_encoding/0.

Also update the note under no_translation error to refer that passing
a ISO-latin-1 encoded binary under any unicode file name encoding.
erts: Document external format for maps (MAP_EXT)
Replace local mapl/2 (Erlang < 5.0) unique call by a LC
erts: Clarify escript's encoding of the I/O-server

A note has been added that clarifies that the encoding of
the I/O-server has to be set explicitly, irrespective of
any encoding comment.
Merge branch 'nox/compiler/v3_core-mismatched-apply'

* nox/compiler/v3_core-mismatched-apply:
  Do not emit blatantly illformed apply expressions in core_inline
Update primary bootstrap
test_server: Allow init_per_ function to throw skip

Allow all init_per_[suite|group|testcase] to throw (or exit)
{skip, Reason} to explicitly ignore tests without failing.

It is easier to catch it in one place instead of writing a try
in each init_per_* to return {skip, Reason}.
cerl_inline: Fix type error

b08ffc15e1d9ad105dd6385bbac41c97c09b48bc corrected a bug,
but violated the types by passing a c_apply() when a
c_let() was expected. That happened to work, but Dialyzer
was not amused.