bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/27066] New: [ARM] Unaligned LDRD instruction


From: kordalski.wojciech at gmail dot com
Subject: [Bug gas/27066] New: [ARM] Unaligned LDRD instruction
Date: Sun, 13 Dec 2020 23:19:30 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=27066

            Bug ID: 27066
           Summary: [ARM] Unaligned LDRD instruction
           Product: binutils
           Version: 2.35.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: kordalski.wojciech at gmail dot com
  Target Milestone: ---

Created attachment 13049
  --> https://sourceware.org/bugzilla/attachment.cgi?id=13049&action=edit
The minimal example

During research of ARM Cortex-M3-based processor for our master thesis, we
found a bug (using a tool that generates random-but-correct sequences of
assembly instructions).

Minimal example:

    .syntax unified
    .cpu cortex-m3
    .thumb

    .align 2
    .type f1, %function
    .thumb_func
    f1:
        nop.n
        ldrd.w r0, r1, data

    .align 4
    data:
        .word 42
        .word 77

The code is assembled without any warning or error message using command:
arm-none-eabi-as -o test.o test.s -mcpu=cortex-m3

However, the ARMv7-M Architecture Reference Manual states:

    For the M profile, the PC value must be word-aligned, otherwise the
behavior of the instruction is UNPREDICTABLE.

(Section A7.7.51 LDRD (literal), page A7-259)

The ARMv7-M Architecture Reference Manual can be downloaded from:
https://static.docs.arm.com/ddi0403/ed/DDI0403E_d_armv7m_arm.pdf

Expected behavior: the assembler should print a warning or error message

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]