| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 974 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 985 } else if (!instr->HasW() && (instr->Bits(6, 4) == 0x1)) { | 985 } else if (!instr->HasW() && (instr->Bits(6, 4) == 0x1)) { |
| 986 uint32_t lsbit = static_cast<uint32_t>(instr->Bits(11, 7)); | 986 uint32_t lsbit = static_cast<uint32_t>(instr->Bits(11, 7)); |
| 987 uint32_t msbit = static_cast<uint32_t>(instr->Bits(20, 16)); | 987 uint32_t msbit = static_cast<uint32_t>(instr->Bits(20, 16)); |
| 988 if (msbit >= lsbit) { | 988 if (msbit >= lsbit) { |
| 989 if (instr->RmValue() == 15) { | 989 if (instr->RmValue() == 15) { |
| 990 Format(instr, "bfc'cond 'rd, 'f"); | 990 Format(instr, "bfc'cond 'rd, 'f"); |
| 991 } else { | 991 } else { |
| 992 Format(instr, "bfi'cond 'rd, 'rm, 'f"); | 992 Format(instr, "bfi'cond 'rd, 'rm, 'f"); |
| 993 } | 993 } |
| 994 } else { | 994 } else { |
| 995 PrintF("%08x\n", instr->InstructionBits()); |
| 995 UNREACHABLE(); | 996 UNREACHABLE(); |
| 996 } | 997 } |
| 997 } else { | 998 } else { |
| 998 Format(instr, "'memop'cond'b 'rd, ['rn, +'shift_rm]'w"); | 999 Format(instr, "'memop'cond'b 'rd, ['rn, +'shift_rm]'w"); |
| 999 } | 1000 } |
| 1000 break; | 1001 break; |
| 1001 } | 1002 } |
| 1002 default: { | 1003 default: { |
| 1003 // The PU field is a 2-bit field. | 1004 // The PU field is a 2-bit field. |
| 1004 UNREACHABLE(); | 1005 UNREACHABLE(); |
| (...skipping 492 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1497 pc += d.InstructionDecode(buffer, pc); | 1498 pc += d.InstructionDecode(buffer, pc); |
| 1498 fprintf(f, "%p %08x %s\n", | 1499 fprintf(f, "%p %08x %s\n", |
| 1499 prev_pc, *reinterpret_cast<int32_t*>(prev_pc), buffer.start()); | 1500 prev_pc, *reinterpret_cast<int32_t*>(prev_pc), buffer.start()); |
| 1500 } | 1501 } |
| 1501 } | 1502 } |
| 1502 | 1503 |
| 1503 | 1504 |
| 1504 } // namespace disasm | 1505 } // namespace disasm |
| 1505 | 1506 |
| 1506 #endif // V8_TARGET_ARCH_ARM | 1507 #endif // V8_TARGET_ARCH_ARM |
| OLD | NEW |