diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog index eb34e42383b..7b8323f2c82 100644 --- a/fixincludes/ChangeLog +++ b/fixincludes/ChangeLog @@ -1,3 +1,9 @@ +2006-02-18 Steve Ellcey + + PR target/26189 + * inclhack.def (hpux_spu_info): New. + * fixincl.x: Regenerate + 2006-01-31 Marcin Dalecki * configure.ac: Check for asprintf, basename, vasprintf. diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x index 01071730a0a..7e6c5a65c8b 100644 --- a/fixincludes/fixincl.x +++ b/fixincludes/fixincl.x @@ -2,11 +2,11 @@ * * DO NOT EDIT THIS FILE (fixincl.x) * - * It has been AutoGen-ed Thursday January 19, 2006 at 12:17:28 PM EST + * It has been AutoGen-ed Saturday February 18, 2006 at 07:55:23 AM PST * From the definitions inclhack.def * and the template file fixincl */ -/* DO NOT CVS-MERGE THIS FILE, EITHER Thu Jan 19 12:17:28 EST 2006 +/* DO NOT CVS-MERGE THIS FILE, EITHER Sat Feb 18 07:55:23 PST 2006 * * You must regenerate it. Use the ./genfixes script. * @@ -15,7 +15,7 @@ * certain ANSI-incompatible system header files which are fixed to work * correctly with ANSI C and placed in a directory that GNU C will search. * - * This file contains 194 fixup descriptions. + * This file contains 195 fixup descriptions. * * See README for more information. * @@ -2957,6 +2957,45 @@ static const char* apzHpux_SystimePatch[] = { "struct sigevent;", (char*)NULL }; +/* * * * * * * * * * * * * * * * * * * * * * * * * * + * + * Description of Hpux_Spu_Info fix + */ +tSCC zHpux_Spu_InfoName[] = + "hpux_spu_info"; + +/* + * File name selection pattern + */ +tSCC zHpux_Spu_InfoList[] = + "|ia64/sys/getppdp.h|"; +/* + * Machine/OS name selection pattern + */ +tSCC* apzHpux_Spu_InfoMachs[] = { + "*-hp-hpux*", + (const char*)NULL }; + +/* + * content selection pattern - do fix if pattern found + */ +tSCC zHpux_Spu_InfoSelect0[] = + "^.*extern.*spu_info.*"; + +#define HPUX_SPU_INFO_TEST_CT 1 +static tTestDesc aHpux_Spu_InfoTests[] = { + { TT_EGREP, zHpux_Spu_InfoSelect0, (regex_t*)NULL }, }; + +/* + * Fix Command Arguments for Hpux_Spu_Info + */ +static const char* apzHpux_Spu_InfoPatch[] = { + "format", + "#ifdef _KERNEL\n\ +%0\n\ +#endif", + (char*)NULL }; + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * Description of Huge_Val_Hex fix @@ -7894,9 +7933,9 @@ static const char* apzX11_SprintfPatch[] = { * * List of all fixes */ -#define REGEX_COUNT 237 +#define REGEX_COUNT 238 #define MACH_LIST_SIZE_LIMIT 261 -#define FIX_COUNT 194 +#define FIX_COUNT 195 /* * Enumerate the fixes @@ -7971,6 +8010,7 @@ typedef enum { HPUX_HTONL_FIXIDX, HPUX_LONG_DOUBLE_FIXIDX, HPUX_SYSTIME_FIXIDX, + HPUX_SPU_INFO_FIXIDX, HUGE_VAL_HEX_FIXIDX, HUGE_VALF_HEX_FIXIDX, HUGE_VALL_HEX_FIXIDX, @@ -8444,6 +8484,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = { HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aHpux_SystimeTests, apzHpux_SystimePatch, 0 }, + { zHpux_Spu_InfoName, zHpux_Spu_InfoList, + apzHpux_Spu_InfoMachs, + HPUX_SPU_INFO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aHpux_Spu_InfoTests, apzHpux_Spu_InfoPatch, 0 }, + { zHuge_Val_HexName, zHuge_Val_HexList, apzHuge_Val_HexMachs, HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index e1721421bff..5a5c42343b5 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -1700,6 +1700,23 @@ fix = { }; +/* + * Wrap spu_info in ifdef _KERNEL. GCC cannot handle an array of unknown + * type and mpinfou is only defined when _KERNEL is set. + */ +fix = { + hackname = hpux_spu_info; + mach = "*-hp-hpux*"; + files = ia64/sys/getppdp.h; + select = "^.*extern.*spu_info.*"; + + c_fix = format; + c_fix_arg = "#ifdef _KERNEL\n%0\n#endif"; + + test_text = "extern union mpinfou spu_info[];"; +}; + + /* * Fix glibc definition of HUGE_VAL in terms of hex floating point constant */