[SeaBIOS] Build errors with Clang 3.2: src/ioport.h:126:18: error: invalid operand for instruction
Paul Menzel
paulepanter at users.sourceforge.net
Mon Mar 4 16:15:51 CET 2013
Dear SeaBIOS folks,
using Debian Sid/unstable and Clang 3.2 from Debian experimental
$ clang --version
Debian clang version 3.2-1~exp6 (tags/RELEASE_32/final) (based on LLVM 3.2)
Target: i386-pc-linux-gnu
Thread model: posix
to build SeaBIOS, Clang throws the following errors.
$ git show
commit f465e1ec1b01826100c92b890487a2ab09bfe2c1
Author: Kevin O'Connor <kevin at koconnor.net>
Date: Sat Feb 23 21:33:36 2013 -0500
Minor - introduce numeric defines for the IVT offset of hw irqs.
$ make menuconfig # coreboot chosen, see attached
$ CC=clang make
[…]
In file included from src/ata.c:9:
src/ioport.h:126:18: error: invalid operand for instruction
asm volatile("rep outsw %%es:(%%esi), (%%dx)"
^
<inline asm>:1:12: note: instantiated into assembly here
rep outsw %es:(%esi), (%dx)
^~~~~~~~~~
In file included from src/ata.c:9:
src/ioport.h:113:18: error: invalid operand for instruction
asm volatile("rep insw (%%dx), %%es:(%%edi)"
^
<inline asm>:1:11: note: instantiated into assembly here
rep insw (%dx), %es:(%edi)
^~~~~
2 errors generated.
make: *** [out/ata.o] Fehler 1
I have no clue about assembler programming, so before reporting both
errors to the Clang project, as it works with GCC, I want to make sure
that Clang is mistaken here.
Thanks,
Paul
-------------- next part --------------
#
# Automatically generated make config: don't edit
# SeaBIOS Configuration
# Mon Mar 4 16:09:08 2013
#
#
# General Features
#
CONFIG_COREBOOT=y
# CONFIG_QEMU is not set
# CONFIG_CSM is not set
# CONFIG_QEMU_HARDWARE is not set
CONFIG_THREADS=y
# CONFIG_THREAD_OPTIONROMS is not set
CONFIG_RELOCATE_INIT=y
CONFIG_BOOTMENU=y
CONFIG_BOOTSPLASH=y
CONFIG_BOOTORDER=y
CONFIG_COREBOOT_FLASH=y
CONFIG_LZMA=y
CONFIG_FLASH_FLOPPY=y
#
# Hardware support
#
CONFIG_ATA=y
# CONFIG_ATA_DMA is not set
# CONFIG_ATA_PIO32 is not set
CONFIG_AHCI=y
# CONFIG_MEGASAS is not set
# CONFIG_FLOPPY is not set
CONFIG_PS2PORT=y
CONFIG_USB=y
CONFIG_USB_UHCI=y
CONFIG_USB_OHCI=y
CONFIG_USB_EHCI=y
CONFIG_USB_MSC=y
# CONFIG_USB_UAS is not set
CONFIG_USB_HUB=y
CONFIG_USB_KEYBOARD=y
CONFIG_USB_MOUSE=y
CONFIG_SERIAL=y
# CONFIG_LPT is not set
CONFIG_PMTIMER=y
#
# BIOS interfaces
#
CONFIG_DRIVES=y
CONFIG_CDROM_BOOT=y
CONFIG_CDROM_EMU=y
CONFIG_PCIBIOS=y
CONFIG_APMBIOS=y
CONFIG_PNPBIOS=y
CONFIG_OPTIONROMS=y
CONFIG_PMM=y
CONFIG_BOOT=y
CONFIG_KEYBOARD=y
CONFIG_KBD_CALL_INT15_4F=y
CONFIG_MOUSE=y
CONFIG_S3_RESUME=y
CONFIG_VGAHOOKS=y
# CONFIG_DISABLE_A20 is not set
#
# VGA ROM
#
CONFIG_NO_VGABIOS=y
# CONFIG_VGA_GEODEGX2 is not set
# CONFIG_VGA_GEODELX is not set
# CONFIG_BUILD_VGABIOS is not set
#
# Debugging
#
CONFIG_DEBUG_LEVEL=1
CONFIG_DEBUG_SERIAL=y
CONFIG_DEBUG_SERIAL_PORT=0x3f8
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://www.seabios.org/pipermail/seabios/attachments/20130304/5c6c866c/attachment.sig>
More information about the SeaBIOS
mailing list