bug-binutils
[Top][All Lists]
Advanced

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

[Bug gas/25264] RISC-V option norvc: linker complains "14 bytes required


From: wilson at gcc dot gnu.org
Subject: [Bug gas/25264] RISC-V option norvc: linker complains "14 bytes required for alignment to 16-byte boundary, but only 12 present"
Date: Tue, 10 Dec 2019 19:29:31 +0000

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

Jim Wilson <wilson at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |wilson at gcc dot gnu.org

--- Comment #1 from Jim Wilson <wilson at gcc dot gnu.org> ---
This is a known problem.  There is a proposal to the psABI to add new
relocations to help fix it, but there is no timetable for a fix.

One workaround is to make sure that you align before disabling rvc mode.  It
you do
  .option norvc
  .balign 16
add you need a 2-byte nop, then you have a problem, because we can't emit a
2-byte nop in norvc mode.  So you must instead do
  .balign 16
  .option norvc
so that the 2-byte nop gets emitted before we switch to norvc mode.

With the current set of relocations, there is no way for the linker to know if
this is a user error or a toolchain error when we see an alignment problem, so
you get a not very useful generic error.

There was also a suggestion to make option norvc/rvc imply the necessary align
operation itself, before changing the mode, but I'm not sure if that is a good
idea or not.

I think there might already be a bug report for this, but I'm too busy to look
it up at the moment.

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