Fix byte_cas to work on non-word aligned addresses

(cherry picked from commit 1279d12eb94b7664fc839d4ef7f30c7d6b20e603)

Change-Id: I307f65f20609bca8ec9c9f9a0ea4725c7ab8ad74
Fix SEGV when dumping MIR CFG

I turned on kDebugDumpCFG to try to dump the CFGs, and I found
that they caused a segmentation violation.  The problem was that
the orig_sreg was -1, and IsConst then blew up.

Change-Id: Ib9acda0b11ce486e878ef2ccfae3b1bc1f82fdfb
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
Port "Retry mount() if it fails with EINTR" to ART

Porting https://android-review.googlesource.com/#/c/72742

Change-Id: I13ba58f2d3589ea61d1df3cd06023268151ce864
Use dmb.

We don't support ARM processors that don't have dmb anyway.

Change-Id: I41b15a1592febcc0b33d93c291431d00692a2928
Cleanup thread pool tasks creation.

Removes unused vector when adding new ForAllClosure tasks to the thread pool.

Change-Id: Ie0c8067bc5cbfac45db04a6242bc98f89c3efc8d
Remove unused method in DEX-to-DEX.

Change-Id: Ice5f91b45a0ad85576475a613193f143fd76ad9f
Fix NewLocalRef, NewGlobalRef to handle cleared weak globals.

We were not checking for null after decoding the reference, this
meant that we incorrectly created null weak global references instead
of returning null.

Issue: 63929
Change-Id: I9159682e6edad8f415ef8144fc13b9aedd2cceb4
Change IndirectReferenceTable::Add null DCHECK to CHECK.

Change-Id: I7d3582bd5ef75c7fef6a94c0e4f1fea38fc8b526
Don't prefix GC map by length.

Bug: 11767815
Change-Id: I063917aefdf7674ee1a77736db059c9ee95ea075
Fix build (lint: explicit ctor).

Change-Id: Ic28c43d39dc85adce013fd795590af1050c333c9
Manually manage thread pool stacks.

We now allocate the thread pool worker stack using a MemMap. This
enables us to name the maps so that we get more descriptive output
for debugging leaks.

Appears to fix the mips build 5/5 successful clean-oat and builds.
This is probably since glibc caches up to 40 MB of thread stacks
before releasing them.

Change-Id: I1df2de50cb95838aa0d272a09807021404ba410c