- Feb 15, 2011
-
-
Greg Clayton authored
now, in addition to cpu type/subtype and architecture flavor, contains: - byte order (big endian, little endian) - address size in bytes - llvm::Triple for true target triple support and for more powerful plug-in selection. llvm-svn: 125602
-
Johnny Chen authored
methods of EmulateInstructionARM class. The context data structure should provide sufficient information already. llvm-svn: 125596
-
Johnny Chen authored
llvm-svn: 125593
-
Johnny Chen authored
Add EmulateASRImm() Encodings T1, T2, and A1 to the opcodes tables. llvm-svn: 125592
-
Caroline Tice authored
Add code to emulate STMIB Arm instruction. llvm-svn: 125580
-
Caroline Tice authored
Add code to emulate STMDB Arm instruction. Add some bit-mask fixes to code for getting register bits for various LDM and STM instructions. llvm-svn: 125578
-
Johnny Chen authored
Add a bunch of utilities and an enum (ARM_ShifterType) for shift and rotate operations pertaining to: o A2.2.1 Pseudocode details of shift and rotate operations o A8.4.3 Pseudocode details of instruction-specified shifts and rotates llvm-svn: 125575
-
Johnny Chen authored
because it's already been done within ReadInstruction(). llvm-svn: 125569
-
Caroline Tice authored
Add code to emulate the STMDA Arm instruction. llvm-svn: 125542
-
Greg Clayton authored
ArchDefaultUnwindPlan plug-in interfaces are now cached per architecture instead of being leaked for every frame. Split the ArchDefaultUnwindPlan_x86 into ArchDefaultUnwindPlan_x86_64 and ArchDefaultUnwindPlan_i386 interfaces. There were sporadic crashes that were due to something leaking or being destroyed when doing stack crawls. This patch should clear up these issues. llvm-svn: 125541
-
Johnny Chen authored
llvm-svn: 125533
-
Johnny Chen authored
llvm-svn: 125531
-
Caroline Tice authored
various types and numbers of arguments rather than trying to keep a constant number of arguments for all the types. - Also create a Register type within the instructions, to hold register type and number. - Modify EmulateInstructionArm.cpp to use the new register and context types in all the instruction emulation functions. - Add code to emulate the STM Arm instruction. llvm-svn: 125528
-
- Feb 14, 2011
-
-
Johnny Chen authored
table. Modify EmulateInstructionARM::EvaluateInstruction() so that if the cpsr has changed during evaluate instruction, we flush out the change into m_inst_cpsr in preparation for the next instruction. llvm-svn: 125524
-
Johnny Chen authored
the context of eContextImmediate type, since the immediate value is known from the argument value to WriteRegisterUnsigned() callback already. llvm-svn: 125518
-
Johnny Chen authored
llvm-svn: 125509
-
Johnny Chen authored
an imm12 into imm32 for ARM or Thumb so that they now handle carry_in/carry_out. Funnel ARMExpandImm()/ThumbExpandImm() to the enhanced ARMExpandImm_C()/ThumbExpandImm_C() functions. llvm-svn: 125508
-
- Feb 12, 2011
-
-
Greg Clayton authored
are supported by the remote GDB target. We can also now deal with the lack of vCont support and send packets that the remote GDB stub can use. We also error out of the continue if LLDB tries to do something too complex when vCont isn't supported. llvm-svn: 125433
-
Johnny Chen authored
tables. The corresponding EmulateMvnRdImm() method impl is empty for now. llvm-svn: 125425
-
Johnny Chen authored
llvm-svn: 125423
-
Johnny Chen authored
instead of calling out to m_it_session.InITBlock()/LastInITBlock(), which simplifies the coding a bit. llvm-svn: 125421
-
Johnny Chen authored
llvm-svn: 125418
-
Johnny Chen authored
llvm-svn: 125416
-
- Feb 11, 2011
-
-
Caroline Tice authored
- Add three more instruction contexts to EmulateInstruction: eContextAdjustBaseRegister, eContextRegisterStore and eContextWriteMemoryRandomBits. - Implement a version of WriteBits32UnknownToMemory for writing to memory. - Modify EmulateLDM, EmulateLDMDA, EmulateLDMDB and EmulateLDMIB to use the eContextAdjustBaseRegister context when appropriate. - Add code to emulate the STM/STMIA/STMEA Arm instruction. llvm-svn: 125414
-
Johnny Chen authored
CMP (register) operations. llvm-svn: 125413
-
Johnny Chen authored
llvm-svn: 125405
-
Johnny Chen authored
llvm-svn: 125392
-
Johnny Chen authored
Change the method name from *LDRRdPCRelative to *LDRRtPCRelative to be compliant with the ARM Arch Manual which uses Rt for the destination register. llvm-svn: 125390
-
Johnny Chen authored
llvm-svn: 125379
-
Caroline Tice authored
Add new utility function, WriteBits32Unknown Modify the LDM* instruction emulation functions to call WriteBits32Unknown. Add missing overview comments to the LDM* instruction emulation functions. Add code to emulate LDMDA Arm instruction. llvm-svn: 125377
-
Johnny Chen authored
llvm-svn: 125333
-
Johnny Chen authored
llvm-svn: 125329
-
- Feb 10, 2011
-
-
Sean Callanan authored
- Objective-C constant strings were being NULL-terminated erroneously. - Empty Objective-C constant strings were not being generated correctly. Also added the template for a test of these fixes. llvm-svn: 125314
-
Johnny Chen authored
llvm-svn: 125313
-
Johnny Chen authored
SetBits32(uint32_t &bits, uint32_t bit, uint32_t val) to SetBit32(bits, bit, val). llvm-svn: 125312
-
Johnny Chen authored
Some refactorings to use the convenience function: Bits32(const uint32_t value, const uint32_t bit). llvm-svn: 125303
-
Johnny Chen authored
llvm-svn: 125302
-
Johnny Chen authored
table. Also add some more defines and convenience functions. llvm-svn: 125300
-
Johnny Chen authored
llvm-svn: 125295
-
Greg Clayton authored
llvm-svn: 125269
-