2323 }
2324 }
2325
2326 const uint Matcher::vector_shift_count_ideal_reg(int size) {
2327 fatal("vector shift is not supported");
2328 return Node::NotAMachineReg;
2329 }
2330
2331 // Limits on vector size (number of elements) loaded into vector.
2332 const int Matcher::max_vector_size(const BasicType bt) {
2333 assert(is_java_primitive(bt), "only primitive type vectors");
2334 return vector_width_in_bytes(bt)/type2aelembytes(bt);
2335 }
2336
2337 const int Matcher::min_vector_size(const BasicType bt) {
2338 return max_vector_size(bt); // Same as max.
2339 }
2340
2341 // PPC doesn't support misaligned vectors store/load.
2342 const bool Matcher::misaligned_vectors_ok() {
2343 return !AlignVector; // can be changed by flag
2344 }
2345
2346 // PPC AES support not yet implemented
2347 const bool Matcher::pass_original_key_for_aes() {
2348 return false;
2349 }
2350
2351 // RETURNS: whether this branch offset is short enough that a short
2352 // branch can be used.
2353 //
2354 // If the platform does not provide any short branch variants, then
2355 // this method should return `false' for offset 0.
2356 //
2357 // `Compile::Fill_buffer' will decide on basis of this information
2358 // whether to do the pass `Compile::Shorten_branches' at all.
2359 //
2360 // And `Compile::Shorten_branches' will decide on basis of this
2361 // information whether to replace particular branch sites by short
2362 // ones.
2363 bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) {
|
2323 }
2324 }
2325
2326 const uint Matcher::vector_shift_count_ideal_reg(int size) {
2327 fatal("vector shift is not supported");
2328 return Node::NotAMachineReg;
2329 }
2330
2331 // Limits on vector size (number of elements) loaded into vector.
2332 const int Matcher::max_vector_size(const BasicType bt) {
2333 assert(is_java_primitive(bt), "only primitive type vectors");
2334 return vector_width_in_bytes(bt)/type2aelembytes(bt);
2335 }
2336
2337 const int Matcher::min_vector_size(const BasicType bt) {
2338 return max_vector_size(bt); // Same as max.
2339 }
2340
2341 // PPC doesn't support misaligned vectors store/load.
2342 const bool Matcher::misaligned_vectors_ok() {
2343 return false;
2344 }
2345
2346 // PPC AES support not yet implemented
2347 const bool Matcher::pass_original_key_for_aes() {
2348 return false;
2349 }
2350
2351 // RETURNS: whether this branch offset is short enough that a short
2352 // branch can be used.
2353 //
2354 // If the platform does not provide any short branch variants, then
2355 // this method should return `false' for offset 0.
2356 //
2357 // `Compile::Fill_buffer' will decide on basis of this information
2358 // whether to do the pass `Compile::Shorten_branches' at all.
2359 //
2360 // And `Compile::Shorten_branches' will decide on basis of this
2361 // information whether to replace particular branch sites by short
2362 // ones.
2363 bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) {
|