| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #include <stdarg.h> | 5 #include <stdarg.h> |
| 6 #include <stdlib.h> | 6 #include <stdlib.h> |
| 7 #include <cmath> | 7 #include <cmath> |
| 8 | 8 |
| 9 #if V8_TARGET_ARCH_ARM | 9 #if V8_TARGET_ARCH_ARM |
| 10 | 10 |
| (...skipping 3886 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3897 } | 3897 } |
| 3898 } | 3898 } |
| 3899 } else { | 3899 } else { |
| 3900 UNIMPLEMENTED(); | 3900 UNIMPLEMENTED(); |
| 3901 } | 3901 } |
| 3902 break; | 3902 break; |
| 3903 case 0xA: | 3903 case 0xA: |
| 3904 case 0xB: | 3904 case 0xB: |
| 3905 if ((instr->Bits(22, 20) == 5) && (instr->Bits(15, 12) == 0xf)) { | 3905 if ((instr->Bits(22, 20) == 5) && (instr->Bits(15, 12) == 0xf)) { |
| 3906 // pld: ignore instruction. | 3906 // pld: ignore instruction. |
| 3907 } else if (instr->SpecialValue() == 0xA && instr->Bits(22, 20) == 7) { |
| 3908 // dsb, dmb, isb: ignore instruction for now. |
| 3909 // TODO(binji): implement |
| 3907 } else { | 3910 } else { |
| 3908 UNIMPLEMENTED(); | 3911 UNIMPLEMENTED(); |
| 3909 } | 3912 } |
| 3910 break; | 3913 break; |
| 3911 case 0x1D: | 3914 case 0x1D: |
| 3912 if (instr->Opc1Value() == 0x7 && instr->Opc3Value() == 0x1 && | 3915 if (instr->Opc1Value() == 0x7 && instr->Opc3Value() == 0x1 && |
| 3913 instr->Bits(11, 9) == 0x5 && instr->Bits(19, 18) == 0x2) { | 3916 instr->Bits(11, 9) == 0x5 && instr->Bits(19, 18) == 0x2) { |
| 3914 if (instr->SzValue() == 0x1) { | 3917 if (instr->SzValue() == 0x1) { |
| 3915 int vm = instr->VFPMRegValue(kDoublePrecision); | 3918 int vm = instr->VFPMRegValue(kDoublePrecision); |
| 3916 int vd = instr->VFPDRegValue(kDoublePrecision); | 3919 int vd = instr->VFPDRegValue(kDoublePrecision); |
| (...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4215 set_register(sp, current_sp + sizeof(uintptr_t)); | 4218 set_register(sp, current_sp + sizeof(uintptr_t)); |
| 4216 return address; | 4219 return address; |
| 4217 } | 4220 } |
| 4218 | 4221 |
| 4219 } // namespace internal | 4222 } // namespace internal |
| 4220 } // namespace v8 | 4223 } // namespace v8 |
| 4221 | 4224 |
| 4222 #endif // USE_SIMULATOR | 4225 #endif // USE_SIMULATOR |
| 4223 | 4226 |
| 4224 #endif // V8_TARGET_ARCH_ARM | 4227 #endif // V8_TARGET_ARCH_ARM |
| OLD | NEW |