On Mon, Jan 28, 2013 at 9:14 PM, Leif Ekblad wrote: >>> That is intentional. The gthr-rdos.h file is part of libgcc. My intention >>> was to first patch gcc, then update the patches for newlib, and finally >>> libgcc. The gthr-rdos.h file would reference include-files part of >>> newlib, >>> so this is kind of circular. I also cannot define the thread model for >>> RDOS >>> unless I define this file. >>> >>> I see a couple of possible solutions: >>> 1. Keep as is. You cannot build libgcc at the current stage anyway, and >>> the >>> bootstrap must be built without threading >>> 2. Add an empty gthr-rdos.h file until libgcc is done >>> 3. Remove the threading-model for now, and add it with libgcc instead. >> >> >> I propose option 3. >> >> Is it enough to remove gthr.m4 change from the patch in this case? > > Yes, for all practical purposes. There is a reference to thread-file in > config.gcc, when threading is enabled, which doesn't work for bootstrapping > the compiler anyway. Thanks for pointing it, I have also removed this reference. Attached is the patch that has been committed to SVN. I have added missing licence headers to new files and clean whitespace a bit. 2013-01-28 Leif Ekblad * config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets. * config/i386/i386.h (TARGET_RDOS): New macro. (DEFAULT_LARGE_SECTION_THRESHOLD): New macro. * config/i386/i386.c (ix86_option_override_internal): For 64bit TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1. * config/i386/i386.opt (mlarge-data-threshold): Initialize to DEFAULT_LARGE_SECTION_THRESHOLD. * config/i386/i386.md (R14_REG, R15_REG): New constants. * config/i386/rdos.h: New file. * config/i386/rdos64.h: New file. Thanks, Uros.