Skip to content

ARM assertion failed when disassembling LDM & STM #9547

@llvmbot

Description

@llvmbot
Bugzilla Link 9175
Resolution WORKSFORME
Resolved on Apr 26, 2011 12:07
Version trunk
OS Linux
Attachments possible fix
Reporter LLVM Bugzilla Contributor
CC @efriedma-quic

Extended Description

Message:

================

$ echo '0x10 0x00 0x93 0xe8'|Debug+Asserts/bin/llvm-mc -arch=arm --disassemble -debug
Args: Debug+Asserts/bin/llvm-mc -arch=arm --disassemble -debug
Opcode=130 Name=LDMIA Format=ARM_FORMAT_LDSTMULFRM(10)
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

| 1: 1: 1: 0| 1: 0: 0: 0| 1: 0: 0: 1| 0: 0: 1: 1| 0: 0: 0: 0| 0: 0: 0: 0| 0: 0: 0: 1| 0: 0: 0: 0|

llvm-mc: /home/jyyou/src/llvm-trunk/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp:1241: bool DisassembleLdStMulFrm(llvm::MCInst&, unsigned int, uint32_t, short unsigned int, unsigned int&, llvm::ARMBasicMCBuilder*): Assertion `NumOps >= 5 && "LdStMulFrm expects NumOps >= 5"' failed.

================

It works fine while changing NumOps >= 5 into NumOps >= 4.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions