1910 1911 const int Matcher::float_pressure(int default_pressure_threshold) { 1912 return default_pressure_threshold; 1913 } 1914 1915 int Matcher::regnum_to_fpu_offset(int regnum) { 1916 return regnum - 32; // The FP registers are in the second chunk 1917 } 1918 1919 #ifdef ASSERT 1920 address last_rethrow = NULL; // debugging aid for Rethrow encoding 1921 #endif 1922 1923 // Vector width in bytes 1924 const int Matcher::vector_width_in_bytes(BasicType bt) { 1925 assert(MaxVectorSize == 8, ""); 1926 return 8; 1927 } 1928 1929 // Vector ideal reg 1930 const int Matcher::vector_ideal_reg(int size) { 1931 assert(MaxVectorSize == 8, ""); 1932 return Op_RegD; 1933 } 1934 1935 const int Matcher::vector_shift_count_ideal_reg(int size) { 1936 fatal("vector shift is not supported"); 1937 return Node::NotAMachineReg; 1938 } 1939 1940 // Limits on vector size (number of elements) loaded into vector. 1941 const int Matcher::max_vector_size(const BasicType bt) { 1942 assert(is_java_primitive(bt), "only primitive type vectors"); 1943 return vector_width_in_bytes(bt)/type2aelembytes(bt); 1944 } 1945 1946 const int Matcher::min_vector_size(const BasicType bt) { 1947 return max_vector_size(bt); // Same as max. 1948 } 1949 1950 // SPARC doesn't support misaligned vectors store/load. 1951 const bool Matcher::misaligned_vectors_ok() { 1952 return false; 1953 } 1954 1955 // Current (2013) SPARC platforms need to read original key 1956 // to construct decryption expanded key 1957 const bool Matcher::pass_original_key_for_aes() { | 1910 1911 const int Matcher::float_pressure(int default_pressure_threshold) { 1912 return default_pressure_threshold; 1913 } 1914 1915 int Matcher::regnum_to_fpu_offset(int regnum) { 1916 return regnum - 32; // The FP registers are in the second chunk 1917 } 1918 1919 #ifdef ASSERT 1920 address last_rethrow = NULL; // debugging aid for Rethrow encoding 1921 #endif 1922 1923 // Vector width in bytes 1924 const int Matcher::vector_width_in_bytes(BasicType bt) { 1925 assert(MaxVectorSize == 8, ""); 1926 return 8; 1927 } 1928 1929 // Vector ideal reg 1930 const Opcodes Matcher::vector_ideal_reg(int size) { 1931 assert(MaxVectorSize == 8, ""); 1932 return Opcodes::Op_RegD; 1933 } 1934 1935 const Opcodes Matcher::vector_shift_count_ideal_reg(int size) { 1936 fatal("vector shift is not supported"); 1937 return Opcodes::NotAMachineReg; 1938 } 1939 1940 // Limits on vector size (number of elements) loaded into vector. 1941 const int Matcher::max_vector_size(const BasicType bt) { 1942 assert(is_java_primitive(bt), "only primitive type vectors"); 1943 return vector_width_in_bytes(bt)/type2aelembytes(bt); 1944 } 1945 1946 const int Matcher::min_vector_size(const BasicType bt) { 1947 return max_vector_size(bt); // Same as max. 1948 } 1949 1950 // SPARC doesn't support misaligned vectors store/load. 1951 const bool Matcher::misaligned_vectors_ok() { 1952 return false; 1953 } 1954 1955 // Current (2013) SPARC platforms need to read original key 1956 // to construct decryption expanded key 1957 const bool Matcher::pass_original_key_for_aes() { |