History log of /llvm-project/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp (Results 276 – 300 of 396)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 5dcda643 04-Oct-2011 Kevin Enderby <enderby@apple.com>

Adding back support for printing operands symbolically to ARM's new disassembler
using llvm's public 'C' disassembler API now including annotations.

Hooked this up to Darwin's otool(1) so it can aga

Adding back support for printing operands symbolically to ARM's new disassembler
using llvm's public 'C' disassembler API now including annotations.

Hooked this up to Darwin's otool(1) so it can again print things like branch
targets for example this:
blx _puts
instead of this:
blx #-36
and includes support for annotations for branches to symbol stubs like:
bl 0x40 @ symbol stub for: _puts
and annotations for pc relative loads like this:
ldr r3, #8 @ literal pool for: Hello, world!
Also again can print the expression encoded in the Mach-O relocation entries for
things like this:
movt r0, :upper16:((_foo-_bar)+1234)

llvm-svn: 141129

show more ...


# efc761a1 30-Sep-2011 Jim Grosbach <grosbach@apple.com>

ARM fix encoding of VMOV.f32 and VMOV.f64 immediates.

Encode the immediate into its 8-bit form as part of isel rather than later,
which simplifies things for mapping the encoding bits, allows the re

ARM fix encoding of VMOV.f32 and VMOV.f64 immediates.

Encode the immediate into its 8-bit form as part of isel rather than later,
which simplifies things for mapping the encoding bits, allows the removal
of the custom disassembler decoding hook, makes the operand printer trivial,
and prepares things more cleanly for handling these in the asm parser.

rdar://10211428

llvm-svn: 140834

show more ...


# f01e2de5 26-Sep-2011 Owen Anderson <resistor@mac.com>

ASR #32 is not allowed on Thumb2 USAT and SSAT instructions.

llvm-svn: 140560


# 987a8789 23-Sep-2011 Owen Anderson <resistor@mac.com>

Reapply r140412 (Thumb2 reg-reg loads cannot target SP or PC), with invalid testcases updated.

llvm-svn: 140415


# ffa8428a 23-Sep-2011 Owen Anderson <resistor@mac.com>

Revert r140412. This affects more instructions than intended.

llvm-svn: 140413


# 7591d0c3 23-Sep-2011 Owen Anderson <resistor@mac.com>

Thumb2 register-shifted-register loads cannot target the PC or the SP.

llvm-svn: 140412


# 163be01d 19-Sep-2011 Owen Anderson <resistor@mac.com>

tMOVSr is not allowed in an IT block either.

llvm-svn: 140104


# 61e4604d 19-Sep-2011 Owen Anderson <resistor@mac.com>

CPS instructions are UNPREDICTABLE inside IT blocks.

llvm-svn: 140102


# f902d92f 19-Sep-2011 Owen Anderson <resistor@mac.com>

Thumb2 TBB and TBH instructions are only allowed at the end of IT blocks, not in the middle.

llvm-svn: 140079


# 05541f45 19-Sep-2011 Jim Grosbach <grosbach@apple.com>

Thumb2 assembly parsing and encoding for TBB/TBH.

llvm-svn: 140078


# ddfcec92 19-Sep-2011 Owen Anderson <resistor@mac.com>

Handle STRT (and friends) like LDRT (and friends) for decoding purposes. Port over additional encoding tests to decoding tests.

llvm-svn: 140032


# 502cd9d8 16-Sep-2011 Owen Anderson <resistor@mac.com>

Bitfield mask instructions are unpredictable if the encoded LSB is higher than the encoded MSB.

llvm-svn: 139972


# b925e935 16-Sep-2011 Owen Anderson <resistor@mac.com>

Fix bitfield decoding based on Eli's feedback.

llvm-svn: 139969


# bcfa9a6f 16-Sep-2011 Owen Anderson <resistor@mac.com>

Thumb2 pre-indexed loads/stores use the restricted GPR set for Rt.

llvm-svn: 139965


# 3ca958cd 16-Sep-2011 Owen Anderson <resistor@mac.com>

Fix disassembly of Thumb2 BFI instructions with bit range of [0, 32).

llvm-svn: 139964


# fe82365c 16-Sep-2011 Owen Anderson <resistor@mac.com>

Fix disassembly of Thumb2 LDRSH with a #-0 offset.

llvm-svn: 139943


# a0c3b972 15-Sep-2011 Owen Anderson <resistor@mac.com>

Don't attach annotations to MCInst's. Instead, have the disassembler return, and the printer accept, an annotation string which can be passed through if the client cares about annotations.

llvm-svn

Don't attach annotations to MCInst's. Instead, have the disassembler return, and the printer accept, an annotation string which can be passed through if the client cares about annotations.

llvm-svn: 139876

show more ...


# f1e38442 14-Sep-2011 Owen Anderson <resistor@mac.com>

Nested IT blocks are UNPREDICTABLE. Mark them as such when disassembling them.

llvm-svn: 139736


# a9ebf6fb 12-Sep-2011 Owen Anderson <resistor@mac.com>

Port more encoding tests to decoding tests, and correct an improper Thumb2 pre-indexed load decoding this uncovered.

llvm-svn: 139522


# 53db43b5 09-Sep-2011 Owen Anderson <resistor@mac.com>

LDM writeback is not allowed if Rn is in the target register list.

llvm-svn: 139432


# 5bfb0e0a 09-Sep-2011 Owen Anderson <resistor@mac.com>

Fix assembly/disassembly of Thumb2 ADR instructions with immediate operands.

llvm-svn: 139422


# 29cfe6c3 09-Sep-2011 Owen Anderson <resistor@mac.com>

Thumb unconditional branches are allowed in IT blocks, and therefore should have a predicate operand, unlike conditional branches.

llvm-svn: 139415


# a05627eb 09-Sep-2011 Jim Grosbach <grosbach@apple.com>

Thumb2 assembly parsing and encoding for LDREX/LDREXB/LDREXD/LDREXH.

llvm-svn: 139381


# 33d39536 08-Sep-2011 Owen Anderson <resistor@mac.com>

All conditional branches are disallowed in IT blocks, not just CBZ/CBNZ.

llvm-svn: 139329


# 2fefa427 08-Sep-2011 Owen Anderson <resistor@mac.com>

Soft fail CBZ/CBNZ in the disassembler if they appear inside an IT block.

llvm-svn: 139328


1...<<111213141516