bug-binutils
[Top][All Lists]
Advanced

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

[Bug gas/27065] New: [ARM] If-Then instruction and .align directive


From: kordalski.wojciech at gmail dot com
Subject: [Bug gas/27065] New: [ARM] If-Then instruction and .align directive
Date: Sun, 13 Dec 2020 22:18:07 +0000

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

            Bug ID: 27065
           Summary: [ARM] If-Then instruction and .align directive
           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 13048
  --> https://sourceware.org/bugzilla/attachment.cgi?id=13048&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 would be:

    .syntax unified
    .thumb

    .align 2
    .type f1, %function
    .thumb_func
    f1:
        it eq
        .align 2
        moveq r0, 42

This code can be assembled successfully with: arm-none-eabi-as -o test.o test.s

After disassembly we get following listing:

  test.o:     file format elf32-littlearm


  Disassembly of section .text:

  00000000 <f1>:
     0:   bf08          it      eq
     2:   46c0          nopeq                   ; (mov r8, r8)
     4:   202a          movs    r0, #42 ; 0x2a
     6:   46c0          nop                     ; (mov r8, r8)

The If-Then instruction became applied to NOP instruction (and not to MOV
instruction).

Expected behavior: MOV instruction become conditionally executed (assembler
should modify the If-Then instruction) or assembler prints a warning message
that MOV instruction has specified condition code, but it is not inside an IT
block.

-- 
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]