From a9a8254c920ce8e22210abfc16c9842ce0aea28f Mon Sep 17 00:00:00 2001 From: Ian Rogers Date: Fri, 4 Oct 2013 11:17:26 -0700 Subject: Improve quick codegen for aput-object. 1) don't type check known null. 2) if we know types in verify don't check at runtime. 3) if we're runtime checking then move all the code out-of-line. Also, don't set up a callee-save frame for check-cast, do an instance-of test then throw an exception if that fails. Tidy quick entry point of Ldivmod to Lmod which it is on x86 and mips. Fix monitor-enter/exit NPE for MIPS. Fix benign bug in mirror::Class::CannotBeAssignedFromOtherTypes, a byte[] cannot be assigned to from other types. Change-Id: I9cb3859ec70cca71ed79331ec8df5bec969d6745 --- runtime/asm_support.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'runtime/asm_support.h') diff --git a/runtime/asm_support.h b/runtime/asm_support.h index d2eaf8e..a6700bc 100644 --- a/runtime/asm_support.h +++ b/runtime/asm_support.h @@ -22,8 +22,16 @@ #define SUSPEND_CHECK_INTERVAL (1000) // Offsets within java.lang.Object. +#define CLASS_OFFSET 0 #define LOCK_WORD_OFFSET 4 +// Offsets within java.lang.Class. +#define CLASS_COMPONENT_TYPE_OFFSET 12 + +// Array offsets. +#define ARRAY_LENGTH_OFFSET 8 +#define OBJECT_ARRAY_DATA_OFFSET 12 + // Offsets within java.lang.String. #define STRING_VALUE_OFFSET 8 #define STRING_COUNT_OFFSET 12 -- cgit v1.1