Avoid sign extension in packed-switch.

This code (at least in the ARM version) is trying to assign to r0 and r1
from C by returning a 64-bit result. The mistaken use of signed integers
for pointers can lead to sign extension if the JIT code cache is at a
sufficiently high address.

Bug: 6799823
Bug: 6703991

(cherry picked from commit 2d0c1c2dbe44458ebb199c47ce1047f266db5349)

Conflicts:

	vm/compiler/codegen/mips/CalloutHelper.h
	vm/compiler/codegen/mips/CodegenDriver.cpp

Change-Id: Id4699fdd0b3d61abe9c92874832b8561df4fa797
merge in jb-mr0-release history after reset to jb-dev
MIPS: Missing zero-checks in JIT compiler.

Zero-checks were not generated by the JIT compiler for
some instructions. This caused crashes instead of
the expected ArithmeticException.

Change-Id: Ie79e62b9a8739db8725afa4d447f2450ae38f175
Signed-off-by: Douglas Leung <douglas@mips.com>
Merge android-4.1.2_r1
[MIPS] Fix DDMS(profiling) bug.

Signed-off-by: Douglas Leung <douglas@mips.com>

(cherry picked from commit 58ae41925066a77b5b00be8997738b50284fa6fb)

Change-Id: Ic765a9254929025ba33d5d78c2ebb381269a6c5d
[MIPS] Fixing FP registers fs0 and fs1 corruption bug.

For performance reasons, we don't want to use "callee saved" FP registers.
The fix is to just use temporary FP registers instead.

Signed-off-by: Douglas Leung <douglas@mips.com>
(cherry picked from commit bd5317a71b13328550968f5cc01ebdd1060299d4)

Change-Id: Ib4c5a5779a4f5e8165b50ccf4a756f92c0bc8e83
rTEMP gets clobbered in the JALR macro. Use t9 instead.

Change-Id: I0ac806c9ad73acf766a8b233997da33b794365be