comparison src/share/vm/oops/oop.hpp @ 2273:2ab52cda08e5

Merge with OpenJDK.
author Thomas Wuerthinger <thomas.wuerthinger@gmail.com>
date Thu, 03 Mar 2011 19:25:53 +0100
parents e5383553fd4e
children c7f3d0b4570f
comparison
equal deleted inserted replaced
2219:0a14ff0a8cc4 2273:2ab52cda08e5
1 /* 1 /*
2 * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1997, 2011, 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.
69 69
70 // Fast access to barrier set. Must be initialized. 70 // Fast access to barrier set. Must be initialized.
71 static BarrierSet* _bs; 71 static BarrierSet* _bs;
72 72
73 public: 73 public:
74 enum ConcSafeType {
75 IsUnsafeConc = false,
76 IsSafeConc = true
77 };
78
74 markOop mark() const { return _mark; } 79 markOop mark() const { return _mark; }
75 markOop* mark_addr() const { return (markOop*) &_mark; } 80 markOop* mark_addr() const { return (markOop*) &_mark; }
76 81
77 void set_mark(volatile markOop m) { _mark = m; } 82 void set_mark(volatile markOop m) { _mark = m; }
78 83
315 // Parallel Scavenge 320 // Parallel Scavenge
316 void push_contents(PSPromotionManager* pm); 321 void push_contents(PSPromotionManager* pm);
317 322
318 // Parallel Old 323 // Parallel Old
319 void update_contents(ParCompactionManager* cm); 324 void update_contents(ParCompactionManager* cm);
320 void update_contents(ParCompactionManager* cm,
321 HeapWord* begin_limit,
322 HeapWord* end_limit);
323 void update_contents(ParCompactionManager* cm,
324 klassOop old_klass,
325 HeapWord* begin_limit,
326 HeapWord* end_limit);
327 325
328 void follow_contents(ParCompactionManager* cm); 326 void follow_contents(ParCompactionManager* cm);
329 void follow_header(ParCompactionManager* cm); 327 void follow_header(ParCompactionManager* cm);
330 #endif // SERIALGC 328 #endif // SERIALGC
331 329
362 void adjust_header(); 360 void adjust_header();
363 361
364 #ifndef SERIALGC 362 #ifndef SERIALGC
365 // Parallel old 363 // Parallel old
366 void update_header(); 364 void update_header();
367 void update_header(HeapWord* beg_addr, HeapWord* end_addr);
368 #endif // SERIALGC 365 #endif // SERIALGC
369 366
370 // mark-sweep support 367 // mark-sweep support
371 void follow_body(int begin, int end); 368 void follow_body(int begin, int end);
372 369