Skip to content

Commit 93ca696

Browse files
xilabaotorvalds
authored andcommitted
scripts/recordmcount.pl: support big endian for ARCH sh
The kernel test robot reported the following issue: CC [M] drivers/soc/litex/litex_soc_ctrl.o sh4-linux-objcopy: Unable to change endianness of input file(s) sh4-linux-ld: cannot find drivers/soc/litex/.tmp_gl_litex_soc_ctrl.o: No such file or directory sh4-linux-objcopy: 'drivers/soc/litex/.tmp_mx_litex_soc_ctrl.o': No such file The problem is that the format of input file is elf32-shbig-linux, but sh4-linux-objcopy wants to output a file which format is elf32-sh-linux: $ sh4-linux-objdump -d drivers/soc/litex/litex_soc_ctrl.o | grep format drivers/soc/litex/litex_soc_ctrl.o: file format elf32-shbig-linux Link: https://lkml.kernel.org/r/[email protected] Link: https://lore.kernel.org/linux-mm/[email protected] Signed-off-by: Rong Chen <[email protected]> Reported-by: kernel test robot <[email protected]> Cc: Yoshinori Sato <[email protected]> Cc: Rich Felker <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 3c62cfd commit 93ca696

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

scripts/recordmcount.pl

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,11 @@ sub check_objcopy
265265

266266
# force flags for this arch
267267
$ld .= " -m shlelf_linux";
268-
$objcopy .= " -O elf32-sh-linux";
268+
if ($endian eq "big") {
269+
$objcopy .= " -O elf32-shbig-linux";
270+
} else {
271+
$objcopy .= " -O elf32-sh-linux";
272+
}
269273

270274
} elsif ($arch eq "powerpc") {
271275
my $ldemulation;

0 commit comments

Comments
 (0)