Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.hpp @ 17937:78bbf4d43a14
8037816: Fix for 8036122 breaks build with Xcode5/clang
8043029: Change 8037816 breaks HS build with older GCC versions which don't support diagnostic pragmas
8043164: Format warning in traceStream.hpp
Summary: Backport of main fix + two corrections, enables clang compilation, turns on format attributes, corrects/mutes warnings
Reviewed-by: kvn, coleenp, iveresov, twisti
author | drchase |
---|---|
date | Thu, 22 May 2014 15:52:41 -0400 |
parents | 10f759898d40 |
children |
comparison
equal
deleted
inserted
replaced
17935:7384f6a12fc1 | 17937:78bbf4d43a14 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
153 // HeapWords, or the specified region. | 153 // HeapWords, or the specified region. |
154 static inline idx_t bits_required(size_t words); | 154 static inline idx_t bits_required(size_t words); |
155 static inline idx_t bits_required(MemRegion covered_region); | 155 static inline idx_t bits_required(MemRegion covered_region); |
156 | 156 |
157 void print_on_error(outputStream* st) const { | 157 void print_on_error(outputStream* st) const { |
158 st->print_cr("Marking Bits: (ParMarkBitMap*) " PTR_FORMAT, this); | 158 st->print_cr("Marking Bits: (ParMarkBitMap*) " PTR_FORMAT, p2i(this)); |
159 _beg_bits.print_on_error(st, " Begin Bits: "); | 159 _beg_bits.print_on_error(st, " Begin Bits: "); |
160 _end_bits.print_on_error(st, " End Bits: "); | 160 _end_bits.print_on_error(st, " End Bits: "); |
161 } | 161 } |
162 | 162 |
163 #ifdef ASSERT | 163 #ifdef ASSERT |
388 } | 388 } |
389 | 389 |
390 inline void ParMarkBitMap::verify_addr(HeapWord* addr) const { | 390 inline void ParMarkBitMap::verify_addr(HeapWord* addr) const { |
391 // Allow one past the last valid address; useful for loop bounds. | 391 // Allow one past the last valid address; useful for loop bounds. |
392 assert(addr >= region_start(), | 392 assert(addr >= region_start(), |
393 err_msg("addr too small, addr: " PTR_FORMAT " region start: " PTR_FORMAT, addr, region_start())); | 393 err_msg("addr too small, addr: " PTR_FORMAT " region start: " PTR_FORMAT, p2i(addr), p2i(region_start()))); |
394 assert(addr <= region_end(), | 394 assert(addr <= region_end(), |
395 err_msg("addr too big, addr: " PTR_FORMAT " region end: " PTR_FORMAT, addr, region_end())); | 395 err_msg("addr too big, addr: " PTR_FORMAT " region end: " PTR_FORMAT, p2i(addr), p2i(region_end()))); |
396 } | 396 } |
397 #endif // #ifdef ASSERT | 397 #endif // #ifdef ASSERT |
398 | 398 |
399 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARMARKBITMAP_HPP | 399 #endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PARMARKBITMAP_HPP |