Skip to content

Commit a8edd1b

Browse files
committed
8274527: Minimal VM build fails after JDK-8273459
Reviewed-by: kvn
1 parent 7326481 commit a8edd1b

File tree

4 files changed

+22
-17
lines changed

4 files changed

+22
-17
lines changed

src/hotspot/cpu/x86/macroAssembler_x86.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1177,6 +1177,10 @@ void MacroAssembler::align64() {
11771177
align(64, (unsigned long long) pc());
11781178
}
11791179

1180+
void MacroAssembler::align32() {
1181+
align(32, (unsigned long long) pc());
1182+
}
1183+
11801184
void MacroAssembler::align(int modulus) {
11811185
// 8273459: Ensure alignment is possible with current segment alignment
11821186
assert(modulus <= CodeEntryAlignment, "Alignment must be <= CodeEntryAlignment");
@@ -6905,7 +6909,7 @@ void MacroAssembler::kernel_crc32(Register crc, Register buf, Register len, Regi
69056909
// 128 bits per each of 4 parallel streams.
69066910
movdqu(xmm0, ExternalAddress(StubRoutines::x86::crc_by128_masks_addr() + 32));
69076911

6908-
align(32);
6912+
align32();
69096913
BIND(L_fold_512b_loop);
69106914
fold_128bit_crc32(xmm1, xmm0, xmm5, buf, 0);
69116915
fold_128bit_crc32(xmm2, xmm0, xmm5, buf, 16);

src/hotspot/cpu/x86/macroAssembler_x86.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ class MacroAssembler: public Assembler {
194194
void incrementq(AddressLiteral dst);
195195

196196
// Alignment
197+
void align32();
197198
void align64();
198199
void align(int modulus);
199200
void align(int modulus, int target);

src/hotspot/cpu/x86/macroAssembler_x86_adler.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ void MacroAssembler::updateBytesAdler32(Register init_d, Register data, Register
8080
cmpptr(data, end);
8181
jcc(Assembler::aboveEqual, SKIP_LOOP_1A);
8282

83-
align(32);
83+
align32();
8484
bind(SLOOP1A);
8585
vbroadcastf128(ydata, Address(data, 0), Assembler::AVX_256bit);
8686
addptr(data, CHUNKSIZE);
@@ -178,7 +178,7 @@ void MacroAssembler::updateBytesAdler32(Register init_d, Register data, Register
178178
movdl(rax, xb);
179179
addl(b_d, rax);
180180

181-
align(32);
181+
align32();
182182
bind(FINAL_LOOP);
183183
movzbl(rax, Address(data, 0)); //movzx eax, byte[data]
184184
addl(a_d, rax);

src/hotspot/cpu/x86/stubGenerator_x86_64.cpp

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1484,7 +1484,7 @@ class StubGenerator: public StubCodeGenerator {
14841484
__ subq(temp1, loop_size[shift]);
14851485

14861486
// Main loop with aligned copy block size of 192 bytes at 32 byte granularity.
1487-
__ align(32);
1487+
__ align32();
14881488
__ BIND(L_main_loop);
14891489
__ copy64_avx(to, from, temp4, xmm1, false, shift, 0);
14901490
__ copy64_avx(to, from, temp4, xmm1, false, shift, 64);
@@ -1551,7 +1551,7 @@ class StubGenerator: public StubCodeGenerator {
15511551

15521552
// Main loop with aligned copy block size of 192 bytes at
15531553
// 64 byte copy granularity.
1554-
__ align(32);
1554+
__ align32();
15551555
__ BIND(L_main_loop_64bytes);
15561556
__ copy64_avx(to, from, temp4, xmm1, false, shift, 0 , true);
15571557
__ copy64_avx(to, from, temp4, xmm1, false, shift, 64, true);
@@ -1691,7 +1691,7 @@ class StubGenerator: public StubCodeGenerator {
16911691
__ BIND(L_main_pre_loop);
16921692

16931693
// Main loop with aligned copy block size of 192 bytes at 32 byte granularity.
1694-
__ align(32);
1694+
__ align32();
16951695
__ BIND(L_main_loop);
16961696
__ copy64_avx(to, from, temp1, xmm1, true, shift, -64);
16971697
__ copy64_avx(to, from, temp1, xmm1, true, shift, -128);
@@ -1724,7 +1724,7 @@ class StubGenerator: public StubCodeGenerator {
17241724

17251725
// Main loop with aligned copy block size of 192 bytes at
17261726
// 64 byte copy granularity.
1727-
__ align(32);
1727+
__ align32();
17281728
__ BIND(L_main_loop_64bytes);
17291729
__ copy64_avx(to, from, temp1, xmm1, true, shift, -64 , true);
17301730
__ copy64_avx(to, from, temp1, xmm1, true, shift, -128, true);
@@ -4274,7 +4274,7 @@ class StubGenerator: public StubCodeGenerator {
42744274

42754275
//Mask for byte-swapping a couple of qwords in an XMM register using (v)pshufb.
42764276
address generate_pshuffle_byte_flip_mask_sha512() {
4277-
__ align(32);
4277+
__ align32();
42784278
StubCodeMark mark(this, "StubRoutines", "pshuffle_byte_flip_mask_sha512");
42794279
address start = __ pc();
42804280
if (VM_Version::supports_avx2()) {
@@ -5401,7 +5401,7 @@ address generate_avx_ghash_processBlocks() {
54015401

54025402
address base64_avx2_shuffle_addr()
54035403
{
5404-
__ align(32);
5404+
__ align32();
54055405
StubCodeMark mark(this, "StubRoutines", "avx2_shuffle_base64");
54065406
address start = __ pc();
54075407
__ emit_data64(0x0809070805060405, relocInfo::none);
@@ -5413,7 +5413,7 @@ address generate_avx_ghash_processBlocks() {
54135413

54145414
address base64_avx2_input_mask_addr()
54155415
{
5416-
__ align(32);
5416+
__ align32();
54175417
StubCodeMark mark(this, "StubRoutines", "avx2_input_mask_base64");
54185418
address start = __ pc();
54195419
__ emit_data64(0x8000000000000000, relocInfo::none);
@@ -5425,7 +5425,7 @@ address generate_avx_ghash_processBlocks() {
54255425

54265426
address base64_avx2_lut_addr()
54275427
{
5428-
__ align(32);
5428+
__ align32();
54295429
StubCodeMark mark(this, "StubRoutines", "avx2_lut_base64");
54305430
address start = __ pc();
54315431
__ emit_data64(0xfcfcfcfcfcfc4741, relocInfo::none);
@@ -5530,7 +5530,7 @@ address generate_avx_ghash_processBlocks() {
55305530
__ evmovdquq(xmm2, Address(encode_table, 0), Assembler::AVX_512bit);
55315531
__ evpbroadcastq(xmm1, rax, Assembler::AVX_512bit);
55325532

5533-
__ align(32);
5533+
__ align32();
55345534
__ BIND(L_vbmiLoop);
55355535

55365536
__ vpermb(xmm0, xmm3, Address(source, start_offset), Assembler::AVX_512bit);
@@ -5730,7 +5730,7 @@ address generate_avx_ghash_processBlocks() {
57305730
__ cmpl(length, 31);
57315731
__ jcc(Assembler::belowEqual, L_process3);
57325732

5733-
__ align(32);
5733+
__ align32();
57345734
__ BIND(L_32byteLoop);
57355735

57365736
// Get next 32 bytes
@@ -6177,7 +6177,7 @@ address generate_avx_ghash_processBlocks() {
61776177
__ evmovdquq(join12, ExternalAddress(StubRoutines::x86::base64_vbmi_join_1_2_addr()), Assembler::AVX_512bit, r13);
61786178
__ evmovdquq(join23, ExternalAddress(StubRoutines::x86::base64_vbmi_join_2_3_addr()), Assembler::AVX_512bit, r13);
61796179

6180-
__ align(32);
6180+
__ align32();
61816181
__ BIND(L_process256);
61826182
// Grab input data
61836183
__ evmovdquq(input0, Address(source, start_offset, Address::times_1, 0x00), Assembler::AVX_512bit);
@@ -6259,7 +6259,7 @@ address generate_avx_ghash_processBlocks() {
62596259
__ cmpl(length, 63);
62606260
__ jcc(Assembler::lessEqual, L_finalBit);
62616261

6262-
__ align(32);
6262+
__ align32();
62636263
__ BIND(L_process64Loop);
62646264

62656265
// Handle first 64-byte block
@@ -6395,7 +6395,7 @@ address generate_avx_ghash_processBlocks() {
63956395
__ shrq(rax, 1);
63966396
__ jmp(L_donePadding);
63976397

6398-
__ align(32);
6398+
__ align32();
63996399
__ BIND(L_bruteForce);
64006400
} // End of if(avx512_vbmi)
64016401

@@ -6439,7 +6439,7 @@ address generate_avx_ghash_processBlocks() {
64396439

64406440
__ jmp(L_bottomLoop);
64416441

6442-
__ align(32);
6442+
__ align32();
64436443
__ BIND(L_forceLoop);
64446444
__ shll(byte1, 18);
64456445
__ shll(byte2, 12);

0 commit comments

Comments
 (0)