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 |