x86 2.2.9 built. With GNU cc1obj 2.7.2.3

Rick Hohensee (humbubba@smarty.smart.net)
Sat, 19 Jun 1999 16:30:15 -0400 (EDT)


hmmmm. cc1obj is only 80k or so bigger than cc1 in gcc 2.7.2.3.
INteresting.

I mv'ed cc1, and symlinked cc1obj to cc1. make clean, make dep...
good, good...

Then there's 3 files in my current build that cc1(obj) chokes on.
There's a construct of arrays of structs or something, I don't even
know for sure what it is, that goes

struct blah zay[MACRO] = { [0 ... MACRO] = { stuff } };

That occurs in kernel/irq.c, drivers/char/lp.c and
drivers/misc/parport_init.c .

I rudely converted the fancy versions to either "I only support one of
those" or, in the case of irqs, 224 instances of "call by editor".

She linked right up and is smiling at me from the box next to this one.

There's probably ways to get the usual support back for variable #'s of
e.g. lp's, but I just wanted to see if I could replace cc1 with cc1obj in
$DISTRO . cc1obj is about twice as slow as cc1 on some non-kernel code
I tested this on first. Said code is full of labels-as-values, i.e. GNU
C extensions. That worked too.

Fun?

Rick Hohensee

OH, here's the stuff I have in. All I know at the moment is it boots.

grep "=y" .config....
(lots of =m not shown)
CONFIG_M386=y
CONFIG_MATH_EMULATION=y
CONFIG_MODULES=y
CONFIG_KMOD=y
CONFIG_NET=y
CONFIG_PCI=y
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_QUIRKS=y
CONFIG_MCA=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=y
CONFIG_PARPORT=y
CONFIG_PARPORT_PC=y
CONFIG_PNP=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_CMD640=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y
CONFIG_BLK_DEV_PS2=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_PARIDE_PARPORT=y
CONFIG_NETLINK=y
CONFIG_RTNETLINK=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_SYN_COOKIES=y
CONFIG_SCSI=y
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_7000FASST=y
CONFIG_SCSI_ACARD=y
CONFIG_SCSI_AHA152X=y
CONFIG_SCSI_AHA1542=y
CONFIG_SCSI_AHA1740=y
CONFIG_SCSI_AIC7XXX=y
CONFIG_SCSI_ADVANSYS=y
CONFIG_SCSI_IN2000=y
CONFIG_SCSI_AM53C974=y
CONFIG_SCSI_MEGARAID=y
CONFIG_SCSI_BUSLOGIC=y
CONFIG_SCSI_DTC3280=y
CONFIG_SCSI_EATA=y
CONFIG_SCSI_FUTURE_DOMAIN=y
CONFIG_SCSI_FD_MCS=y
CONFIG_SCSI_GDTH=y
CONFIG_SCSI_GENERIC_NCR5380=y
CONFIG_SCSI_G_NCR5380_PORT=y
CONFIG_SCSI_INITIO=y
CONFIG_SCSI_NCR53C406A=y
CONFIG_SCSI_NCR53C7xx=y
CONFIG_SCSI_IBMMCA=y
CONFIG_IBMMCA_SCSI_ORDER_STANDARD=y
CONFIG_SCSI_MCA_53C9X=y
CONFIG_SCSI_PAS16=y
CONFIG_SCSI_PCI2000=y
CONFIG_SCSI_PCI2220I=y
CONFIG_SCSI_PSI240I=y
CONFIG_SCSI_QLOGIC_FAS=y
CONFIG_SCSI_QLOGIC_ISP=y
CONFIG_SCSI_SEAGATE=y
CONFIG_SCSI_DC390T=y
CONFIG_SCSI_T128=y
CONFIG_SCSI_U14_34F=y
CONFIG_SCSI_ULTRASTOR=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_NET_VENDOR_SMC=y
CONFIG_ULTRAMCA=y
CONFIG_ULTRA=y
CONFIG_NET_VENDOR_RACAL=y
CONFIG_NET_ISA=y
CONFIG_EEXPRESS=y
CONFIG_SK_G16=y
CONFIG_NET_EISA=y
CONFIG_NET_POCKET=y
CONFIG_COPS_DAYNA=y
CONFIG_COPS_TANGENT=y
CONFIG_PPP=y
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
CONFIG_NET_RADIO=y
CONFIG_TR=y
CONFIG_WAN_DRIVERS=y
CONFIG_WANPIPE_PPP=y
CONFIG_ISDN_PPP=y
CONFIG_ISDN_MPP=y
CONFIG_ISDN_AUDIO=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_SERIAL_EXTENDED=y
CONFIG_SERIAL_MANY_PORTS=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_SERIAL_EXTENDED=y
CONFIG_SERIAL_MANY_PORTS=y
CONFIG_SERIAL_SHARE_IRQ=y
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_PRINTER=y
CONFIG_MOUSE=y
CONFIG_PSMOUSE=y
CONFIG_WATCHDOG=y
CONFIG_RTC=y
CONFIG_FT_NORMAL_DEBUG=y
CONFIG_FT_STD_FDC=y
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_UMSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_NTFS_FS=y
CONFIG_HPFS_FS=y
CONFIG_PROC_FS=y
CONFIG_EXT2_FS=y
CONFIG_SYSV_FS=y
CONFIG_UFS_FS=y
CONFIG_UFS_FS_WRITE=y
CONFIG_BSD_DISKLABEL=y
CONFIG_NLS=y
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ISO8859_1=y
CONFIG_VGA_CONSOLE=y
CONFIG_VIDEO_SELECT=y
CONFIG_LOWLEVEL_SOUND=y
CONFIG_MAGIC_SYSRQ=y

system is 904k btw, about the same as the cc1 version. The other code I
compiled ran a simple loop the same with cc1 and cc1obj, and was the same
size with cc1(either) with no args or with -O2.

:o)


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/