[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Anyone tried hooking up Link Time Optimization (LTO)
From: |
Paul Menzel |
Subject: |
Re: Anyone tried hooking up Link Time Optimization (LTO) |
Date: |
Mon, 24 Feb 2020 14:31:56 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 |
Dear GRUB folks,
Am 24.02.20 um 12:57 schrieb Paul Menzel:
Dear GRUB folks,
Jacob integrated support for LTO (Link Time Optimization) to coreboot [1],
libpayload [2], and the payload *coreinfo* [3] resulting in a noticeable
reduction in the size.
So maybe GRUB would benefit too. Has anyone looked into this already?
Just adding `-flto` to the C flags fails.
$ make CFLAGS="-flto"
cp lib/libgcrypt-grub/cipher/crypto.lst crypto.lst
cat kernel_syms.lst > syminfo.lst.new
for m in disk.module trig.module cs5536.module usb.module
usbserial_common.module usbserial_pl2303.module
usbserial_ftdi.module usbserial_usbdebug.module uhci.module
ohci.module ehci.module pci.module nativedisk.module
cmostest.module cmosdump.module iorw.module
cbtime.module cbls.module cbmemc.module regexp.module
acpi.module lsacpi.module
blocklist.module boot.module cat.module cmp.module
configfile.module cpuid.module date.module echo.module eval.module
extcmd.module gptsync.module halt.module
reboot.module hashsum.module pgp.module verifiers.module
hdparm.module help.module hexdump.module keystatus.module loadenv.module
ls.module lsmmap.module lspci.module memrw.module minicmd.module
parttool.module password.module password_pbkdf2.module play.module
spkmodem.module morse.module probe.module read.module search.module
search_fs_file.module search_fs_uuid.module search_label.module
setpci.module pcidump.module sleep.module smbios.module
terminal.module test.module true.module usbtest.module videoinfo.module
videotest.module xnu_uuid.module dm_nv.module loopback.module cryptodisk.module
json.module afsplitter.module luks.module luks2.module geli.module lvm.module
ldm.module mdraid09.module mdraid09_be.module mdraid1x.module diskfilter.module
raid5rec.module raid6rec.module scsi.module memdisk.module ata.module
ahci.module pata.module usbms.module efiemu.module
procfs.module affs.module afs.module bfs.module zstd.module
btrfs.module archelp.module cbfs.module cpio.module cpio_be.module newc.module
odc.module ext2.module fat.module exfat.module f2fs.module fshelp.module
hfs.module hfsplus.module hfspluscomp.module iso9660.module jfs.module
minix.module minix2.module minix3.module minix_be.module minix2_be.module
minix3_be.module nilfs2.module ntfs.module ntfscomp.module reiserfs.module
romfs.module sfs.module squash4.module tar.module udf.module ufs1.module
ufs1_be.module ufs2.module xfs.module zfs.module zfscrypt.module zfsinfo.module
macbless.module gettext.module gfxmenu.module hello.module gzio.module
offsetio.module elf.module crypto.module pbkdf2.module
relocator.module datetime.module setjmp.module
aout.module bsd.module linux16.module multiboot2.module
multiboot.module linux.module xnu.module
random.module macho.module chain.module mmap.module
normal.module part_acorn.module part_amiga.module part_apple.module
part_gpt.module part_msdos.module part_sun.module part_plan.module
part_dvh.module part_bsd.module part_sunpc.module part_dfly.module
msdospart.module at_keyboard.module
gfxterm_background.module serial.module terminfo.module
usb_keyboard.module mda_text.module video_cirrus.module
video_bochs.module functional_test.module exfctest.module
strtoull_test.module setjmp_test.module signature_test.module sleep_test.module
xnu_uuid_test.module pbkdf2_test.module div.module
div_test.module mul_test.module shift_test.module cmp_test.module
ctz_test.module bswap_test.module videotest_checksum.module gfxterm_menu.module
cmdline_cat_test.module bitmap.module bitmap_scale.module jpeg.module
png.module tga.module
video_colors.module datehook.module net.module tftp.module http.module
syslinuxcfg.module test_blockarg.module xzio.module lzopio.module
testload.module backtrace.module keylayouts.module
priority_queue.module time.module adler32.module crc64.module mpi.module
all_video.module gdb.module testspeed.module tr.module progress.module
file.module rdmsr.module wrmsr.module gcry_arcfour.module
gcry_blowfish.module gcry_camellia.module gcry_cast5.module gcry_crc.module
gcry_des.module gcry_dsa.module gcry_idea.module gcry_md4.module
gcry_md5.module gcry_rfc2268.module gcry_rijndael.module gcry_rmd160.module
gcry_rsa.module gcry_seed.module gcry_serpent.module gcry_sha1.module
gcry_sha256.module gcry_sha512.module gcry_tiger.module gcry_twofish.module
gcry_whirlpool.module; do \
sh gensyminfo.sh $m >> syminfo.lst.new || exit 1; \
done
nm: all_video.module: no symbols
nm: all_video.module: no symbols
mv syminfo.lst.new syminfo.lst
cat syminfo.lst | sort | mawk -f ./genmoddep.awk > moddep.lst || (rm -f
moddep.lst; exit 1)
grub_putcode in help is not defined
grub_extractor_level in normal is not defined
grub_getstringwidth in normal is not defined
grub_print_ucs4_menu in normal is not defined
grub_putcode in normal is not defined
make[3]: *** [Makefile:49401: moddep.lst] Fehler 1
make[3]: Verzeichnis „/dev/shm/grub/grub-core“ wird verlassen
make[2]: *** [Makefile:27430: all] Fehler 2
make[2]: Verzeichnis „/dev/shm/grub/grub-core“ wird verlassen
make[1]: *** [Makefile:11914: all-recursive] Fehler 1
make[1]: Verzeichnis „/dev/shm/grub“ wird verlassen
make: *** [Makefile:3766: all] Fehler 2
Kind regards,
Paul
[1]: https://review.coreboot.org/c/coreboot/+/38989
[2]: https://review.coreboot.org/c/coreboot/+/38291
[3]: https://review.coreboot.org/c/coreboot/+/38293