OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
262 // simulated execution, so that the simulator can "return" to the native | 262 // simulated execution, so that the simulator can "return" to the native |
263 // C code. | 263 // C code. |
264 end_sim_pc = -2 | 264 end_sim_pc = -2 |
265 }; | 265 }; |
266 | 266 |
267 // Unsupported instructions use Format to print an error and stop execution. | 267 // Unsupported instructions use Format to print an error and stop execution. |
268 void Format(Instruction* instr, const char* format); | 268 void Format(Instruction* instr, const char* format); |
269 | 269 |
270 // Checks if the current instruction should be executed based on its | 270 // Checks if the current instruction should be executed based on its |
271 // condition bits. | 271 // condition bits. |
272 bool ConditionallyExecute(Instruction* instr); | 272 inline bool ConditionallyExecute(Instruction* instr); |
273 | 273 |
274 // Helper functions to set the conditional flags in the architecture state. | 274 // Helper functions to set the conditional flags in the architecture state. |
275 void SetNZFlags(int32_t val); | 275 void SetNZFlags(int32_t val); |
276 void SetCFlag(bool val); | 276 void SetCFlag(bool val); |
277 void SetVFlag(bool val); | 277 void SetVFlag(bool val); |
278 bool CarryFrom(int32_t left, int32_t right, int32_t carry = 0); | 278 bool CarryFrom(int32_t left, int32_t right, int32_t carry = 0); |
279 bool BorrowFrom(int32_t left, int32_t right); | 279 bool BorrowFrom(int32_t left, int32_t right); |
280 bool OverflowFrom(int32_t alu_out, | 280 bool OverflowFrom(int32_t alu_out, |
281 int32_t left, | 281 int32_t left, |
282 int32_t right, | 282 int32_t right, |
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
479 | 479 |
480 static inline void UnregisterCTryCatch() { | 480 static inline void UnregisterCTryCatch() { |
481 Simulator::current(Isolate::Current())->PopAddress(); | 481 Simulator::current(Isolate::Current())->PopAddress(); |
482 } | 482 } |
483 }; | 483 }; |
484 | 484 |
485 } } // namespace v8::internal | 485 } } // namespace v8::internal |
486 | 486 |
487 #endif // !defined(USE_SIMULATOR) | 487 #endif // !defined(USE_SIMULATOR) |
488 #endif // V8_ARM_SIMULATOR_ARM_H_ | 488 #endif // V8_ARM_SIMULATOR_ARM_H_ |
OLD | NEW |