gcc-3.4.3.palmos.diff
上传用户:wstnjxml
上传日期:2014-04-03
资源大小:7248k
文件大小:7k
源码类别:

Windows CE

开发平台:

C/C++

  1. diff -urN orig-gcc-3.4.3/configure.in gcc-3.4.3/configure.in
  2. --- orig-gcc-3.4.3/configure.in 2004-11-04 18:05:20.000000000 +0100
  3. +++ gcc-3.4.3/configure.in 2005-04-05 13:29:31.000000000 +0200
  4. @@ -446,6 +446,9 @@
  5.    arm-*-riscix*)
  6.      noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}"
  7.      ;;
  8. +  arm-*-palmos*)
  9. +    noconfigdirs="$noconfigdirs ${target_libs} ${target_tools}"
  10. +    ;;
  11.    avr-*-*)
  12.      noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
  13.      ;;
  14. diff -urN orig-gcc-3.4.3/gcc/config/arm/arm.h gcc-3.4.3/gcc/config/arm/arm.h
  15. --- orig-gcc-3.4.3/gcc/config/arm/arm.h 2004-08-25 17:55:55.000000000 +0200
  16. +++ gcc-3.4.3/gcc/config/arm/arm.h 2005-04-05 15:35:01.103855100 +0200
  17. @@ -799,7 +799,7 @@
  18.    (TYPE_NEEDS_IWMMXT_ALIGNMENT (TYPE) ? IWMMXT_ALIGNMENT : ALIGN)
  19.  
  20.  /* Make strings word-aligned so strcpy from constants will be faster.  */
  21. -#define CONSTANT_ALIGNMENT_FACTOR (TARGET_THUMB || ! arm_tune_xscale ? 1 : 2)
  22. +#define CONSTANT_ALIGNMENT_FACTOR (1)
  23.      
  24.  #define CONSTANT_ALIGNMENT(EXP, ALIGN)
  25.    ((TARGET_REALLY_IWMMXT && TREE_CODE (EXP) == VECTOR_TYPE) ? IWMMXT_ALIGNMENT : 
  26. diff -urN orig-gcc-3.4.3/gcc/config/arm/palmos.h gcc-3.4.3/gcc/config/arm/palmos.h
  27. --- orig-gcc-3.4.3/gcc/config/arm/palmos.h 1970-01-01 01:00:00.000000000 +0100
  28. +++ gcc-3.4.3/gcc/config/arm/palmos.h 2005-04-05 13:48:19.359375000 +0200
  29. @@ -0,0 +1,45 @@
  30. +/* Definitions for Palm OS on ARM.
  31. +   Copyright 2002, 2003 John Marshall.  (Until it is contributed.)
  32. +
  33. +This file is part of GCC.
  34. +
  35. +GCC is free software; you can redistribute it and/or modify it under
  36. +the terms of the GNU General Public License as published by the Free
  37. +Software Foundation; either version 2, or (at your option) any later
  38. +version.
  39. +
  40. +GCC is distributed in the hope that it will be useful, but WITHOUT ANY
  41. +WARRANTY; without even the implied warranty of MERCHANTABILITY or
  42. +FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  43. +for more details.
  44. +
  45. +You should have received a copy of the GNU General Public License
  46. +along with GCC; see the file COPYING.  If not, write to the Free
  47. +Software Foundation, 59 Temple Place - Suite 330, Boston, MA
  48. +02111-1307, USA.  */
  49. +
  50. +/* Palm OS code must be PIC code, and the OS expects %r9 to be fixed.
  51. +   We could do the latter with SUBTARGET_CONDITIONAL_REGISTER_USAGE instead,
  52. +   but this is more visible for our paranoid users.  */
  53. +#undef CC1_SPEC
  54. +#define CC1_SPEC  ""
  55. +
  56. +#define SUBTARGET_CPU_DEFAULT  TARGET_CPU_arm7tdmi
  57. +
  58. +#undef TARGET_VERSION
  59. +#define TARGET_VERSION  fputs (" (ARM/ELF Palm OS armlet)", stderr);
  60. +
  61. +/* We don't want a PLT at all.  */
  62. +#undef NEED_PLT_RELOC
  63. +#define NEED_PLT_RELOC  0
  64. +
  65. +/* Put constant data in .text instead of a separate .rodata.  */
  66. +#undef EXTRA_SECTIONS
  67. +#undef EXTRA_SECTION_FUNCTIONS
  68. +#undef READONLY_DATA_SECTION
  69. +#undef TARGET_ASM_SELECT_SECTION
  70. +#undef TARGET_ASM_SELECT_RTX_SECTION
  71. +
  72. +#undef USE_CONST_SECTION
  73. +/*#undef CONST_SECTION_ASM_OP*/
  74. +#undef CONST_SECTION_FUNCTION
  75. diff -urN orig-gcc-3.4.3/gcc/config/palmos.h gcc-3.4.3/gcc/config/palmos.h
  76. --- orig-gcc-3.4.3/gcc/config/palmos.h 1970-01-01 01:00:00.000000000 +0100
  77. +++ gcc-3.4.3/gcc/config/palmos.h 2005-04-05 14:01:30.588230100 +0200
  78. @@ -0,0 +1,44 @@
  79. +/* Definitions for Palm OS.
  80. +   Copyright 2002 John Marshall.  (Until it is contributed.)
  81. +
  82. +This file is part of GCC.
  83. +
  84. +GCC is free software; you can redistribute it and/or modify it under
  85. +the terms of the GNU General Public License as published by the Free
  86. +Software Foundation; either version 2, or (at your option) any later
  87. +version.
  88. +
  89. +GCC is distributed in the hope that it will be useful, but WITHOUT ANY
  90. +WARRANTY; without even the implied warranty of MERCHANTABILITY or
  91. +FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  92. +for more details.
  93. +
  94. +You should have received a copy of the GNU General Public License
  95. +along with GCC; see the file COPYING.  If not, write to the Free
  96. +Software Foundation, 59 Temple Place - Suite 330, Boston, MA
  97. +02111-1307, USA.  */
  98. +
  99. +/* Some Palm OS headers in TOOL_INCLUDE_DIR need to #include_next their
  100. +   corresponding header in CROSS_INCLUDE_DIR, so we need to reorder them
  101. +   from the default.  */
  102. +#define INCLUDE_DEFAULTS
  103. +  {
  104. +    { GCC_INCLUDE_DIR, "GCC", 0, 0 },
  105. +    { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1 },
  106. +    { CROSS_INCLUDE_DIR, 0, 0, 0 },
  107. +    { 0, 0, 0, 0 }
  108. +  }
  109. +
  110. +/* Palm OS headers are C++-aware.  */
  111. +#define NO_IMPLICIT_EXTERN_C
  112. +
  113. +/* Palm OS programmers enjoy (ab)using all kinds of packing pragmas.  */
  114. +#define HANDLE_SYSV_PRAGMA 1
  115. +#define HANDLE_PRAGMA_PACK_PUSH_POP 1
  116. +
  117. +/* Add Palm OS-related predefines to any generic ones.  */
  118. +#define TARGET_OS_CPP_BUILTINS()
  119. +    do {
  120. + builtin_define ("__palmos__");
  121. + builtin_assert ("system=palmos");
  122. +    } while (0)
  123. diff -urN orig-gcc-3.4.3/gcc/config/t-palmos gcc-3.4.3/gcc/config/t-palmos
  124. --- orig-gcc-3.4.3/gcc/config/t-palmos 1970-01-01 01:00:00.000000000 +0100
  125. +++ gcc-3.4.3/gcc/config/t-palmos 2005-04-05 12:56:57.890625000 +0200
  126. @@ -0,0 +1,7 @@
  127. +# Some Palm OS-related headers can be found here, and the remainder are in
  128. +# directories that will be found via custom specs.
  129. +CROSS_SYSTEM_HEADER_DIR = $(datadir)/prc-tools/include
  130. +
  131. +# But these headers are generally not yet installed while building GCC,
  132. +# so there's no point trying to fix them.
  133. +STMP_FIXPROTO =
  134. diff -urN orig-gcc-3.4.3/gcc/config.gcc gcc-3.4.3/gcc/config.gcc
  135. --- orig-gcc-3.4.3/gcc/config.gcc 2004-09-08 17:16:10.000000000 +0200
  136. +++ gcc-3.4.3/gcc/config.gcc 2005-04-05 13:31:58.078125000 +0200
  137. @@ -686,6 +686,10 @@
  138.   tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
  139.   tmake_file=arm/t-arm-elf
  140.   ;;
  141. +arm*-*-palmos*)
  142. + tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h palmos.h arm/palmos.h"
  143. + tmake_file="arm/t-arm-elf t-palmos"
  144. + ;;
  145.  arm*-wince-pe*)
  146.   tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h arm/wince-pe.h"
  147.   tmake_file=arm/t-wince-pe
  148. diff -urN orig-gcc-3.4.3/gcc/defaults.h gcc-3.4.3/gcc/defaults.h
  149. --- orig-gcc-3.4.3/gcc/defaults.h 2004-01-24 00:35:56.000000000 +0100
  150. +++ gcc-3.4.3/gcc/defaults.h 2005-04-05 13:32:57.218750000 +0200
  151. @@ -389,9 +389,7 @@
  152.  /* By default, the preprocessor should be invoked the same way in C++
  153.     as in C.  */
  154.  #ifndef CPLUSPLUS_CPP_SPEC
  155. -#ifdef CPP_SPEC
  156. -#define CPLUSPLUS_CPP_SPEC CPP_SPEC
  157. -#endif
  158. +#define CPLUSPLUS_CPP_SPEC 0
  159.  #endif
  160.  
  161.  #ifndef ACCUMULATE_OUTGOING_ARGS
  162. diff -urN orig-gcc-3.4.3/gcc/version.c gcc-3.4.3/gcc/version.c
  163. --- orig-gcc-3.4.3/gcc/version.c 2004-11-05 04:35:02.000000000 +0100
  164. +++ gcc-3.4.3/gcc/version.c 2005-04-05 13:30:51.765625000 +0200
  165. @@ -5,7 +5,7 @@
  166.     please modify this string to indicate that, e.g. by putting your
  167.     organization's name in parentheses at the end of the string.  */
  168.  
  169. -const char version_string[] = "3.4.3";
  170. +const char version_string[] = "3.4.3 (modified prc-tools)";
  171.  
  172.  /* This is the location of the online document giving instructions for
  173.     reporting bugs.  If you distribute a modified version of GCC,