135 FLAG_SET_DEFAULT(AllocatePrefetchStepSize, dcache_line); |
135 FLAG_SET_DEFAULT(AllocatePrefetchStepSize, dcache_line); |
136 if (FLAG_IS_DEFAULT(PrefetchScanIntervalInBytes)) |
136 if (FLAG_IS_DEFAULT(PrefetchScanIntervalInBytes)) |
137 FLAG_SET_DEFAULT(PrefetchScanIntervalInBytes, 3*dcache_line); |
137 FLAG_SET_DEFAULT(PrefetchScanIntervalInBytes, 3*dcache_line); |
138 if (FLAG_IS_DEFAULT(PrefetchCopyIntervalInBytes)) |
138 if (FLAG_IS_DEFAULT(PrefetchCopyIntervalInBytes)) |
139 FLAG_SET_DEFAULT(PrefetchCopyIntervalInBytes, 3*dcache_line); |
139 FLAG_SET_DEFAULT(PrefetchCopyIntervalInBytes, 3*dcache_line); |
|
140 if (FLAG_IS_DEFAULT(SoftwarePrefetchHintDistance)) |
|
141 FLAG_SET_DEFAULT(SoftwarePrefetchHintDistance, 3*dcache_line); |
140 |
142 |
141 if (PrefetchCopyIntervalInBytes != -1 && |
143 if (PrefetchCopyIntervalInBytes != -1 && |
142 ((PrefetchCopyIntervalInBytes & 7) || (PrefetchCopyIntervalInBytes >= 32768))) { |
144 ((PrefetchCopyIntervalInBytes & 7) || (PrefetchCopyIntervalInBytes >= 32768))) { |
143 warning("PrefetchCopyIntervalInBytes must be -1, or a multiple of 8 and < 32768"); |
145 warning("PrefetchCopyIntervalInBytes must be -1, or a multiple of 8 and < 32768"); |
144 PrefetchCopyIntervalInBytes &= ~7; |
146 PrefetchCopyIntervalInBytes &= ~7; |
145 if (PrefetchCopyIntervalInBytes >= 32768) |
147 if (PrefetchCopyIntervalInBytes >= 32768) |
146 PrefetchCopyIntervalInBytes = 32760; |
148 PrefetchCopyIntervalInBytes = 32760; |
|
149 } |
|
150 |
|
151 if (SoftwarePrefetchHintDistance != -1 && |
|
152 (SoftwarePrefetchHintDistance & 7)) { |
|
153 warning("SoftwarePrefetchHintDistance must be -1, or a multiple of 8"); |
|
154 SoftwarePrefetchHintDistance &= ~7; |
147 } |
155 } |
148 |
156 |
149 unsigned long auxv = getauxval(AT_HWCAP); |
157 unsigned long auxv = getauxval(AT_HWCAP); |
150 |
158 |
151 char buf[512]; |
159 char buf[512]; |