Re: [PATCH v9 06/12] riscv: prevent compressed instructions in alternatives
From: Philipp Tomsich
Date: Wed Apr 13 2022 - 05:09:28 EST
On Wed, 13 Apr 2022 at 05:03, Heiko Stuebner <heiko@xxxxxxxxx> wrote:
>
> Instructions are opportunistically compressed by the RISC-V assembler
> when possible, but in alternatives-blocks both the old and new content
> need to be the same size, so having the toolchain do somewhat random
> optimizations will cause strange side-effects like
> "attempt to move .org backwards" compile-time errors.
>
> Already a simple "and" used in alternatives assembly will cause these
> mismatched code sizes.
>
> So prevent compressed instructions to be generated in alternatives-
> code and use option-push and -pop to only limit this to the relevant
> code blocks
>
> Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
> Reviewed-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Philipp Tomsich <philipp.tomsich@xxxxxxxx>