| OLD | NEW |
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_S390_MACRO_ASSEMBLER_S390_H_ | 5 #ifndef V8_S390_MACRO_ASSEMBLER_S390_H_ |
| 6 #define V8_S390_MACRO_ASSEMBLER_S390_H_ | 6 #define V8_S390_MACRO_ASSEMBLER_S390_H_ |
| 7 | 7 |
| 8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
| 9 #include "src/bailout-reason.h" | 9 #include "src/bailout-reason.h" |
| 10 #include "src/frames.h" | 10 #include "src/frames.h" |
| (...skipping 1162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1173 Register scratch, DoubleRegister double_scratch); | 1173 Register scratch, DoubleRegister double_scratch); |
| 1174 | 1174 |
| 1175 // Floor a double and writes the value to the result register. | 1175 // Floor a double and writes the value to the result register. |
| 1176 // Go to exact if the conversion is exact (to be able to test -0), | 1176 // Go to exact if the conversion is exact (to be able to test -0), |
| 1177 // fall through calling code if an overflow occurred, else go to done. | 1177 // fall through calling code if an overflow occurred, else go to done. |
| 1178 // In return, input_high is loaded with high bits of input. | 1178 // In return, input_high is loaded with high bits of input. |
| 1179 void TryInt32Floor(Register result, DoubleRegister double_input, | 1179 void TryInt32Floor(Register result, DoubleRegister double_input, |
| 1180 Register input_high, Register scratch, | 1180 Register input_high, Register scratch, |
| 1181 DoubleRegister double_scratch, Label* done, Label* exact); | 1181 DoubleRegister double_scratch, Label* done, Label* exact); |
| 1182 | 1182 |
| 1183 // Perform ceiling of float in input_register and store in double_output. | |
| 1184 void FloatCeiling32(DoubleRegister double_output, DoubleRegister double_input, | |
| 1185 Register scratch, DoubleRegister double_scratch); | |
| 1186 | |
| 1187 // Perform floor of float in input_register and store in double_output. | |
| 1188 void FloatFloor32(DoubleRegister double_output, DoubleRegister double_input, | |
| 1189 Register scratch); | |
| 1190 | |
| 1191 // Perform ceiling of double in input_register and store in double_output. | |
| 1192 void FloatCeiling64(DoubleRegister double_output, DoubleRegister double_input, | |
| 1193 Register scratch, DoubleRegister double_scratch); | |
| 1194 | |
| 1195 // Perform floor of double in input_register and store in double_output. | |
| 1196 void FloatFloor64(DoubleRegister double_output, DoubleRegister double_input, | |
| 1197 Register scratch); | |
| 1198 | |
| 1199 // Performs a truncating conversion of a floating point number as used by | 1183 // Performs a truncating conversion of a floating point number as used by |
| 1200 // the JS bitwise operations. See ECMA-262 9.5: ToInt32. Goes to 'done' if it | 1184 // the JS bitwise operations. See ECMA-262 9.5: ToInt32. Goes to 'done' if it |
| 1201 // succeeds, otherwise falls through if result is saturated. On return | 1185 // succeeds, otherwise falls through if result is saturated. On return |
| 1202 // 'result' either holds answer, or is clobbered on fall through. | 1186 // 'result' either holds answer, or is clobbered on fall through. |
| 1203 // | 1187 // |
| 1204 // Only public for the test code in test-code-stubs-arm.cc. | 1188 // Only public for the test code in test-code-stubs-arm.cc. |
| 1205 void TryInlineTruncateDoubleToI(Register result, DoubleRegister input, | 1189 void TryInlineTruncateDoubleToI(Register result, DoubleRegister input, |
| 1206 Label* done); | 1190 Label* done); |
| 1207 | 1191 |
| 1208 // Performs a truncating conversion of a floating point number as used by | 1192 // Performs a truncating conversion of a floating point number as used by |
| (...skipping 686 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1895 #define ACCESS_MASM(masm) \ | 1879 #define ACCESS_MASM(masm) \ |
| 1896 masm->stop(__FILE_LINE__); \ | 1880 masm->stop(__FILE_LINE__); \ |
| 1897 masm-> | 1881 masm-> |
| 1898 #else | 1882 #else |
| 1899 #define ACCESS_MASM(masm) masm-> | 1883 #define ACCESS_MASM(masm) masm-> |
| 1900 #endif | 1884 #endif |
| 1901 } // namespace internal | 1885 } // namespace internal |
| 1902 } // namespace v8 | 1886 } // namespace v8 |
| 1903 | 1887 |
| 1904 #endif // V8_S390_MACRO_ASSEMBLER_S390_H_ | 1888 #endif // V8_S390_MACRO_ASSEMBLER_S390_H_ |
| OLD | NEW |