Add protection for the root window on Cocoa (MacOS X)
Merge branch 'v5-34-00-patches' of https://root.cern.ch/git/root into v5-34-00-patches
Cintex: add support for hard-coded ARMv7 trampolines

Add ARMv7 ARM mode hard-coded trampolines for Cintex.

Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
configure: Enable Cintex on ARMv7 (linuxarm)

Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Add support for ARMv8 64-bit (AArch64), linuxarm64

Add support for AArch64 architecture. Introduces new ROOT build
target -- linuxarm64. CINT is functional, but genreflex is not
capable of generating Reflex dictionaries on AArch64 due to old
version of GCC used in GCCXML. Data model -- LP64 -- used by
x86_64 and aarch64 allows pre-generating Reflex dictionaries on
x86_64. This works if software stack is kept the same (e.g,
libstdc++).

Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Tested-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Allocate_1arg_function: fix incorrect offset

Resolve long-standing bug where incorrect offset is being used in
Allocate_1arg_function for method address.

Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Merge ARMv7 32-bit and ARMv8 64-bit (AArch64) support, by David Abdurachmanov!
Terrible as it is: we do not have tmva tutorials.
Make the int literal unsigned (fix warning).
As suggested by David A: use ulong for consistency.
Remove parentheses from destructor call to fix problem with clang 3.5

The clang 3.5 compiler needs a slightly different syntax when calling
the destructor. It does not allow a set of parentheses between the
name of the destructor and the parentheses which cause the call.
Protect global list of functions from concurrent access

The list returned from TROOT::GetListOfFunctions needs to be protected
from concurrent access to allow use of TFormulas on different
threads.
Protect global list of TFormulaPrimitives
Thread safety fixes for TCint

-use thread_local for statics which are being used as return values
-use C++11 initializers to allow static containers to be const
-add lock to protect fgSetOfSpecials
Make function static return values thread_safe

Funciton level statics which are being used as return values from
the function are changed to thread_local. This is needed to avoid
multiple threads changing the values while they are being used.
Added missing locks when calling gCint

Added calls to the gCINTMutex lock when calling gCint methods. These
are needed to avoid problems while concurrently using TFormula.
Make TClass::fIsAMethod setting thread safe

Caching and initialization of TClass::fIsAMethod have been changed
to make them thread safe and for calls to the TMethodCall can happen
concurrently.
Call TROOT::GetGlobalFunction instead of GetListOfGlobalFunctions

Since the global function list needs to be locked to be thread safe,
the simplest way of avoiding having to take the locks outside of
TROOT is to call GetGlobalFunction instead.
Lock access to gROOT->fGlobalFunctions

The list of global functions must be protected from simultaneous
writes/reads.
white spaces