8304828: Lots of constant static data not declared static const in cpu/x86

Reviewed-by: dholmes, kvn
This commit is contained in:
Justin King 2023-03-27 14:03:04 +00:00
parent 0712adc2dd
commit 20830883df
27 changed files with 166 additions and 166 deletions

View File

@ -49,7 +49,7 @@
// Implementation of AddressLiteral
// A 2-D table for managing compressed displacement(disp8) on EVEX enabled platforms.
unsigned char tuple_table[Assembler::EVEX_ETUP + 1][Assembler::AVX_512bit + 1] = {
static const unsigned char tuple_table[Assembler::EVEX_ETUP + 1][Assembler::AVX_512bit + 1] = {
// -----------------Table 4.5 -------------------- //
16, 32, 64, // EVEX_FV(0)
4, 4, 4, // EVEX_FV(1) - with Evex.b

View File

@ -2183,7 +2183,7 @@ void C2_MacroAssembler::reduceFloatMinMax(int opcode, int vlen, bool is_dst_vali
XMMRegister dst, XMMRegister src,
XMMRegister tmp, XMMRegister atmp, XMMRegister btmp,
XMMRegister xmm_0, XMMRegister xmm_1) {
int permconst[] = {1, 14};
const int permconst[] = {1, 14};
XMMRegister wsrc = src;
XMMRegister wdst = xmm_0;
XMMRegister wtmp = (xmm_1 == xnoreg) ? xmm_0: xmm_1;
@ -3285,9 +3285,9 @@ void C2_MacroAssembler::arrays_hashcode(Register ary1, Register cnt1, Register r
}
// For "renaming" for readibility of the code
XMMRegister vcoef[] = { vcoef0, vcoef1, vcoef2, vcoef3 },
vresult[] = { vresult0, vresult1, vresult2, vresult3 },
vtmp[] = { vtmp0, vtmp1, vtmp2, vtmp3 };
const XMMRegister vcoef[] = { vcoef0, vcoef1, vcoef2, vcoef3 },
vresult[] = { vresult0, vresult1, vresult2, vresult3 },
vtmp[] = { vtmp0, vtmp1, vtmp2, vtmp3 };
const int elsize = arrays_hashcode_elsize(eltype);

View File

@ -68,7 +68,7 @@
bool AbstractAssembler::pd_check_instruction_mark() { return true; }
#endif
static Assembler::Condition reverse[] = {
static const Assembler::Condition reverse[] = {
Assembler::noOverflow /* overflow = 0x0 */ ,
Assembler::overflow /* noOverflow = 0x1 */ ,
Assembler::aboveEqual /* carrySet = 0x2, below = 0x2 */ ,
@ -9195,7 +9195,7 @@ void MacroAssembler::fill64_masked(uint shift, Register dst, int disp,
XMMRegister xmm, KRegister mask, Register length,
Register temp, bool use64byteVector) {
assert(MaxVectorSize >= 32, "vector length should be >= 32");
BasicType type[] = { T_BYTE, T_SHORT, T_INT, T_LONG};
const BasicType type[] = { T_BYTE, T_SHORT, T_INT, T_LONG};
if (!use64byteVector) {
fill32(dst, disp, xmm);
subptr(length, 32 >> shift);
@ -9211,7 +9211,7 @@ void MacroAssembler::fill32_masked(uint shift, Register dst, int disp,
XMMRegister xmm, KRegister mask, Register length,
Register temp) {
assert(MaxVectorSize >= 32, "vector length should be >= 32");
BasicType type[] = { T_BYTE, T_SHORT, T_INT, T_LONG};
const BasicType type[] = { T_BYTE, T_SHORT, T_INT, T_LONG};
fill_masked(type[shift], Address(dst, disp), xmm, mask, length, temp, Assembler::AVX_256bit);
}

View File

@ -25,29 +25,29 @@
#include "precompiled.hpp"
#include "macroAssembler_x86.hpp"
ATTRIBUTE_ALIGNED(16) juint _ONES[] = {
ATTRIBUTE_ALIGNED(16) static const juint _ONES[] = {
0x00000000UL, 0x3ff00000UL, 0x00000000UL, 0xbff00000UL
};
address MacroAssembler::ONES = (address)_ONES;
ATTRIBUTE_ALIGNED(16) juint _PI4_INV[] = {
ATTRIBUTE_ALIGNED(16) static const juint _PI4_INV[] = {
0x6dc9c883UL, 0x3ff45f30UL
};
address MacroAssembler::PI4_INV = (address)_PI4_INV;
ATTRIBUTE_ALIGNED(16) juint _PI4X3[] = {
ATTRIBUTE_ALIGNED(16) static const juint _PI4X3[] = {
0x54443000UL, 0xbfe921fbUL, 0x3b39a000UL, 0x3d373dcbUL, 0xe0e68948UL,
0xba845c06UL
};
address MacroAssembler::PI4X3 = (address)_PI4X3;
ATTRIBUTE_ALIGNED(16) juint _PI4X4[] = {
ATTRIBUTE_ALIGNED(16) static const juint _PI4X4[] = {
0x54400000UL, 0xbfe921fbUL, 0x1a600000UL, 0xbdc0b461UL, 0x2e000000UL,
0xbb93198aUL, 0x252049c1UL, 0xb96b839aUL
};
address MacroAssembler::PI4X4 = (address)_PI4X4;
ATTRIBUTE_ALIGNED(16) juint _L_2IL0FLOATPACKET_0[] = {
ATTRIBUTE_ALIGNED(16) static const juint _L_2IL0FLOATPACKET_0[] = {
0xffffffffUL, 0x7fffffffUL, 0x00000000UL, 0x00000000UL
};
address MacroAssembler::L_2IL0FLOATPACKET_0 = (address)_L_2IL0FLOATPACKET_0;

View File

@ -176,7 +176,7 @@
// The 32 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(16) juint _static_const_table_cos[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table_cos[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
0x00000000UL, 0x00000000UL, 0x3ff00000UL, 0x176d6d31UL, 0xbf73b92eUL,

View File

@ -68,7 +68,7 @@
// The 32 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(16) juint _static_const_table[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table[] =
{
0x00000000UL, 0xfff00000UL, 0x00000000UL, 0xfff00000UL, 0xffffffc0UL,
0x00000000UL, 0xffffffc0UL, 0x00000000UL, 0x0000ffc0UL, 0x00000000UL,

View File

@ -58,7 +58,7 @@
// The 32 bit code is at most SSE2 compliant
//
ATTRIBUTE_ALIGNED(16) juint _static_const_table_log[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table_log[] =
{
0xfefa3800UL, 0x3fe62e42UL, 0x93c76730UL, 0x3d2ef357UL, 0xaa241800UL,
0x3fe5ee82UL, 0x0cda46beUL, 0x3d220238UL, 0x5c364800UL, 0x3fe5af40UL,

View File

@ -58,7 +58,7 @@
// The 32 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(16) juint _static_const_table_log10[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table_log10[] =
{
0x509f7800UL, 0x3fd34413UL, 0x1f12b358UL, 0x3d1fef31UL, 0x80333400UL,
0x3fd32418UL, 0xc671d9d0UL, 0xbcf542bfUL, 0x51195000UL, 0x3fd30442UL,

View File

@ -85,7 +85,7 @@
/******************************************************************************/
// The 32 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(16) juint _static_const_table_pow[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table_pow[] =
{
0x00000000UL, 0xbfd61a00UL, 0x00000000UL, 0xbf5dabe1UL, 0xf8000000UL,
0xffffffffUL, 0x00000000UL, 0xfffff800UL, 0x00000000UL, 0x3ff00000UL,
@ -719,9 +719,9 @@ ATTRIBUTE_ALIGNED(16) juint _static_const_table_pow[] =
};
ATTRIBUTE_ALIGNED(8) double _DOUBLE2 = 2.0;
ATTRIBUTE_ALIGNED(8) double _DOUBLE0 = 0.0;
ATTRIBUTE_ALIGNED(8) double _DOUBLE0DOT5 = 0.5;
ATTRIBUTE_ALIGNED(8) static const double _DOUBLE2 = 2.0;
ATTRIBUTE_ALIGNED(8) static const double _DOUBLE0 = 0.0;
ATTRIBUTE_ALIGNED(8) static const double _DOUBLE0DOT5 = 0.5;
//registers,
// input: xmm0, xmm1

View File

@ -177,54 +177,54 @@
/******************************************************************************/
// The 32 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(8) juint _zero_none[] =
ATTRIBUTE_ALIGNED(8) static const juint _zero_none[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0xbff00000UL
};
ATTRIBUTE_ALIGNED(4) juint __4onpi_d[] =
ATTRIBUTE_ALIGNED(4) static const juint __4onpi_d[] =
{
0x6dc9c883UL, 0x3ff45f30UL
};
ATTRIBUTE_ALIGNED(4) juint _TWO_32H[] =
ATTRIBUTE_ALIGNED(4) static const juint _TWO_32H[] =
{
0x00000000UL, 0x41f80000UL
};
ATTRIBUTE_ALIGNED(4) juint _pi04_3d[] =
ATTRIBUTE_ALIGNED(4) static const juint _pi04_3d[] =
{
0x54442d00UL, 0x3fe921fbUL, 0x98cc5180UL, 0x3ce84698UL, 0xcbb5bf6cUL,
0xb9dfc8f8UL
};
ATTRIBUTE_ALIGNED(4) juint _pi04_5d[] =
ATTRIBUTE_ALIGNED(4) static const juint _pi04_5d[] =
{
0x54400000UL, 0x3fe921fbUL, 0x1a600000UL, 0x3dc0b461UL, 0x2e000000UL,
0x3b93198aUL, 0x25200000UL, 0x396b839aUL, 0x533e63a0UL, 0x37027044UL
};
ATTRIBUTE_ALIGNED(4) juint _SCALE[] =
ATTRIBUTE_ALIGNED(4) static const juint _SCALE[] =
{
0x00000000UL, 0x32600000UL
};
ATTRIBUTE_ALIGNED(4) juint _zeros[] =
ATTRIBUTE_ALIGNED(4) static const juint _zeros[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x80000000UL
};
ATTRIBUTE_ALIGNED(4) juint _pi04_2d[] =
ATTRIBUTE_ALIGNED(4) static const juint _pi04_2d[] =
{
0x54400000UL, 0x3fe921fbUL, 0x1a626331UL, 0x3dc0b461UL
};
ATTRIBUTE_ALIGNED(4) juint _TWO_12H[] =
ATTRIBUTE_ALIGNED(4) static const juint _TWO_12H[] =
{
0x00000000UL, 0x40b80000UL
};
ATTRIBUTE_ALIGNED(2) jushort __4onpi_31l[] =
ATTRIBUTE_ALIGNED(2) static const jushort __4onpi_31l[] =
{
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x836e, 0xa2f9,
0x40d8, 0x0000, 0x0000, 0x0000, 0x2a50, 0x9c88, 0x40b7, 0x0000, 0x0000, 0x0000,
@ -954,7 +954,7 @@ void MacroAssembler::libm_reduce_pi04l(Register eax, Register ecx, Register edx,
}
ATTRIBUTE_ALIGNED(16) jushort _SP[] =
ATTRIBUTE_ALIGNED(16) static const jushort _SP[] =
{
0xaaab, 0xaaaa, 0xaaaa, 0xaaaa, 0xbffc, 0x0000, 0x8887, 0x8888, 0x8888, 0x8888,
0x3ff8, 0x0000, 0xc527, 0x0d00, 0x00d0, 0xd00d, 0xbff2, 0x0000, 0x45f6, 0xb616,
@ -963,7 +963,7 @@ ATTRIBUTE_ALIGNED(16) jushort _SP[] =
0xbfd6, 0x0000, 0x8610, 0x307f, 0x62a1, 0xc921, 0x3fce, 0x0000
};
ATTRIBUTE_ALIGNED(16) jushort _CP[] =
ATTRIBUTE_ALIGNED(16) static const jushort _CP[] =
{
0x0000, 0x0000, 0x0000, 0x8000, 0xbffe, 0x0000, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa,
0x3ffa, 0x0000, 0x9c2f, 0x0b60, 0x60b6, 0xb60b, 0xbff5, 0x0000, 0xf024, 0x0cac,
@ -1490,7 +1490,7 @@ void MacroAssembler::libm_sincos_huge(XMMRegister xmm0, XMMRegister xmm1, Regist
jmp(B1_15);
}
ATTRIBUTE_ALIGNED(16) juint _static_const_table_sin[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table_sin[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
0x00000000UL, 0x00000000UL, 0x3ff00000UL, 0x176d6d31UL, 0xbf73b92eUL,

View File

@ -102,21 +102,21 @@
// The 32 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(16) jushort _TP[] =
ATTRIBUTE_ALIGNED(16) static const jushort _TP[] =
{
0x4cd6, 0xaf6c, 0xc710, 0xc662, 0xbffd, 0x0000, 0x4b06, 0xb0ac, 0xd3b2, 0xcc2c,
0x3ff9, 0x0000, 0x00e3, 0xc850, 0xaa28, 0x9533, 0xbff3, 0x0000, 0x2ff0, 0x466d,
0x1a3b, 0xb266, 0x3fe5, 0x0000
};
ATTRIBUTE_ALIGNED(16) jushort _TQ[] =
ATTRIBUTE_ALIGNED(16) static const jushort _TQ[] =
{
0x399c, 0x8391, 0x154c, 0x94ca, 0xbfff, 0x0000, 0xb6a3, 0xc36a, 0x44e2, 0x8a2c,
0x3ffe, 0x0000, 0xb70f, 0xd068, 0xa6ce, 0xe9dd, 0xbff9, 0x0000, 0x820f, 0x51ce,
0x7d76, 0x9bff, 0x3ff3, 0x0000
};
ATTRIBUTE_ALIGNED(16) jushort _GP[] =
ATTRIBUTE_ALIGNED(16) static const jushort _GP[] =
{
0xaaab, 0xaaaa, 0xaaaa, 0xaaaa, 0xbffd, 0x0000, 0xb62f, 0x0b60, 0x60b6, 0xb60b,
0xbff9, 0x0000, 0xdfa7, 0x08aa, 0x55e0, 0x8ab3, 0xbff6, 0x0000, 0x85a0, 0xa819,
@ -703,7 +703,7 @@ void MacroAssembler::libm_tancot_huge(XMMRegister xmm0, XMMRegister xmm1, Regist
jmp(B1_15);
}
ATTRIBUTE_ALIGNED(16) juint _static_const_table_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _static_const_table_tan[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x882c10faUL,
0x3f9664f4UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,

View File

@ -26,10 +26,10 @@
#include "register_x86.hpp"
Register::RegisterImpl all_RegisterImpls [Register::number_of_registers + 1];
FloatRegister::FloatRegisterImpl all_FloatRegisterImpls[FloatRegister::number_of_registers + 1];
XMMRegister::XMMRegisterImpl all_XMMRegisterImpls [XMMRegister::number_of_registers + 1];
KRegister::KRegisterImpl all_KRegisterImpls [KRegister::number_of_registers + 1];
const Register::RegisterImpl all_RegisterImpls [Register::number_of_registers + 1];
const FloatRegister::FloatRegisterImpl all_FloatRegisterImpls[FloatRegister::number_of_registers + 1];
const XMMRegister::XMMRegisterImpl all_XMMRegisterImpls [XMMRegister::number_of_registers + 1];
const KRegister::KRegisterImpl all_KRegisterImpls [KRegister::number_of_registers + 1];
const char * Register::RegisterImpl::name() const {
static const char *const names[number_of_registers] = {
@ -63,7 +63,7 @@ const char* XMMRegister::XMMRegisterImpl::name() const {
}
const char* KRegister::KRegisterImpl::name() const {
const char* names[number_of_registers] = {
const char *const names[number_of_registers] = {
"k0", "k1", "k2", "k3", "k4", "k5", "k6", "k7"
};
return is_valid() ? names[encoding()] : "knoreg";

View File

@ -52,7 +52,7 @@ public:
class RegisterImpl: public AbstractRegisterImpl {
friend class Register;
static constexpr RegisterImpl* first();
static constexpr const RegisterImpl* first();
public:
// accessors
@ -77,9 +77,9 @@ public:
constexpr const RegisterImpl* operator->() const { return RegisterImpl::first() + _encoding; }
};
extern Register::RegisterImpl all_RegisterImpls[Register::number_of_registers + 1] INTERNAL_VISIBILITY;
extern const Register::RegisterImpl all_RegisterImpls[Register::number_of_registers + 1] INTERNAL_VISIBILITY;
inline constexpr Register::RegisterImpl* Register::RegisterImpl::first() {
inline constexpr const Register::RegisterImpl* Register::RegisterImpl::first() {
return all_RegisterImpls + 1;
}
@ -135,7 +135,7 @@ public:
class FloatRegisterImpl: public AbstractRegisterImpl {
friend class FloatRegister;
static constexpr FloatRegisterImpl* first();
static constexpr const FloatRegisterImpl* first();
public:
// accessors
@ -159,9 +159,9 @@ public:
const FloatRegisterImpl* operator->() const { return FloatRegisterImpl::first() + _encoding; }
};
extern FloatRegister::FloatRegisterImpl all_FloatRegisterImpls[FloatRegister::number_of_registers + 1] INTERNAL_VISIBILITY;
extern const FloatRegister::FloatRegisterImpl all_FloatRegisterImpls[FloatRegister::number_of_registers + 1] INTERNAL_VISIBILITY;
inline constexpr FloatRegister::FloatRegisterImpl* FloatRegister::FloatRegisterImpl::first() {
inline constexpr const FloatRegister::FloatRegisterImpl* FloatRegister::FloatRegisterImpl::first() {
return all_FloatRegisterImpls + 1;
}
@ -198,7 +198,7 @@ public:
class XMMRegisterImpl: public AbstractRegisterImpl {
friend class XMMRegister;
static constexpr XMMRegisterImpl* first();
static constexpr const XMMRegisterImpl* first();
public:
// accessors
@ -232,9 +232,9 @@ public:
}
};
extern XMMRegister::XMMRegisterImpl all_XMMRegisterImpls[XMMRegister::number_of_registers + 1] INTERNAL_VISIBILITY;
extern const XMMRegister::XMMRegisterImpl all_XMMRegisterImpls[XMMRegister::number_of_registers + 1] INTERNAL_VISIBILITY;
inline constexpr XMMRegister::XMMRegisterImpl* XMMRegister::XMMRegisterImpl::first() {
inline constexpr const XMMRegister::XMMRegisterImpl* XMMRegister::XMMRegisterImpl::first() {
return all_XMMRegisterImpls + 1;
}
@ -308,7 +308,7 @@ public:
class KRegisterImpl: public AbstractRegisterImpl {
friend class KRegister;
static constexpr KRegisterImpl* first();
static constexpr const KRegisterImpl* first();
public:
@ -333,9 +333,9 @@ public:
const KRegisterImpl* operator->() const { return KRegisterImpl::first() + _encoding; }
};
extern KRegister::KRegisterImpl all_KRegisterImpls[KRegister::number_of_registers + 1] INTERNAL_VISIBILITY;
extern const KRegister::KRegisterImpl all_KRegisterImpls[KRegister::number_of_registers + 1] INTERNAL_VISIBILITY;
inline constexpr KRegister::KRegisterImpl* KRegister::KRegisterImpl::first() {
inline constexpr const KRegister::KRegisterImpl* KRegister::KRegisterImpl::first() {
return all_KRegisterImpls + 1;
}

View File

@ -65,19 +65,19 @@
const int MXCSR_MASK = 0xFFC0; // Mask out any pending exceptions
const int FPU_CNTRL_WRD_MASK = 0xFFFF;
ATTRIBUTE_ALIGNED(16) uint32_t KEY_SHUFFLE_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint32_t KEY_SHUFFLE_MASK[] = {
0x00010203UL, 0x04050607UL, 0x08090A0BUL, 0x0C0D0E0FUL,
};
ATTRIBUTE_ALIGNED(16) uint32_t COUNTER_SHUFFLE_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint32_t COUNTER_SHUFFLE_MASK[] = {
0x0C0D0E0FUL, 0x08090A0BUL, 0x04050607UL, 0x00010203UL,
};
ATTRIBUTE_ALIGNED(16) uint32_t GHASH_BYTE_SWAP_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint32_t GHASH_BYTE_SWAP_MASK[] = {
0x0C0D0E0FUL, 0x08090A0BUL, 0x04050607UL, 0x00010203UL,
};
ATTRIBUTE_ALIGNED(16) uint32_t GHASH_LONG_SWAP_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint32_t GHASH_LONG_SWAP_MASK[] = {
0x0B0A0908UL, 0x0F0E0D0CUL, 0x03020100UL, 0x07060504UL,
};

View File

@ -34,19 +34,19 @@
#define __ _masm->
ATTRIBUTE_ALIGNED(64) juint ADLER32_ASCALE_TABLE[] = {
ATTRIBUTE_ALIGNED(64) static const juint ADLER32_ASCALE_TABLE[] = {
0x00000000UL, 0x00000001UL, 0x00000002UL, 0x00000003UL,
0x00000004UL, 0x00000005UL, 0x00000006UL, 0x00000007UL,
0x00000008UL, 0x00000009UL, 0x0000000AUL, 0x0000000BUL,
0x0000000CUL, 0x0000000DUL, 0x0000000EUL, 0x0000000FUL
};
ATTRIBUTE_ALIGNED(32) juint ADLER32_SHUF0_TABLE[] = {
ATTRIBUTE_ALIGNED(32) static const juint ADLER32_SHUF0_TABLE[] = {
0xFFFFFF00UL, 0xFFFFFF01UL, 0xFFFFFF02UL, 0xFFFFFF03UL,
0xFFFFFF04UL, 0xFFFFFF05UL, 0xFFFFFF06UL, 0xFFFFFF07UL
};
ATTRIBUTE_ALIGNED(32) juint ADLER32_SHUF1_TABLE[] = {
ATTRIBUTE_ALIGNED(32) static const juint ADLER32_SHUF1_TABLE[] = {
0xFFFFFF08UL, 0xFFFFFF09UL, 0xFFFFFF0AUL, 0xFFFFFF0BUL,
0xFFFFFF0CUL, 0xFFFFFF0DUL, 0xFFFFFF0EUL, 0xFFFFFF0FUL
};

View File

@ -45,7 +45,7 @@
const int AESBlockSize = 16;
// Shuffle mask for fixing up 128-bit words consisting of big-endian 32-bit integers.
ATTRIBUTE_ALIGNED(16) uint64_t KEY_SHUFFLE_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t KEY_SHUFFLE_MASK[] = {
0x0405060700010203UL, 0x0C0D0E0F08090A0BUL
};
static address key_shuffle_mask_addr() {
@ -53,7 +53,7 @@ static address key_shuffle_mask_addr() {
}
// Shuffle mask for big-endian 128-bit integers.
ATTRIBUTE_ALIGNED(64) uint64_t COUNTER_SHUFFLE_MASK[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t COUNTER_SHUFFLE_MASK[] = {
0x08090A0B0C0D0E0FUL, 0x0001020304050607UL,
0x08090A0B0C0D0E0FUL, 0x0001020304050607UL,
0x08090A0B0C0D0E0FUL, 0x0001020304050607UL,
@ -64,7 +64,7 @@ static address counter_shuffle_mask_addr() {
}
// This mask is used for incrementing counter value
ATTRIBUTE_ALIGNED(64) uint64_t COUNTER_MASK_LINC0[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t COUNTER_MASK_LINC0[] = {
0x0000000000000000UL, 0x0000000000000000UL,
0x0000000000000001UL, 0x0000000000000000UL,
0x0000000000000002UL, 0x0000000000000000UL,
@ -74,14 +74,14 @@ static address counter_mask_linc0_addr() {
return (address)COUNTER_MASK_LINC0;
}
ATTRIBUTE_ALIGNED(16) uint64_t COUNTER_MASK_LINC1[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t COUNTER_MASK_LINC1[] = {
0x0000000000000001UL, 0x0000000000000000UL,
};
static address counter_mask_linc1_addr() {
return (address)COUNTER_MASK_LINC1;
}
ATTRIBUTE_ALIGNED(64) uint64_t COUNTER_MASK_LINC4[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t COUNTER_MASK_LINC4[] = {
0x0000000000000004UL, 0x0000000000000000UL,
0x0000000000000004UL, 0x0000000000000000UL,
0x0000000000000004UL, 0x0000000000000000UL,
@ -91,7 +91,7 @@ static address counter_mask_linc4_addr() {
return (address)COUNTER_MASK_LINC4;
}
ATTRIBUTE_ALIGNED(64) uint64_t COUNTER_MASK_LINC8[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t COUNTER_MASK_LINC8[] = {
0x0000000000000008UL, 0x0000000000000000UL,
0x0000000000000008UL, 0x0000000000000000UL,
0x0000000000000008UL, 0x0000000000000000UL,
@ -101,7 +101,7 @@ static address counter_mask_linc8_addr() {
return (address)COUNTER_MASK_LINC8;
}
ATTRIBUTE_ALIGNED(64) uint64_t COUNTER_MASK_LINC16[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t COUNTER_MASK_LINC16[] = {
0x0000000000000010UL, 0x0000000000000000UL,
0x0000000000000010UL, 0x0000000000000000UL,
0x0000000000000010UL, 0x0000000000000000UL,
@ -111,7 +111,7 @@ static address counter_mask_linc16_addr() {
return (address)COUNTER_MASK_LINC16;
}
ATTRIBUTE_ALIGNED(64) uint64_t COUNTER_MASK_LINC32[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t COUNTER_MASK_LINC32[] = {
0x0000000000000020UL, 0x0000000000000000UL,
0x0000000000000020UL, 0x0000000000000000UL,
0x0000000000000020UL, 0x0000000000000000UL,
@ -121,7 +121,7 @@ static address counter_mask_linc32_addr() {
return (address)COUNTER_MASK_LINC32;
}
ATTRIBUTE_ALIGNED(64) uint64_t GHASH_POLYNOMIAL_REDUCTION[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t GHASH_POLYNOMIAL_REDUCTION[] = {
0x00000001C2000000UL, 0xC200000000000000UL,
0x00000001C2000000UL, 0xC200000000000000UL,
0x00000001C2000000UL, 0xC200000000000000UL,
@ -131,7 +131,7 @@ static address ghash_polynomial_reduction_addr() {
return (address)GHASH_POLYNOMIAL_REDUCTION;
}
ATTRIBUTE_ALIGNED(16) uint64_t GHASH_POLYNOMIAL_TWO_ONE[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t GHASH_POLYNOMIAL_TWO_ONE[] = {
0x0000000000000001UL, 0x0000000100000000UL,
};
static address ghash_polynomial_two_one_addr() {

View File

@ -50,7 +50,7 @@
* 3.) Provide a +1 increment for the second set of 4 AVX
* registers at offset 16 (128-bit load)
*/
ATTRIBUTE_ALIGNED(64) uint64_t CC20_COUNTER_ADD_AVX[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t CC20_COUNTER_ADD_AVX[] = {
0x0000000000000000UL, 0x0000000000000000UL,
0x0000000000000001UL, 0x0000000000000000UL,
0x0000000000000002UL, 0x0000000000000000UL,
@ -66,7 +66,7 @@ static address chacha20_ctradd_avx() {
* The second 512 bits is a +4/+4/+4/+4 add overlay. This
* can be used to increment the counter fields for the next 4 blocks.
*/
ATTRIBUTE_ALIGNED(64) uint64_t CC20_COUNTER_ADD_AVX512[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t CC20_COUNTER_ADD_AVX512[] = {
0x0000000000000000UL, 0x0000000000000000UL,
0x0000000000000001UL, 0x0000000000000000UL,
0x0000000000000002UL, 0x0000000000000000UL,
@ -86,7 +86,7 @@ static address chacha20_ctradd_avx512() {
* for an 8-bit left-rotation on 32-bit lanes.
* The second 256 bits is a 16-bit rotation on 32-bit lanes.
*/
ATTRIBUTE_ALIGNED(64) uint64_t CC20_LROT_CONSTS[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t CC20_LROT_CONSTS[] = {
0x0605040702010003UL, 0x0E0D0C0F0A09080BUL,
0x0605040702010003UL, 0x0E0D0C0F0A09080BUL,

View File

@ -27,93 +27,93 @@
// Constants for libm trigonometric stubs
ATTRIBUTE_ALIGNED(8) juint _ONE[] = {
ATTRIBUTE_ALIGNED(8) static const juint _ONE[] = {
0x00000000UL, 0x3ff00000UL
};
address StubGenerator::ONE = (address)_ONE;
ATTRIBUTE_ALIGNED(16) juint _ONEHALF[] = {
ATTRIBUTE_ALIGNED(16) static const juint _ONEHALF[] = {
0x00000000UL, 0x3fe00000UL, 0x00000000UL, 0x3fe00000UL
};
address StubGenerator::ONEHALF = (address)_ONEHALF;
ATTRIBUTE_ALIGNED(8) juint _SIGN_MASK[] = {
ATTRIBUTE_ALIGNED(8) static const juint _SIGN_MASK[] = {
0x00000000UL, 0x80000000UL
};
address StubGenerator::SIGN_MASK = (address)_SIGN_MASK;
ATTRIBUTE_ALIGNED(8) juint _TWO_POW_55[] = {
ATTRIBUTE_ALIGNED(8) static const juint _TWO_POW_55[] = {
0x00000000UL, 0x43600000UL
};
address StubGenerator::TWO_POW_55 = (address)_TWO_POW_55;
ATTRIBUTE_ALIGNED(8) juint _TWO_POW_M55[] = {
ATTRIBUTE_ALIGNED(8) static const juint _TWO_POW_M55[] = {
0x00000000UL, 0x3c800000UL
};
address StubGenerator::TWO_POW_M55 = (address)_TWO_POW_M55;
ATTRIBUTE_ALIGNED(16) juint _SHIFTER[] = {
ATTRIBUTE_ALIGNED(16) static const juint _SHIFTER[] = {
0x00000000UL, 0x43380000UL, 0x00000000UL, 0x43380000UL
};
address StubGenerator::SHIFTER = (address)_SHIFTER;
ATTRIBUTE_ALIGNED(4) juint _ZERO[] = {
ATTRIBUTE_ALIGNED(4) static const juint _ZERO[] = {
0x00000000UL, 0x00000000UL
};
address StubGenerator::ZERO = (address)_ZERO;
ATTRIBUTE_ALIGNED(16) juint _SC_1[] = {
ATTRIBUTE_ALIGNED(16) static const juint _SC_1[] = {
0x55555555UL, 0xbfc55555UL, 0x00000000UL, 0xbfe00000UL
};
address StubGenerator::SC_1 = (address)_SC_1;
ATTRIBUTE_ALIGNED(16) juint _SC_2[] = {
ATTRIBUTE_ALIGNED(16) static const juint _SC_2[] = {
0x11111111UL, 0x3f811111UL, 0x55555555UL, 0x3fa55555UL
};
address StubGenerator::SC_2 = (address)_SC_2;
ATTRIBUTE_ALIGNED(16) juint _SC_3[] = {
ATTRIBUTE_ALIGNED(16) static const juint _SC_3[] = {
0x1a01a01aUL, 0xbf2a01a0UL, 0x16c16c17UL, 0xbf56c16cUL
};
address StubGenerator::SC_3 = (address)_SC_3;
ATTRIBUTE_ALIGNED(16) juint _SC_4[] = {
ATTRIBUTE_ALIGNED(16) static const juint _SC_4[] = {
0xa556c734UL, 0x3ec71de3UL, 0x1a01a01aUL, 0x3efa01a0UL
};
address StubGenerator::SC_4 = (address)_SC_4;
ATTRIBUTE_ALIGNED(8) juint _PI_4[] = {
ATTRIBUTE_ALIGNED(8) static const juint _PI_4[] = {
0x40000000UL, 0x3fe921fbUL, 0x18469899UL, 0x3e64442dUL
};
address StubGenerator::PI_4 = (address)_PI_4;
ATTRIBUTE_ALIGNED(8) juint _PI32INV[] = {
ATTRIBUTE_ALIGNED(8) static const juint _PI32INV[] = {
0x6dc9c883UL, 0x40245f30UL
};
address StubGenerator::PI32INV = (address)_PI32INV;
ATTRIBUTE_ALIGNED(8) juint _NEG_ZERO[] = {
ATTRIBUTE_ALIGNED(8) static const juint _NEG_ZERO[] = {
0x00000000UL, 0x80000000UL
};
address StubGenerator::NEG_ZERO = (address)_NEG_ZERO;
ATTRIBUTE_ALIGNED(8) juint _P_1[] = {
ATTRIBUTE_ALIGNED(8) static const juint _P_1[] = {
0x54400000UL, 0x3fb921fbUL
};
address StubGenerator::P_1 = (address)_P_1;
ATTRIBUTE_ALIGNED(16) juint _P_2[] = {
ATTRIBUTE_ALIGNED(16) static const juint _P_2[] = {
0x1a600000UL, 0x3d90b461UL, 0x1a600000UL, 0x3d90b461UL
};
address StubGenerator::P_2 = (address)_P_2;
ATTRIBUTE_ALIGNED(8) juint _P_3[] = {
ATTRIBUTE_ALIGNED(8) static const juint _P_3[] = {
0x2e037073UL, 0x3b63198aUL
};
address StubGenerator::P_3 = (address)_P_3;
ATTRIBUTE_ALIGNED(16) juint _PI_INV_TABLE[] = {
ATTRIBUTE_ALIGNED(16) static const juint _PI_INV_TABLE[] = {
0x00000000UL, 0x00000000UL, 0xa2f9836eUL, 0x4e441529UL, 0xfc2757d1UL,
0xf534ddc0UL, 0xdb629599UL, 0x3c439041UL, 0xfe5163abUL, 0xdebbc561UL,
0xb7246e3aUL, 0x424dd2e0UL, 0x06492eeaUL, 0x09d1921cUL, 0xfe1deb1cUL,
@ -127,7 +127,7 @@ ATTRIBUTE_ALIGNED(16) juint _PI_INV_TABLE[] = {
address StubGenerator::PI_INV_TABLE = (address)_PI_INV_TABLE;
ATTRIBUTE_ALIGNED(16) juint _Ctable[] = {
ATTRIBUTE_ALIGNED(16) static const juint _Ctable[] = {
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
0x00000000UL, 0x00000000UL, 0x3ff00000UL, 0x176d6d31UL, 0xbf73b92eUL,
0xbc29b42cUL, 0x3fb917a6UL, 0xe0000000UL, 0xbc3e2718UL, 0x00000000UL,

View File

@ -63,7 +63,7 @@
//
/******************************************************************************/
ATTRIBUTE_ALIGNED(16) juint _cv[] =
ATTRIBUTE_ALIGNED(16) static const juint _cv[] =
{
0x652b82feUL, 0x40571547UL, 0x652b82feUL, 0x40571547UL, 0xfefa0000UL,
0x3f862e42UL, 0xfefa0000UL, 0x3f862e42UL, 0xbc9e3b3aUL, 0x3d1cf79aUL,
@ -72,17 +72,17 @@ ATTRIBUTE_ALIGNED(16) juint _cv[] =
0xc090cf0fUL, 0x3f811115UL, 0x55548ba1UL, 0x3fc55555UL
};
ATTRIBUTE_ALIGNED(16) juint _mmask[] =
ATTRIBUTE_ALIGNED(16) static const juint _mmask[] =
{
0xffffffc0UL, 0x00000000UL, 0xffffffc0UL, 0x00000000UL
};
ATTRIBUTE_ALIGNED(16) juint _bias[] =
ATTRIBUTE_ALIGNED(16) static const juint _bias[] =
{
0x0000ffc0UL, 0x00000000UL, 0x0000ffc0UL, 0x00000000UL
};
ATTRIBUTE_ALIGNED(16) juint _Tbl_addr[] =
ATTRIBUTE_ALIGNED(16) static const juint _Tbl_addr[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x0e03754dUL,
0x3cad7bbfUL, 0x3e778060UL, 0x00002c9aUL, 0x3567f613UL, 0x3c8cd252UL,
@ -138,27 +138,27 @@ ATTRIBUTE_ALIGNED(16) juint _Tbl_addr[] =
0x000fa7c1UL
};
ATTRIBUTE_ALIGNED(16) juint _ALLONES[] =
ATTRIBUTE_ALIGNED(16) static const juint _ALLONES[] =
{
0xffffffffUL, 0xffffffffUL, 0xffffffffUL, 0xffffffffUL
};
ATTRIBUTE_ALIGNED(16) juint _ebias[] =
ATTRIBUTE_ALIGNED(16) static const juint _ebias[] =
{
0x00000000UL, 0x3ff00000UL, 0x00000000UL, 0x3ff00000UL
};
ATTRIBUTE_ALIGNED(4) juint _XMAX[] =
ATTRIBUTE_ALIGNED(4) static const juint _XMAX[] =
{
0xffffffffUL, 0x7fefffffUL
};
ATTRIBUTE_ALIGNED(4) juint _XMIN[] =
ATTRIBUTE_ALIGNED(4) static const juint _XMIN[] =
{
0x00000000UL, 0x00100000UL
};
ATTRIBUTE_ALIGNED(4) juint _INF[] =
ATTRIBUTE_ALIGNED(4) static const juint _INF[] =
{
0x00000000UL, 0x7ff00000UL
};

View File

@ -32,7 +32,7 @@
#define __ _masm->
ATTRIBUTE_ALIGNED(16) uint64_t GHASH_SHUFFLE_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t GHASH_SHUFFLE_MASK[] = {
0x0F0F0F0F0F0F0F0FUL, 0x0F0F0F0F0F0F0F0FUL,
};
static address ghash_shuffle_mask_addr() {
@ -40,7 +40,7 @@ static address ghash_shuffle_mask_addr() {
}
// byte swap x86 long
ATTRIBUTE_ALIGNED(16) uint64_t GHASH_LONG_SWAP_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t GHASH_LONG_SWAP_MASK[] = {
0x0F0E0D0C0B0A0908UL, 0x0706050403020100UL,
};
address StubGenerator::ghash_long_swap_mask_addr() {
@ -48,7 +48,7 @@ address StubGenerator::ghash_long_swap_mask_addr() {
}
// byte swap x86 byte array
ATTRIBUTE_ALIGNED(16) uint64_t GHASH_BYTE_SWAP_MASK[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t GHASH_BYTE_SWAP_MASK[] = {
0x08090A0B0C0D0E0FUL, 0x0001020304050607UL,
};
address StubGenerator::ghash_byte_swap_mask_addr() {
@ -56,7 +56,7 @@ address StubGenerator::ghash_byte_swap_mask_addr() {
}
// Polynomial x^128+x^127+x^126+x^121+1
ATTRIBUTE_ALIGNED(16) uint64_t GHASH_POLYNOMIAL[] = {
ATTRIBUTE_ALIGNED(16) static const uint64_t GHASH_POLYNOMIAL[] = {
0x0000000000000001UL, 0xC200000000000000UL,
};
address StubGenerator::ghash_polynomial_addr() {

View File

@ -54,7 +54,7 @@
//
/******************************************************************************/
ATTRIBUTE_ALIGNED(16) juint _L_tbl[] =
ATTRIBUTE_ALIGNED(16) static const juint _L_tbl[] =
{
0xfefa3800UL, 0x3fe62e42UL, 0x93c76730UL, 0x3d2ef357UL, 0xaa241800UL,
0x3fe5ee82UL, 0x0cda46beUL, 0x3d220238UL, 0x5c364800UL, 0x3fe5af40UL,
@ -162,12 +162,12 @@ ATTRIBUTE_ALIGNED(16) juint _L_tbl[] =
0x80000000UL
};
ATTRIBUTE_ALIGNED(16) juint _log2[] =
ATTRIBUTE_ALIGNED(16) static const juint _log2[] =
{
0xfefa3800UL, 0x3fa62e42UL, 0x93c76730UL, 0x3ceef357UL
};
ATTRIBUTE_ALIGNED(16) juint _coeff[] =
ATTRIBUTE_ALIGNED(16) static const juint _coeff[] =
{
0x92492492UL, 0x3fc24924UL, 0x00000000UL, 0xbfd00000UL, 0x3d6fb175UL,
0xbfc5555eUL, 0x55555555UL, 0x3fd55555UL, 0x9999999aUL, 0x3fc99999UL,
@ -387,15 +387,15 @@ address StubGenerator::generate_libmLog() {
//
/******************************************************************************/
ATTRIBUTE_ALIGNED(16) juint _HIGHSIGMASK_log10[] = {
ATTRIBUTE_ALIGNED(16) static const juint _HIGHSIGMASK_log10[] = {
0xf8000000UL, 0xffffffffUL, 0x00000000UL, 0xffffe000UL
};
ATTRIBUTE_ALIGNED(16) juint _LOG10_E[] = {
ATTRIBUTE_ALIGNED(16) static const juint _LOG10_E[] = {
0x00000000UL, 0x3fdbc000UL, 0xbf2e4108UL, 0x3f5a7a6cUL
};
ATTRIBUTE_ALIGNED(16) juint _L_tbl_log10[] = {
ATTRIBUTE_ALIGNED(16) static const juint _L_tbl_log10[] = {
0x509f7800UL, 0x3fd34413UL, 0x1f12b358UL, 0x3d1fef31UL, 0x80333400UL,
0x3fd32418UL, 0xc671d9d0UL, 0xbcf542bfUL, 0x51195000UL, 0x3fd30442UL,
0x78a4b0c3UL, 0x3d18216aUL, 0x6fc79400UL, 0x3fd2e490UL, 0x80fa389dUL,
@ -502,12 +502,12 @@ ATTRIBUTE_ALIGNED(16) juint _L_tbl_log10[] = {
0x00000000UL
};
ATTRIBUTE_ALIGNED(16) juint _log2_log10[] =
ATTRIBUTE_ALIGNED(16) static const juint _log2_log10[] =
{
0x509f7800UL, 0x3f934413UL, 0x1f12b358UL, 0x3cdfef31UL
};
ATTRIBUTE_ALIGNED(16) juint _coeff_log10[] =
ATTRIBUTE_ALIGNED(16) static const juint _coeff_log10[] =
{
0xc1a5f12eUL, 0x40358874UL, 0x64d4ef0dUL, 0xc0089309UL, 0x385593b1UL,
0xc025c917UL, 0xdc963467UL, 0x3ffc6a02UL, 0x7f9d3aa1UL, 0x4016ab9fUL,

View File

@ -53,7 +53,7 @@
// [ ] used to denote vector numbers (with their elements)
// Constant Pool:
ATTRIBUTE_ALIGNED(64) uint64_t POLY1305_PAD_MSG[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t POLY1305_PAD_MSG[] = {
0x0000010000000000, 0x0000010000000000,
0x0000010000000000, 0x0000010000000000,
0x0000010000000000, 0x0000010000000000,
@ -63,7 +63,7 @@ static address poly1305_pad_msg() {
return (address)POLY1305_PAD_MSG;
}
ATTRIBUTE_ALIGNED(64) uint64_t POLY1305_MASK42[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t POLY1305_MASK42[] = {
0x000003ffffffffff, 0x000003ffffffffff,
0x000003ffffffffff, 0x000003ffffffffff,
0x000003ffffffffff, 0x000003ffffffffff,
@ -73,7 +73,7 @@ static address poly1305_mask42() {
return (address)POLY1305_MASK42;
}
ATTRIBUTE_ALIGNED(64) uint64_t POLY1305_MASK44[] = {
ATTRIBUTE_ALIGNED(64) static const uint64_t POLY1305_MASK44[] = {
0x00000fffffffffff, 0x00000fffffffffff,
0x00000fffffffffff, 0x00000fffffffffff,
0x00000fffffffffff, 0x00000fffffffffff,

View File

@ -81,19 +81,19 @@
//
/******************************************************************************/
ATTRIBUTE_ALIGNED(16) juint _HIGHSIGMASK[] = {
ATTRIBUTE_ALIGNED(16) static const juint _HIGHSIGMASK[] = {
0x00000000UL, 0xfffff800UL, 0x00000000UL, 0xfffff800UL
};
ATTRIBUTE_ALIGNED(16) juint _LOG2_E[] = {
ATTRIBUTE_ALIGNED(16) static const juint _LOG2_E[] = {
0x00000000UL, 0x3ff72000UL, 0x161bb241UL, 0xbf5dabe1UL
};
ATTRIBUTE_ALIGNED(16) juint _HIGHMASK_Y[] = {
ATTRIBUTE_ALIGNED(16) static const juint _HIGHMASK_Y[] = {
0x00000000UL, 0xfffffff8UL, 0x00000000UL, 0xffffffffUL
};
ATTRIBUTE_ALIGNED(16) juint _T_exp[] = {
ATTRIBUTE_ALIGNED(16) static const juint _T_exp[] = {
0x00000000UL, 0x3ff00000UL, 0x00000000UL, 0x3b700000UL, 0xfa5abcbfUL,
0x3ff00b1aUL, 0xa7609f71UL, 0xbc84f6b2UL, 0xa9fb3335UL, 0x3ff0163dUL,
0x9ab8cdb7UL, 0x3c9b6129UL, 0x143b0281UL, 0x3ff02168UL, 0x0fc54eb6UL,
@ -301,25 +301,25 @@ ATTRIBUTE_ALIGNED(16) juint _T_exp[] = {
0x6b2a23d9UL, 0x3fffe9d9UL, 0x7442fde3UL, 0x3c74a603UL
};
ATTRIBUTE_ALIGNED(16) juint _e_coeff[] = {
ATTRIBUTE_ALIGNED(16) static const juint _e_coeff[] = {
0xe78a6731UL, 0x3f55d87fUL, 0xd704a0c0UL, 0x3fac6b08UL, 0x6fba4e77UL,
0x3f83b2abUL, 0xff82c58fUL, 0x3fcebfbdUL, 0xfefa39efUL, 0x3fe62e42UL,
0x00000000UL, 0x00000000UL
};
ATTRIBUTE_ALIGNED(16) juint _coeff_h[] = {
ATTRIBUTE_ALIGNED(16) static const juint _coeff_h[] = {
0x00000000UL, 0xbfd61a00UL, 0x00000000UL, 0xbf5dabe1UL
};
ATTRIBUTE_ALIGNED(16) juint _HIGHMASK_LOG_X[] = {
ATTRIBUTE_ALIGNED(16) static const juint _HIGHMASK_LOG_X[] = {
0xf8000000UL, 0xffffffffUL, 0x00000000UL, 0xfffff800UL
};
ATTRIBUTE_ALIGNED(8) juint _HALFMASK[] = {
ATTRIBUTE_ALIGNED(8) static const juint _HALFMASK[] = {
0xf8000000UL, 0xffffffffUL, 0xf8000000UL, 0xffffffffUL
};
ATTRIBUTE_ALIGNED(16) juint _coeff_pow[] = {
ATTRIBUTE_ALIGNED(16) static const juint _coeff_pow[] = {
0x6dc96112UL, 0xbf836578UL, 0xee241472UL, 0xbf9b0301UL, 0x9f95985aUL,
0xbfb528dbUL, 0xb3841d2aUL, 0xbfd619b6UL, 0x518775e3UL, 0x3f9004f2UL,
0xac8349bbUL, 0x3fa76c9bUL, 0x486ececcUL, 0x3fc4635eUL, 0x161bb241UL,
@ -327,7 +327,7 @@ ATTRIBUTE_ALIGNED(16) juint _coeff_pow[] = {
0x486ececbUL, 0x3fc4635eUL, 0x412055ccUL, 0xbdd61bb2UL
};
ATTRIBUTE_ALIGNED(16) juint _L_tbl_pow[] = {
ATTRIBUTE_ALIGNED(16) static const juint _L_tbl_pow[] = {
0x00000000UL, 0x3ff00000UL, 0x00000000UL, 0x00000000UL, 0x20000000UL,
0x3feff00aUL, 0x96621f95UL, 0x3e5b1856UL, 0xe0000000UL, 0x3fefe019UL,
0xe5916f9eUL, 0xbe325278UL, 0x00000000UL, 0x3fefd02fUL, 0x859a1062UL,
@ -741,19 +741,19 @@ ATTRIBUTE_ALIGNED(16) juint _L_tbl_pow[] = {
0x00000000UL, 0x80000000UL
};
ATTRIBUTE_ALIGNED(8) juint _log2_pow[] = {
ATTRIBUTE_ALIGNED(8) static const juint _log2_pow[] = {
0xfefa39efUL, 0x3fe62e42UL, 0xfefa39efUL, 0xbfe62e42UL
};
ATTRIBUTE_ALIGNED(8) juint _DOUBLE2[] = {
ATTRIBUTE_ALIGNED(8) static const juint _DOUBLE2[] = {
0x00000000UL, 0x40000000UL
};
ATTRIBUTE_ALIGNED(8) juint _DOUBLE0[] = {
ATTRIBUTE_ALIGNED(8) static const juint _DOUBLE0[] = {
0x00000000UL, 0x00000000UL
};
ATTRIBUTE_ALIGNED(8) juint _DOUBLE0DOT5[] = {
ATTRIBUTE_ALIGNED(8) static const juint _DOUBLE0DOT5[] = {
0x00000000UL, 0x3fe00000UL
};

View File

@ -173,7 +173,7 @@
/******************************************************************************/
// The 64 bit code is at most SSE2 compliant
ATTRIBUTE_ALIGNED(8) juint _ALL_ONES[] =
ATTRIBUTE_ALIGNED(8) static const juint _ALL_ONES[] =
{
0xffffffffUL, 0x3fefffffUL
};

View File

@ -97,37 +97,37 @@
//
/******************************************************************************/
ATTRIBUTE_ALIGNED(16) juint _MUL16[] =
ATTRIBUTE_ALIGNED(16) static const juint _MUL16[] =
{
0x00000000UL, 0x40300000UL, 0x00000000UL, 0x3ff00000UL
};
ATTRIBUTE_ALIGNED(16) juint _sign_mask_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _sign_mask_tan[] =
{
0x00000000UL, 0x80000000UL, 0x00000000UL, 0x80000000UL
};
ATTRIBUTE_ALIGNED(16) juint _PI32INV_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _PI32INV_tan[] =
{
0x6dc9c883UL, 0x3fe45f30UL, 0x6dc9c883UL, 0x40245f30UL
};
ATTRIBUTE_ALIGNED(16) juint _P_1_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _P_1_tan[] =
{
0x54444000UL, 0x3fb921fbUL, 0x54440000UL, 0x3fb921fbUL
};
ATTRIBUTE_ALIGNED(16) juint _P_2_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _P_2_tan[] =
{
0x67674000UL, 0xbd32e7b9UL, 0x4c4c0000UL, 0x3d468c23UL
};
ATTRIBUTE_ALIGNED(16) juint _P_3_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _P_3_tan[] =
{
0x3707344aUL, 0x3aa8a2e0UL, 0x03707345UL, 0x3ae98a2eUL
};
ATTRIBUTE_ALIGNED(16) juint _Ctable_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _Ctable_tan[] =
{
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x882c10faUL,
0x3f9664f4UL, 0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL,
@ -413,42 +413,42 @@ ATTRIBUTE_ALIGNED(16) juint _Ctable_tan[] =
0x00000000UL, 0x00000000UL, 0x00000000UL
};
ATTRIBUTE_ALIGNED(16) juint _MASK_35_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _MASK_35_tan[] =
{
0xfffc0000UL, 0xffffffffUL, 0x00000000UL, 0x00000000UL
};
ATTRIBUTE_ALIGNED(16) juint _Q_11_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _Q_11_tan[] =
{
0xb8fe4d77UL, 0x3f82609aUL
};
ATTRIBUTE_ALIGNED(16) juint _Q_9_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _Q_9_tan[] =
{
0xbf847a43UL, 0x3f9664a0UL
};
ATTRIBUTE_ALIGNED(16) juint _Q_7_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _Q_7_tan[] =
{
0x52c4c8abUL, 0x3faba1baUL
};
ATTRIBUTE_ALIGNED(16) juint _Q_5_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _Q_5_tan[] =
{
0x11092746UL, 0x3fc11111UL
};
ATTRIBUTE_ALIGNED(16) juint _Q_3_tan[] =
ATTRIBUTE_ALIGNED(16) static const juint _Q_3_tan[] =
{
0x55555612UL, 0x3fd55555UL
};
ATTRIBUTE_ALIGNED(8) juint _PI_4_tan[] =
ATTRIBUTE_ALIGNED(8) static const juint _PI_4_tan[] =
{
0x00000000UL, 0x3fe921fbUL, 0x4611a626UL, 0x3e85110bUL
};
ATTRIBUTE_ALIGNED(8) juint _QQ_2_tan[] =
ATTRIBUTE_ALIGNED(8) static const juint _QQ_2_tan[] =
{
0x676733afUL, 0x3d32e7b9UL
};

View File

@ -85,7 +85,7 @@ address StubRoutines::x86::_decoding_table_base64 = nullptr;
#endif
address StubRoutines::x86::_pshuffle_byte_flip_mask_addr = nullptr;
uint64_t StubRoutines::x86::_crc_by128_masks[] =
const uint64_t StubRoutines::x86::_crc_by128_masks[] =
{
/* The fields in this structure are arranged so that they can be
* picked up two at a time with 128-bit loads.
@ -124,7 +124,7 @@ uint64_t StubRoutines::x86::_crc_by128_masks[] =
/**
* crc_table[] from jdk/src/share/native/java/util/zip/zlib-1.2.5/crc32.h
*/
juint StubRoutines::x86::_crc_table[] =
const juint StubRoutines::x86::_crc_table[] =
{
0x00000000UL, 0x77073096UL, 0xee0e612cUL, 0x990951baUL, 0x076dc419UL,
0x706af48fUL, 0xe963a535UL, 0x9e6495a3UL, 0x0edb8832UL, 0x79dcb8a4UL,
@ -181,7 +181,7 @@ juint StubRoutines::x86::_crc_table[] =
};
#ifdef _LP64
juint StubRoutines::x86::_crc_table_avx512[] =
const juint StubRoutines::x86::_crc_table_avx512[] =
{
0xe95c1271UL, 0x00000000UL, 0xce3371cbUL, 0x00000000UL,
0xccaa009eUL, 0x00000000UL, 0x751997d0UL, 0x00000001UL,
@ -198,7 +198,7 @@ juint StubRoutines::x86::_crc_table_avx512[] =
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
};
juint StubRoutines::x86::_crc32c_table_avx512[] =
const juint StubRoutines::x86::_crc32c_table_avx512[] =
{
0xb9e02b86UL, 0x00000000UL, 0xdcb17aa4UL, 0x00000000UL,
0x493c7d27UL, 0x00000000UL, 0xc1068c50UL, 0x0000000eUL,
@ -215,21 +215,21 @@ juint StubRoutines::x86::_crc32c_table_avx512[] =
0x00000000UL, 0x00000000UL, 0x00000000UL, 0x00000000UL
};
juint StubRoutines::x86::_crc_by128_masks_avx512[] =
const juint StubRoutines::x86::_crc_by128_masks_avx512[] =
{
0xffffffffUL, 0xffffffffUL, 0x00000000UL, 0x00000000UL,
0x00000000UL, 0xffffffffUL, 0xffffffffUL, 0xffffffffUL,
0x80808080UL, 0x80808080UL, 0x80808080UL, 0x80808080UL
};
juint StubRoutines::x86::_shuf_table_crc32_avx512[] =
const juint StubRoutines::x86::_shuf_table_crc32_avx512[] =
{
0x83828100UL, 0x87868584UL, 0x8b8a8988UL, 0x8f8e8d8cUL,
0x03020100UL, 0x07060504UL, 0x0b0a0908UL, 0x000e0d0cUL
};
#endif // _LP64
jint StubRoutines::x86::_arrays_hashcode_powers_of_31[] =
const jint StubRoutines::x86::_arrays_hashcode_powers_of_31[] =
{
2111290369,
-2010103841,
@ -370,7 +370,7 @@ void StubRoutines::x86::generate_CRC32C_table(bool is_pclmulqdq_table_supported)
}
}
ATTRIBUTE_ALIGNED(64) juint StubRoutines::x86::_k256[] =
ATTRIBUTE_ALIGNED(64) const juint StubRoutines::x86::_k256[] =
{
0x428a2f98UL, 0x71374491UL, 0xb5c0fbcfUL, 0xe9b5dba5UL,
0x3956c25bUL, 0x59f111f1UL, 0x923f82a4UL, 0xab1c5ed5UL,
@ -396,7 +396,7 @@ ATTRIBUTE_ALIGNED(64) juint StubRoutines::x86::_k256[] =
ATTRIBUTE_ALIGNED(64) juint StubRoutines::x86::_k256_W[2*sizeof(StubRoutines::x86::_k256)];
// used in MacroAssembler::sha512_AVX2
ATTRIBUTE_ALIGNED(64) julong StubRoutines::x86::_k512_W[] =
ATTRIBUTE_ALIGNED(64) const julong StubRoutines::x86::_k512_W[] =
{
0x428a2f98d728ae22ULL, 0x7137449123ef65cdULL,
0xb5c0fbcfec4d3b2fULL, 0xe9b5dba58189dbbcULL,

View File

@ -132,18 +132,18 @@ class x86 {
static address _method_entry_barrier;
// masks and table for CRC32
static uint64_t _crc_by128_masks[];
static juint _crc_table[];
static const uint64_t _crc_by128_masks[];
static const juint _crc_table[];
#ifdef _LP64
static juint _crc_by128_masks_avx512[];
static juint _crc_table_avx512[];
static juint _crc32c_table_avx512[];
static juint _shuf_table_crc32_avx512[];
static const juint _crc_by128_masks_avx512[];
static const juint _crc_table_avx512[];
static const juint _crc32c_table_avx512[];
static const juint _shuf_table_crc32_avx512[];
#endif // _LP64
// table for CRC32C
static juint* _crc32c_table;
// table for arrays_hashcode
static jint _arrays_hashcode_powers_of_31[];
static const jint _arrays_hashcode_powers_of_31[];
// upper word mask for sha1
static address _upper_word_mask_addr;
@ -151,7 +151,7 @@ class x86 {
static address _shuffle_byte_flip_mask_addr;
//k256 table for sha256
static juint _k256[];
static const juint _k256[];
static address _k256_adr;
static address _vector_short_to_byte_mask;
static address _vector_float_sign_mask;
@ -180,7 +180,7 @@ class x86 {
#ifdef _LP64
static juint _k256_W[];
static address _k256_W_adr;
static julong _k512_W[];
static const julong _k512_W[];
static address _k512_W_addr;
// byte flip mask for sha512
static address _pshuffle_byte_flip_mask_addr_sha512;