1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/MC/Disassembler/ARM/addrmode2-reencoding.txt
Saleem Abdulrasool 1a40ebc0d6 ARM: change implicit immediate forms of {ld,st}r{,b}t to psuedo-instructions
The implicit immediate 0 forms are assembly aliases, not distinct instruction
encodings.  Fix the initial implementation introduced in r198914 to an alias to
avoid two separate instruction definitions for the same encoding.

An InstAlias is insufficient in this case as the necessary due to the need to
add a new additional operand for the implicit zero.  By using the AsmPsuedoInst,
fall back to the C++ code to transform the instruction to the equivalent
_POST_IMM form, inserting the additional implicit immediate 0.

llvm-svn: 199032
2014-01-12 04:36:01 +00:00

13 lines
416 B
Plaintext

# RUN: llvm-mc -triple armv7 -show-encoding -disassemble < %s | FileCheck %s
0x00 0x10 0xb0 0xe4
0x00 0x10 0xf0 0xe4
0x00 0x10 0xa0 0xe4
0x00 0x10 0xe0 0xe4
# CHECK: ldrt r1, [r0], #0 @ encoding: [0x00,0x10,0xb0,0xe4]
# CHECK: ldrbt r1, [r0], #0 @ encoding: [0x00,0x10,0xf0,0xe4]
# CHECK: strt r1, [r0], #0 @ encoding: [0x00,0x10,0xa0,0xe4]
# CHECK: strbt r1, [r0], #0 @ encoding: [0x00,0x10,0xe0,0xe4]