comparison src/cpu/x86/vm/jniTypes_x86.hpp @ 5747:120820e30baa

added basic high-level interpreter support to HotSpot
author Christian Haeubl <haeubl@ssw.jku.at>
date Tue, 03 Jul 2012 16:56:40 +0200
parents f95d63e2154a
children 79a7b761755c
comparison
equal deleted inserted replaced
5746:17d2c3b72762 5747:120820e30baa
125 static inline jint get_int (intptr_t *from) { return *(jint *) from; } 125 static inline jint get_int (intptr_t *from) { return *(jint *) from; }
126 static inline jlong get_long (intptr_t *from) { return *(jlong *) (from + _JNI_SLOT_OFFSET); } 126 static inline jlong get_long (intptr_t *from) { return *(jlong *) (from + _JNI_SLOT_OFFSET); }
127 static inline oop get_obj (intptr_t *from) { return *(oop *) from; } 127 static inline oop get_obj (intptr_t *from) { return *(oop *) from; }
128 static inline jfloat get_float (intptr_t *from) { return *(jfloat *) from; } 128 static inline jfloat get_float (intptr_t *from) { return *(jfloat *) from; }
129 static inline jdouble get_double(intptr_t *from) { return *(jdouble *)(from + _JNI_SLOT_OFFSET); } 129 static inline jdouble get_double(intptr_t *from) { return *(jdouble *)(from + _JNI_SLOT_OFFSET); }
130
131 static inline jint get_int (intptr_t *from, int& pos) { return get_int(from + pos++); }
132 static inline jlong get_long (intptr_t *from, int& pos) { return get_long(from + pos); pos += 2; }
133 static inline oop get_obj (intptr_t *from, int& pos) { return get_obj(from + pos++); }
134 static inline jfloat get_float (intptr_t *from, int& pos) { return get_float(from + pos++); }
135 static inline jdouble get_double(intptr_t *from, int& pos) { return get_double(from + pos); pos += 2; }
130 #undef _JNI_SLOT_OFFSET 136 #undef _JNI_SLOT_OFFSET
131 }; 137 };
132 138
133 #endif // CPU_X86_VM_JNITYPES_X86_HPP 139 #endif // CPU_X86_VM_JNITYPES_X86_HPP