[Top][All Lists]

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

[Bug gas/29494] Trailing jump table leads to "Error: unaligned opcodes d

From: nickc at redhat dot com
Subject: [Bug gas/29494] Trailing jump table leads to "Error: unaligned opcodes detected in executable segment" on ARM thumb
Date: Wed, 17 Aug 2022 14:30:55 +0000


Nick Clifton <nickc at redhat dot com> changed:

           What    |Removed                     |Added
                 CC|                            |nickc at redhat dot com

--- Comment #1 from Nick Clifton <nickc at redhat dot com> ---
Hi Angus,

  Hmmm, this is a tricky one.

  The easiest solution for us would be to have gcc always ensure that the end
of the jump table is aligned to a 2-byte boundary.  (It does this if the table
is in the middle of the code, so why not at the end as well ?)

  Since that is unlikely to happen ... the next easiest thing to do would be to
downgrade the error message to a warning message.  But users will still
complain, even if they are now getting working binaries.

  The problem is - how can the assembler determine that this is the last byte
of a code section, and that it is an offset byte and not an instruction.  Not a
simple task.  Also we really need a generic solution since there is no reason
why this should just be an ARM specific problem.

  Hmmm - do we know if .cfi_endproc will always appear at the end of a function
?  If so then maybe that pseudo-op could be extended to align the end of the
function up to the next suitable boundary ?  I think that I need to think on
this some more...


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]