Summary: | sys-firmware/ipxe-1.0.0_p20130225, sys-devel/gcc-4.8 error: bp cannot be used in asm here | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Chí-Thanh Christopher Nguyễn <chithanh> |
Component: | [OLD] Core system | Assignee: | Gentoo QEMU Project <qemu+disabled> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | CC: | dushistov, gentoo, M4rkusXXL, ryao |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 461954 | ||
Attachments: | build.log |
Description
Chí-Thanh Christopher Nguyễn
2013-06-29 22:38:30 UTC
For gcc 4.8, please use ipxe-1.0.0_p20130624 which is in the tree already and report if that doesn't work for you. *** Bug 475944 has been marked as a duplicate of this bug. *** *** Bug 476240 has been marked as a duplicate of this bug. *** *** Bug 477072 has been marked as a duplicate of this bug. *** I see the following error on hardened ~amd64 with gcc-4.8.1 for ipxe-1.0.0_p20130624: [BUILD] bin/memmap.o x86_64-pc-linux-gnu-gcc -DARCH=i386 -DPLATFORM=pcbios -march=i386 -fomit-frame-pointer -fstrength-reduce -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mpreferred-stack-boundary=2 -mregparm=3 -mrtd -freg-struct-return -m32 -fshort-wchar -Ui386 -Ulinux -DNVALGRIND -Iinclude -I. -Iarch/x86/include -Iarch/i386/include -Iarch/i386/include/pcbios -Os -g -ffreestanding -Wall -W -Wformat-nonliteral -fno-stack-protector -fno-PIE -nopie -fno-dwarf2-cfi-asm -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables -Wno-address -ffunction-sections -fdata-sections -include include/compiler.h -DOBJECT=memmap -c arch/i386/firmware/pcbios/memmap.c -o bin/memmap.o arch/i386/firmware/pcbios/bios_console.c: In function ‘bios_putchar’: arch/i386/firmware/pcbios/bios_console.c:196:1: error: bp cannot be used in asm here } ^ arch/i386/firmware/pcbios/bios_console.c:196:1: error: bp cannot be used in asm here (In reply to Markus Oehme from comment #5) > I see the following error on hardened ~amd64 with gcc-4.8.1 for > ipxe-1.0.0_p20130624: > > [BUILD] bin/memmap.o > x86_64-pc-linux-gnu-gcc -DARCH=i386 -DPLATFORM=pcbios -march=i386 > -fomit-frame-pointer -fstrength-reduce -falign-jumps=1 -falign-loops=1 > -falign-functions=1 -mpreferred-stack-boundary=2 -mregparm=3 -mrtd > -freg-struct-return -m32 -fshort-wchar -Ui386 -Ulinux -DNVALGRIND -Iinclude > -I. -Iarch/x86/include -Iarch/i386/include -Iarch/i386/include/pcbios -Os -g > -ffreestanding -Wall -W -Wformat-nonliteral -fno-stack-protector -fno-PIE > -nopie -fno-dwarf2-cfi-asm -fno-exceptions -fno-unwind-tables > -fno-asynchronous-unwind-tables -Wno-address -ffunction-sections > -fdata-sections -include include/compiler.h -DOBJECT=memmap -c > arch/i386/firmware/pcbios/memmap.c -o bin/memmap.o > arch/i386/firmware/pcbios/bios_console.c: In function ‘bios_putchar’: > arch/i386/firmware/pcbios/bios_console.c:196:1: error: bp cannot be used in > asm here > } > ^ > arch/i386/firmware/pcbios/bios_console.c:196:1: error: bp cannot be used in > asm here You're really missing a bunch of context from this since the gcc line prior to the error is building memmap.c, but the error you are having is with bios_console.c there's no telling what extra flags affected it. That being said, I would really be surprised if our hardened toolchain is able to produce working ROMs since I know iPXE, SeaBIOS, etc are sensitive to the toolchain. (In reply to Doug Goldstein from comment #6) > You're really missing a bunch of context from this since the gcc line prior > to the error is building memmap.c, but the error you are having is with > bios_console.c there's no telling what extra flags affected it. That being > said, I would really be surprised if our hardened toolchain is able to > produce working ROMs since I know iPXE, SeaBIOS, etc are sensitive to the > toolchain. Aw, got the wrong line, here comes the correct one: [BUILD] bin/bios_console.o x86_64-pc-linux-gnu-gcc -DARCH=i386 -DPLATFORM=pcbios -march=i386 -fomit-frame-pointer -fstrength-reduce -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mpreferred-stack-boundary=2 -mregparm=3 -mrtd -freg-struct-return -m32 -fshort-wchar -Ui386 -Ulinux -DNVALGRIND -Iinclude -I. -Iarch/x86/include -Iarch/i386/include -Iarch/i386/include/pcbios -Os -g -ffreestanding -Wall -W -Wformat-nonliteral -fno-stack-protector -fno-PIE -nopie -fno-dwarf2-cfi-asm -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables -Wno-address -ffunction-sections -fdata-sections -include include/compiler.h -DOBJECT=bios_console -c arch/i386/firmware/pcbios/bios_console.c -o bin/bios_console.o I merged ipxe with hardened-gcc-4.7.4 and just booted a virtual machine with kvm/qemu -- during the boot I saw the string ipxe, so I assume that it works ... |