< prev index next >

src/hotspot/cpu/s390/s390.ad

Print this page

 1593   assert(MaxVectorSize == 8, "");
 1594   return 8;
 1595 }
 1596 
 1597 // Vector ideal reg.
 1598 const uint Matcher::vector_ideal_reg(int size) {
 1599   assert(MaxVectorSize == 8 && size == 8, "");
 1600   return Op_RegL;
 1601 }
 1602 
 1603 // Limits on vector size (number of elements) loaded into vector.
 1604 const int Matcher::max_vector_size(const BasicType bt) {
 1605   assert(is_java_primitive(bt), "only primitive type vectors");
 1606   return vector_width_in_bytes(bt)/type2aelembytes(bt);
 1607 }
 1608 
 1609 const int Matcher::min_vector_size(const BasicType bt) {
 1610   return max_vector_size(bt); // Same as max.
 1611 }
 1612 








 1613 // z/Architecture does support misaligned store/load at minimal extra cost.
 1614 const bool Matcher::misaligned_vectors_ok() {
 1615   return true;
 1616 }
 1617 
 1618 // Not yet ported to z/Architecture.
 1619 const bool Matcher::pass_original_key_for_aes() {
 1620   return false;
 1621 }
 1622 
 1623 // RETURNS: whether this branch offset is short enough that a short
 1624 // branch can be used.
 1625 //
 1626 // If the platform does not provide any short branch variants, then
 1627 // this method should return `false' for offset 0.
 1628 //
 1629 // `Compile::Fill_buffer' will decide on basis of this information
 1630 // whether to do the pass `Compile::Shorten_branches' at all.
 1631 //
 1632 // And `Compile::Shorten_branches' will decide on basis of this

 1593   assert(MaxVectorSize == 8, "");
 1594   return 8;
 1595 }
 1596 
 1597 // Vector ideal reg.
 1598 const uint Matcher::vector_ideal_reg(int size) {
 1599   assert(MaxVectorSize == 8 && size == 8, "");
 1600   return Op_RegL;
 1601 }
 1602 
 1603 // Limits on vector size (number of elements) loaded into vector.
 1604 const int Matcher::max_vector_size(const BasicType bt) {
 1605   assert(is_java_primitive(bt), "only primitive type vectors");
 1606   return vector_width_in_bytes(bt)/type2aelembytes(bt);
 1607 }
 1608 
 1609 const int Matcher::min_vector_size(const BasicType bt) {
 1610   return max_vector_size(bt); // Same as max.
 1611 }
 1612 
 1613 const bool Matcher::supports_scalable_vector() {
 1614   return false;
 1615 }
 1616 
 1617 const int Matcher::scalable_vector_reg_size(const BasicType bt) {
 1618   return -1;
 1619 }
 1620 
 1621 // z/Architecture does support misaligned store/load at minimal extra cost.
 1622 const bool Matcher::misaligned_vectors_ok() {
 1623   return true;
 1624 }
 1625 
 1626 // Not yet ported to z/Architecture.
 1627 const bool Matcher::pass_original_key_for_aes() {
 1628   return false;
 1629 }
 1630 
 1631 // RETURNS: whether this branch offset is short enough that a short
 1632 // branch can be used.
 1633 //
 1634 // If the platform does not provide any short branch variants, then
 1635 // this method should return `false' for offset 0.
 1636 //
 1637 // `Compile::Fill_buffer' will decide on basis of this information
 1638 // whether to do the pass `Compile::Shorten_branches' at all.
 1639 //
 1640 // And `Compile::Shorten_branches' will decide on basis of this
< prev index next >