mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 07:14:30 +02:00
8223347: Integration of Vector API (Incubator)
Co-authored-by: Vivek Deshpande <vdeshpande@openjdk.org> Co-authored-by: Qi Feng <qfeng@openjdk.org> Co-authored-by: Ian Graves <igraves@openjdk.org> Co-authored-by: Jean-Philippe Halimi <jphalimi@openjdk.org> Co-authored-by: Vladimir Ivanov <vlivanov@openjdk.org> Co-authored-by: Ningsheng Jian <njian@openjdk.org> Co-authored-by: Razvan Lupusoru <rlupusoru@openjdk.org> Co-authored-by: Smita Kamath <svkamath@openjdk.org> Co-authored-by: Rahul Kandu <rkandu@openjdk.org> Co-authored-by: Kishor Kharbas <kkharbas@openjdk.org> Co-authored-by: Eric Liu <Eric.Liu2@arm.com> Co-authored-by: Aaloan Miftah <someusername3@gmail.com> Co-authored-by: John R Rose <jrose@openjdk.org> Co-authored-by: Shravya Rukmannagari <srukmannagar@openjdk.org> Co-authored-by: Paul Sandoz <psandoz@openjdk.org> Co-authored-by: Sandhya Viswanathan <sviswanathan@openjdk.org> Co-authored-by: Lauren Walkowski <lauren.walkowski@arm.com> Co-authored-by: Yang Zang <Yang.Zhang@arm.com> Co-authored-by: Joshua Zhu <jzhu@openjdk.org> Co-authored-by: Wang Zhuo <wzhuo@openjdk.org> Co-authored-by: Jatin Bhateja <jbhateja@openjdk.org> Reviewed-by: erikj, chegar, kvn, darcy, forax, briangoetz, aph, epavlova, coleenp
This commit is contained in:
parent
386e7e8b73
commit
0c99b19258
336 changed files with 293978 additions and 2083 deletions
|
@ -237,6 +237,9 @@ inline size_t heap_word_size(size_t byte_size) {
|
|||
return (byte_size + (HeapWordSize-1)) >> LogHeapWordSize;
|
||||
}
|
||||
|
||||
inline jfloat jfloat_cast(jint x);
|
||||
inline jdouble jdouble_cast(jlong x);
|
||||
|
||||
//-------------------------------------------
|
||||
// Constant for jlong (standardized by C++11)
|
||||
|
||||
|
@ -247,6 +250,13 @@ inline size_t heap_word_size(size_t byte_size) {
|
|||
const jlong min_jlong = CONST64(0x8000000000000000);
|
||||
const jlong max_jlong = CONST64(0x7fffffffffffffff);
|
||||
|
||||
//-------------------------------------------
|
||||
// Constant for jdouble
|
||||
const jlong min_jlongDouble = CONST64(0x0000000000000001);
|
||||
const jdouble min_jdouble = jdouble_cast(min_jlongDouble);
|
||||
const jlong max_jlongDouble = CONST64(0x7fefffffffffffff);
|
||||
const jdouble max_jdouble = jdouble_cast(max_jlongDouble);
|
||||
|
||||
const size_t K = 1024;
|
||||
const size_t M = K*K;
|
||||
const size_t G = M*K;
|
||||
|
@ -469,6 +479,11 @@ const jshort max_jshort = (1 << 15) - 1; // largest jshort
|
|||
const jint min_jint = (jint)1 << (sizeof(jint)*BitsPerByte-1); // 0x80000000 == smallest jint
|
||||
const jint max_jint = (juint)min_jint - 1; // 0x7FFFFFFF == largest jint
|
||||
|
||||
const jint min_jintFloat = (jint)(0x00000001);
|
||||
const jfloat min_jfloat = jfloat_cast(min_jintFloat);
|
||||
const jint max_jintFloat = (jint)(0x7f7fffff);
|
||||
const jfloat max_jfloat = jfloat_cast(max_jintFloat);
|
||||
|
||||
//----------------------------------------------------------------------------------------------------
|
||||
// JVM spec restrictions
|
||||
|
||||
|
@ -673,6 +688,14 @@ inline bool is_reference_type(BasicType t) {
|
|||
return (t == T_OBJECT || t == T_ARRAY);
|
||||
}
|
||||
|
||||
inline bool is_integral_type(BasicType t) {
|
||||
return is_subword_type(t) || t == T_INT || t == T_LONG;
|
||||
}
|
||||
|
||||
inline bool is_floating_point_type(BasicType t) {
|
||||
return (t == T_FLOAT || t == T_DOUBLE);
|
||||
}
|
||||
|
||||
extern char type2char_tab[T_CONFLICT+1]; // Map a BasicType to a jchar
|
||||
inline char type2char(BasicType t) { return (uint)t < T_CONFLICT+1 ? type2char_tab[t] : 0; }
|
||||
extern int type2size[T_CONFLICT+1]; // Map BasicType to result stack elements
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue