Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(135)

Side by Side Diff: src/mips64/simulator-mips64.h

Issue 1488613007: MIPS: Correct handling of Nan values on MIPS R6 (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 5
6 // Declares a Simulator for MIPS instructions if we are not generating a native 6 // Declares a Simulator for MIPS instructions if we are not generating a native
7 // MIPS binary. This Simulator allows us to run and debug MIPS code generation 7 // MIPS binary. This Simulator allows us to run and debug MIPS code generation
8 // on regular desktop machines. 8 // on regular desktop machines.
9 // V8 calls into generated code by "calling" the CALL_GENERATED_CODE macro, 9 // V8 calls into generated code by "calling" the CALL_GENERATED_CODE macro,
10 // which will start execution in the Simulator or forwards to the real entry 10 // which will start execution in the Simulator or forwards to the real entry
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 void set_register_word(int reg, int32_t value); 195 void set_register_word(int reg, int32_t value);
196 void set_dw_register(int dreg, const int* dbl); 196 void set_dw_register(int dreg, const int* dbl);
197 int64_t get_register(int reg) const; 197 int64_t get_register(int reg) const;
198 double get_double_from_register_pair(int reg); 198 double get_double_from_register_pair(int reg);
199 // Same for FPURegisters. 199 // Same for FPURegisters.
200 void set_fpu_register(int fpureg, int64_t value); 200 void set_fpu_register(int fpureg, int64_t value);
201 void set_fpu_register_word(int fpureg, int32_t value); 201 void set_fpu_register_word(int fpureg, int32_t value);
202 void set_fpu_register_hi_word(int fpureg, int32_t value); 202 void set_fpu_register_hi_word(int fpureg, int32_t value);
203 void set_fpu_register_float(int fpureg, float value); 203 void set_fpu_register_float(int fpureg, float value);
204 void set_fpu_register_double(int fpureg, double value); 204 void set_fpu_register_double(int fpureg, double value);
205 void set_fpu_register_invalid_result64(float original, float rounded);
206 void set_fpu_register_invalid_result(float original, float rounded);
207 void set_fpu_register_word_invalid_result(float original, float rounded);
208 void set_fpu_register_invalid_result64(double original, double rounded);
209 void set_fpu_register_invalid_result(double original, double rounded);
210 void set_fpu_register_word_invalid_result(double original, double rounded);
205 int64_t get_fpu_register(int fpureg) const; 211 int64_t get_fpu_register(int fpureg) const;
206 int32_t get_fpu_register_word(int fpureg) const; 212 int32_t get_fpu_register_word(int fpureg) const;
207 int32_t get_fpu_register_signed_word(int fpureg) const; 213 int32_t get_fpu_register_signed_word(int fpureg) const;
208 int32_t get_fpu_register_hi_word(int fpureg) const; 214 int32_t get_fpu_register_hi_word(int fpureg) const;
209 float get_fpu_register_float(int fpureg) const; 215 float get_fpu_register_float(int fpureg) const;
210 double get_fpu_register_double(int fpureg) const; 216 double get_fpu_register_double(int fpureg) const;
211 void set_fcsr_bit(uint32_t cc, bool value); 217 void set_fcsr_bit(uint32_t cc, bool value);
212 bool test_fcsr_bit(uint32_t cc); 218 bool test_fcsr_bit(uint32_t cc);
213 bool set_fcsr_round_error(double original, double rounded); 219 bool set_fcsr_round_error(double original, double rounded);
214 bool set_fcsr_round64_error(double original, double rounded); 220 bool set_fcsr_round64_error(double original, double rounded);
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 static inline void UnregisterCTryCatch(Isolate* isolate) { 537 static inline void UnregisterCTryCatch(Isolate* isolate) {
532 Simulator::current(isolate)->PopAddress(); 538 Simulator::current(isolate)->PopAddress();
533 } 539 }
534 }; 540 };
535 541
536 } // namespace internal 542 } // namespace internal
537 } // namespace v8 543 } // namespace v8
538 544
539 #endif // !defined(USE_SIMULATOR) 545 #endif // !defined(USE_SIMULATOR)
540 #endif // V8_MIPS_SIMULATOR_MIPS_H_ 546 #endif // V8_MIPS_SIMULATOR_MIPS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698