[SLOF] [PATCH] Fix bad assembler statements for compiling with gcc 8.1 / as 2.30
Laurent Vivier
lvivier at redhat.com
Fri Jun 29 21:27:03 AEST 2018
On 13/06/2018 16:54, Thomas Huth wrote:
> When compiling with a very recent toolchain, I get these warnings:
>
> ../../llfw/boot_abort.S: Assembler messages:
> ../../llfw/boot_abort.S:76: Warning: invalid register expression
>
> and:
>
> stage2_head.S: Assembler messages:
> stage2_head.S:57: Warning: invalid register expression
>
> The first one is using the wrong opcode, we should use "and" instead of
> "andi" here. The second one is using a register instead of a constant
> for load-immediate, which is non-sense, too. Fix it to use the right
> constant instead.
>
> Signed-off-by: Thomas Huth <thuth at redhat.com>
> ---
> board-qemu/llfw/stage2_head.S | 2 +-
> llfw/boot_abort.S | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/board-qemu/llfw/stage2_head.S b/board-qemu/llfw/stage2_head.S
> index adf7554..1568f27 100644
> --- a/board-qemu/llfw/stage2_head.S
> +++ b/board-qemu/llfw/stage2_head.S
> @@ -54,7 +54,7 @@ bsscdone:
> /* jump to c-code */
> /* r31 = fdt - r5 */
> /* ------------------------------------ */
> - li r3, r0
> + li r3, 0
> mr r4, r31
> bl .early_c_entry
>
> diff --git a/llfw/boot_abort.S b/llfw/boot_abort.S
> index 996bdd7..47a9178 100644
> --- a/llfw/boot_abort.S
> +++ b/llfw/boot_abort.S
> @@ -73,7 +73,7 @@ ASM_ENTRY(boot_abort)
>
> /* check if i/o is possible, if yes then print message */
> li r10, ABORT_CANIO
> - andi. r3, r31, r10
> + and. r3, r31, r10
> bne abort_noio
>
> /* use i/o ..., first print reference message */
>
Reviewed-by: Laurent Vivier <lvivier at redhat.com>
More information about the SLOF
mailing list