From c130c8137f8e81254e4ae029b89ccbd5cf06f48f Mon Sep 17 00:00:00 2001 From: Boris Ulasevich Date: Wed, 11 Apr 2018 20:56:56 +0300 Subject: [PATCH] 8189101: AARCH32 - 'minimal' build fails because CMS bits are referred unconditionally Reviewed-by: shade, dholmes --- src/hotspot/cpu/arm/c1_LIRGenerator_arm.cpp | 2 ++ src/hotspot/cpu/arm/interp_masm_arm.cpp | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/hotspot/cpu/arm/c1_LIRGenerator_arm.cpp b/src/hotspot/cpu/arm/c1_LIRGenerator_arm.cpp index e0946ad3cf4..d8a6c465599 100644 --- a/src/hotspot/cpu/arm/c1_LIRGenerator_arm.cpp +++ b/src/hotspot/cpu/arm/c1_LIRGenerator_arm.cpp @@ -533,9 +533,11 @@ void LIRGenerator::CardTableBarrierSet_post_barrier_helper(LIR_OprDesc* addr, LI set_card(tmp, card_addr); __ branch_destination(L_already_dirty->label()); } else { +#if INCLUDE_ALL_GCS if (UseConcMarkSweepGC && CMSPrecleaningEnabled) { __ membar_storestore(); } +#endif set_card(tmp, card_addr); } } diff --git a/src/hotspot/cpu/arm/interp_masm_arm.cpp b/src/hotspot/cpu/arm/interp_masm_arm.cpp index acc1fa8e08a..aac7226191c 100644 --- a/src/hotspot/cpu/arm/interp_masm_arm.cpp +++ b/src/hotspot/cpu/arm/interp_masm_arm.cpp @@ -450,9 +450,11 @@ void InterpreterMacroAssembler::store_check_part2(Register obj, Register card_ta #endif if (UseCondCardMark) { +#if INCLUDE_ALL_GCS if (UseConcMarkSweepGC) { membar(MacroAssembler::Membar_mask_bits(MacroAssembler::StoreLoad), noreg); } +#endif Label already_dirty; ldrb(tmp, card_table_addr); @@ -462,9 +464,11 @@ void InterpreterMacroAssembler::store_check_part2(Register obj, Register card_ta bind(already_dirty); } else { +#if INCLUDE_ALL_GCS if (UseConcMarkSweepGC && CMSPrecleaningEnabled) { membar(MacroAssembler::Membar_mask_bits(MacroAssembler::StoreStore), noreg); } +#endif set_card(card_table_base, card_table_addr, tmp); } }