001/* 002 * This file is part of the Jikes RVM project (http://jikesrvm.org). 003 * 004 * This file is licensed to You under the Eclipse Public License (EPL); 005 * You may not use this file except in compliance with the License. You 006 * may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/eclipse-1.0.php 009 * 010 * See the COPYRIGHT.txt file distributed with this work for information 011 * regarding copyright ownership. 012 */ 013package org.mmtk.plan.semispace.usePrimitiveWriteBarriers; 014 015import org.mmtk.plan.semispace.SSConstraints; 016import org.vmmagic.pragma.*; 017 018/** 019 * UsePrimitiveWriteBarriers common constants. 020 */ 021@Uninterruptible 022public class UsePrimitiveWriteBarriersConstraints extends SSConstraints { 023 024 @Override 025 public boolean needsBooleanWriteBarrier() { 026 return true; 027 } 028 029 @Override 030 public boolean booleanBulkCopySupported() { 031 return true; 032 } 033 034 @Override 035 public boolean needsByteWriteBarrier() { 036 return true; 037 } 038 039 @Override 040 public boolean byteBulkCopySupported() { 041 return true; 042 } 043 044 @Override 045 public boolean needsCharWriteBarrier() { 046 return true; 047 } 048 049 @Override 050 public boolean charBulkCopySupported() { 051 return true; 052 } 053 054 @Override 055 public boolean needsShortWriteBarrier() { 056 return true; 057 } 058 059 @Override 060 public boolean shortBulkCopySupported() { 061 return true; 062 } 063 064 @Override 065 public boolean needsIntWriteBarrier() { 066 return true; 067 } 068 069 @Override 070 public boolean intBulkCopySupported() { 071 return true; 072 } 073 074 @Override 075 public boolean needsLongWriteBarrier() { 076 return true; 077 } 078 079 @Override 080 public boolean longBulkCopySupported() { 081 return true; 082 } 083 084 @Override 085 public boolean needsFloatWriteBarrier() { 086 return true; 087 } 088 089 @Override 090 public boolean floatBulkCopySupported() { 091 return true; 092 } 093 094 @Override 095 public boolean needsDoubleWriteBarrier() { 096 return true; 097 } 098 099 @Override 100 public boolean doubleBulkCopySupported() { 101 return true; 102 } 103 104 @Override 105 public boolean needsWordWriteBarrier() { 106 return true; 107 } 108 109 @Override 110 public boolean needsAddressWriteBarrier() { 111 return true; 112 } 113 114 @Override 115 public boolean needsExtentWriteBarrier() { 116 return true; 117 } 118 119 @Override 120 public boolean needsOffsetWriteBarrier() { 121 return true; 122 } 123 124}