Fix thread priorities for unstarted threads.

Calls to Thread.setPriority for unstarted threads now behave
similar to dalvik. Note that there's still some inconsistent
behaviour carried over from dalvik.

- high priority threads from bg_non_interactive processes are
  not always moved to the SP_FOREGROUND cgroup.
- we do not attempt to adjust the cgroup of a native thread
  that's attaching.

Note that on android, the system_server will change the
cgroups for all running threads in a process when it moves
into the foreground and background. It's by design that
threads in a background process can request to be moved
to the foreground by setting a higher priority.

bug: 17893086

Change-Id: I1662982b1c7b3ac509698e2e12c9768d082c8053
ART Extension

Vendor extension hooks.

Change-Id: I2b33c2294415bc909084be5a33ddedd91826559a
ART: minor bugfix

1. reset reference counters during initialization
2. check element existence when removing from GrowableArray

Change-Id: I3a48da94346ecd407febb91ffe61a0ca7da9e8f2
more ART Extension

Vendor extension hooks.

Change-Id: I9f03153bba698e82d1a1e992baf2bc1c48a5d059
art: Update QC-PERF board flag to TARGET_HAVE_QC_PERF

 * Some targets will set QCOM_HARDWARE but won't have these libs.

Change-Id: I84292c190c120b646f5017d4801e7893fed902ff
Merge remote-tracking branch 'boost/lollipop' into cm-12.0