]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
sandbox: make function 'do_undefined' properly compiles for PowerPC
authorWHR <whr@rivoreo.one>
Tue, 30 Apr 2024 16:55:10 +0000 (00:55 +0800)
committerTom Rini <trini@konsulko.com>
Mon, 13 May 2024 22:51:13 +0000 (16:51 -0600)
The 2 bytes 0xffff is too short for being a PowerPC instruction, resulting
in an error similar to:
    /tmp/ccW8yjie.s: Assembler messages:
    /tmp/ccW8yjie.s: Error: unaligned opcodes detected in executable segment
    /tmp/ccW8yjie.s:223: Error: instruction address is not a multiple of 4
    make[2]: *** [/tmp/ccyF4HIC.mk:17: /tmp/ccCKUFuF.ltrans5.ltrans.o] Error 1

Signed-off-by: WHR <msl0000023508@gmail.com>
cmd/sandbox/exception.c

index cfa153da26028e8455402e126de590ed7e2c174c..f9c847d8ff28312396f55e48b1efc862eeffcebb 100644 (file)
@@ -19,7 +19,11 @@ static int do_sigsegv(struct cmd_tbl *cmdtp, int flag, int argc,
 static int do_undefined(struct cmd_tbl *cmdtp, int flag, int argc,
                        char *const argv[])
 {
+#ifdef __powerpc__
+       asm volatile (".long 0xffffffff\n");
+#else
        asm volatile (".word 0xffff\n");
+#endif
        return CMD_RET_FAILURE;
 }