ChangeLog-gcc-4.1.txt 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. Changelog of the TIGCC-local changes to GCC (4.1 branch):
  2. 2007-10-08 Kevin Kofler <Kevin@tigcc.ticalc.org>
  3. PR preprocessor/23479
  4. * version.c (VERSUFFIX): Bump to "4.1.2-tigcc-3".
  5. Sync binary integer patch with upstream GCC 4.3 patch
  6. (2007-06-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de>):
  7. * ../libcpp/expr.c (cpp_classify_number): Don't allow 0b for floats.
  8. Change pedwarn to say "GCC extension" rather than "TIGCC extension".
  9. (append_digit): Fix overflow check for binary integers.
  10. 2007-04-17 Kevin Kofler <Kevin@tigcc.ticalc.org>
  11. PR c/25509
  12. * version.c (VERSUFFIX): Bump to "4.1.2-tigcc-2".
  13. * gimplify.c (gimplify_expr): Don't strip casts to void for function calls.
  14. (Patch originally by Richard Guenther.)
  15. 2007-02-19 Kevin Kofler <Kevin@tigcc.ticalc.org>
  16. * Import GCC 4.1.2 release.
  17. * version.c (VERSUFFIX): Bump to "4.1.2-tigcc-1".
  18. * Revert because of a conflict with the generalized lvalues patch:
  19. 2006-08-05 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
  20. PR c/27721
  21. * c-typeck.c (build_modify_expr): Test earlier for non-lvalues.
  22. * c-typeck.c (build_modify_expr): Don't call build_binary_op on a function (PR c/27721).
  23. * c-decl.c (push_parm_decl): Fix missing argument for format string in error message.
  24. 2007-02-09 Kevin Kofler <Kevin@tigcc.ticalc.org>
  25. * gcc.c: #define access to access_check for _WIN32.
  26. (access_check): Translate X_OK to R_OK on _WIN32.
  27. 2006-10-17 Kevin Kofler <Kevin@tigcc.ticalc.org>
  28. * version.c (VERSUFFIX): Bump to "4.1.2-pre10".
  29. 2006-09-16 Kevin Kofler <Kevin@tigcc.ticalc.org>
  30. * version.c (VERSUFFIX): Bump to "4.1.2-pre9".
  31. * config/m68k/m68k.md (m68k_init_cumulative_args): Mark STATIC_CHAIN_REGNUM as used for
  32. nested functions needing a static chain so register parameters don't conflict.
  33. 2006-08-01 Kevin Kofler <Kevin@tigcc.ticalc.org>
  34. * version.c (VERSUFFIX): Bump to "4.1.2-pre8".
  35. * config/m68k/m68k.md (pushqi1): Don't use the optimized pushqi1_reg on SUBREGs with even
  36. offsets. Pass the full SUBREG expression to pushqi1_reg.
  37. (pushqi1_reg): Handle SUBREGs here. Compute new SUBREG_BYTE when handling SUBREGs instead
  38. of hard-coding it as 0.
  39. 2006-07-29 Kevin Kofler <Kevin@tigcc.ticalc.org>
  40. * Import GCC 4.1 20060728 snapshot.
  41. * version.c (VERSUFFIX): Bump to "4.1.2-pre7".
  42. 2006-04-30 Kevin Kofler <Kevin@tigcc.ticalc.org>
  43. * Import GCC 4.1 20060428 snapshot.
  44. * version.c (VERSUFFIX): Bump to "4.1.1-pre6".
  45. * gcc/c.opt (-Wpointer-sign): Don't change the initializer (now set to -1 upstream).
  46. * c-opts.c (c_common_handle_option): Don't enable -Wpointer-sign for -Wall.
  47. 2006-01-05 Kevin Kofler <Kevin@tigcc.ticalc.org>
  48. * version.c (VERSUFFIX): Bump to "4.1.0-pre5".
  49. * config/m68k/m68k.md (movsi): Don't allow writes of a label directly to memory under -mpcrel.
  50. (anonymous pattern for pcrel movsi): Split into case for address register and case for push.
  51. Only accept stack pushes, not arbitrary predecrements.
  52. 2005-12-24 Kevin Kofler <Kevin@tigcc.ticalc.org>
  53. * version.c (VERSUFFIX): Bump to "4.1.0-pre4".
  54. * toplev.c (process_options): Don't warn about -fomit-frame-pointer with unwind tables and
  55. don't force -fno-omit-frame-pointer.
  56. 2005-12-22 Kevin Kofler <Kevin@tigcc.ticalc.org>
  57. * version.c (VERSUFFIX): Bump to "4.1.0-pre3".
  58. * c-parser.c (c_parser_cast_expression): Allow all postfix operators, not just ++ and --.
  59. 2005-12-22 Kevin Kofler <Kevin@tigcc.ticalc.org>
  60. * version.c (VERSUFFIX): Bump to "4.1.0-pre2".
  61. * c-parser.c (c_parser_cast_expression): Rename to c_parser_cast_expression_1, don't handle
  62. Objective C here.
  63. (c_parser_cast_expression): New function. Handle Objective C and postfix operators.
  64. (c_parser_unary_expression): Add in_cast argument. Pass it to c_parser_postfix_expression.
  65. (c_parser_cast_expression_1, c_parser_sizeof_expression, c_parser_alignof_expression): Update
  66. calls to c_parser_unary_expression.
  67. (c_parser_postfix_expression): Add in_cast argument. Pass it to
  68. c_parser_postfix_expression_after_primary.
  69. (c_parser_postfix_expression_after_primary): Add in_cast argument. Only accept postincrement/
  70. postdecrement if it is false.
  71. (c_parser_cast_expression, c_parser_postfix_expression_after_paren_type): Update calls to
  72. postfix_expression_after_primary.
  73. 2005-12-22 Kevin Kofler <Kevin@tigcc.ticalc.org>
  74. * version.c (VERSUFFIX): Add "4.1.0-pre1" tag.
  75. 2005-12-18 - 2005-12-21 Kevin Kofler <Kevin@tigcc.ticalc.org>
  76. * Import GCC 4.1 20051216 snapshot.
  77. * Merge changes from GCC 4.0.2 (see ChangeLog-gcc-4.0.txt).
  78. * Drop obsolete backports:
  79. DWARF 2 patches/backports from Fedora GCC:
  80. - gcc4-dwarf2-pr20268.patch
  81. 2005-03-30 James E. Wilson <wilson@specifixinc.com>
  82. PR debug/20268
  83. * dwarf2out.c (add_high_low_attributes): New function, extracted from
  84. gen_lexical_block_die.
  85. (gen_lexical_block_die, gen_inlined_subroutine_die): Call it.
  86. - gcc4-dwarf2-inline-details.patch
  87. 2005-07-25 James E Wilson <wilson@specifixinc.com>
  88. * dwarf2out.c (add_call_src_coords_attributes): New.
  89. (gen_inlined_subroutine_die): Call it.
  90. (maybe_emit_file, init_file_table): Add comments.
  91. (prune_unused_types_walk_attribs): Pass DW_AT_call_file through
  92. maybe_emit_file.
  93. * tree-inline.c (remap_block): Copy BLOCK_SOURCE_LOCATION.
  94. (expand_call_inline): Set BLOCK_SOURCE_LOCATION.
  95. * tree.h (BLOCK_SOURCE_LOCATION): New.
  96. (struct tree_block): New field locus.
  97. - gcc4-dwarf2-usefbreg.patch
  98. 2005-08-10 Jakub Jelinek <jakub@redhat.com>
  99. * dwarf2out.c (concat_loc_descriptor): Add can_use_fbreg argument,
  100. pass it down to loc_descriptor.
  101. (loc_descriptor): Pass can_use_fbreg to concat_loc_descriptor.
  102. (containing_function_has_frame_base): Move earlier in the file.
  103. (loc_descriptor_from_tree_1): Use containing_function_has_frame_base
  104. instead of always assuming fbreg can't be used.
  105. - gcc4-dwarf2-prefer-1elt-vartracking.patch
  106. 2005-08-10 Jakub Jelinek <jakub@redhat.com>
  107. * dwarf2out.c (add_location_or_const_value_attribute): Prefer locations
  108. gathered by var-tracking in single entry loc_list over loc_descriptor_from_tree.
  109. - gcc4-dwarf2-frame_base.patch
  110. 2005-08-22 Richard Henderson <rth@redhat.com>
  111. * function.c (ARG_POINTER_CFA_OFFSET): Move ...
  112. * defaults.h (ARG_POINTER_CFA_OFFSET): ... here.
  113. (INCOMING_FRAME_SP_OFFSET): Moved from ...
  114. * dwarf2out.c (INCOMING_FRAME_SP_OFFSET): ... here.
  115. (struct cfa_loc): Change reg to unsigned int,
  116. rearrange for better packing.
  117. (lookup_cfa_1): Remove inline marker.
  118. (cfa_equal_p): Split out of ...
  119. (def_cfa_1): ... here. Use INVALID_REGNUM.
  120. (build_cfa_loc): Handle !cfa->indirect.
  121. (frame_pointer_cfa_offset): New.
  122. (dbx_reg_number): Assert register elimination performed; do
  123. leaf register remapping.
  124. (reg_loc_descriptor): Avoid calling dbx_reg_number when unused.
  125. (eliminate_reg_to_offset): New.
  126. (based_loc_descr): Remove can_use_fbreg argument. Use fbreg only
  127. for verifiably local stack frame addresses; re-base to CFA.
  128. (mem_loc_descriptor): Remove can_use_fbreg argument.
  129. (concat_loc_descriptor, loc_descriptor): Likewise.
  130. (containing_function_has_frame_base): Remove.
  131. (rtl_for_decl_location): Don't do register elimination or
  132. leaf register remapping here.
  133. (secname_for_decl): Split out from ..
  134. (add_location_or_const_value_attribute): ... here.
  135. (convert_cfa_to_loc_list): New.
  136. (compute_frame_pointer_to_cfa_displacement): New.
  137. (gen_subprogram_die): Use them.
  138. * tree.h (frame_base_decl): Remove.
  139. * var-tracking.c (frame_base_decl, frame_stack_adjust): Remove.
  140. (prologue_stack_adjust): Remove.
  141. (vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET.
  142. (adjust_stack_reference): Re-base memories to arg_pointer_rtx.
  143. (set_frame_base_location): Remove.
  144. (compute_bb_dataflow, emit_notes_in_bb): Don't call it.
  145. (dump_attrs_list, dump_dataflow_set): Use string concatenation.
  146. (vt_add_function_parameters): Don't eliminate_regs.
  147. (vt_initialize): Don't create frame_base_decl.
  148. 2005-09-21 Andreas Schwab <schwab@suse.de>
  149. PR rtl-optimization/23043
  150. * postreload-gcse.c (eliminate_partially_redundant_load): Fix typo
  151. when allocating a struct unoccr.
  152. 2005-09-29 Jakub Jelinek <jakub@redhat.com>
  153. * c-decl.c (c_write_global_declarations_1): If any
  154. wrapup_global_declaration_2 call returned true, restart the loop.
  155. * Drop no longer needed reversion of (part of larger patch):
  156. 2004-01-17 Joseph S. Myers <jsm@polyomino.org.uk>
  157. c-typeck.c (build_conditional_expr): Call non_lvalue instead of pedantic_non_lvalue.
  158. (The check has moved to fold-const.c and does call pedantic_non_lvalue now.)
  159. * Drop no longer needed patches:
  160. * collect2.c: Applied patch to allow collect2 to build on MinGW by Lev Serebryakov
  161. (2002-10-25).
  162. * expr.c (emit_push_insn): Don't take a modulus by 0. Set offset to constant 0 instead.
  163. 2004-07-25 Kevin Kofler <Kevin@tigcc.ticalc.org>
  164. * varasm.c (enum section_category): Move declaration up.
  165. (categorize_decl_for_section): Move prototype up.
  166. 2005-05-05 Kevin Kofler <Kevin@tigcc.ticalc.org>
  167. * dwarf2out.c (dwarf2out_start_source_file): Use the correct file number.
  168. * version.c: Don't hand-maintain version numbers, use (TIGCC) suffix instead.
  169. * Moved AMS-floating-point-related patch from config/m68k/m68k.c to config/m68k/predicates.md:
  170. (const_uint32_operand): Don't handle CONST_DOUBLE.
  171. Check for "INTVAL (op) >= 0" (possibly wrong?).
  172. * config/m68k/m68k.c (extended_address_operand): Move to config/m68k/predicates.md.
  173. * config/m68k/m68k.h: Don't add extended_address_operand to PREDICATE_CODES anymore.
  174. Don't define MASK_* and TARGET_* (except MASK_REG_RELATIVE,
  175. TARGET_REG_RELATIVE) anymore.
  176. (TARGET_DIRECTFLOAT): Define to always 0 (not supported yet).
  177. (TARGET_SWITCHES, TARGET_OPTIONS): Move options to...
  178. * config/m68k/m68k.opt: ... here. Remove "-mnoalign-int", "-mnopcrel", "-mnotios", "-mnoregparm",
  179. "-mnomerge-sections", "-mnomerge-to-data", "-mnorodata-to-text" (use
  180. "-mno-*" with the dash instead). Enable negative for "-mcoff-abslines".
  181. * Revert broken part of PR debug/24070 fix:
  182. 2005-10-06 Richard Henderson <rth@redhat.com>
  183. PR debug/24070
  184. * dwarf2out.c (lookup_filename): Return the result of maybe_emit_file.
  185. * builtins.c: Also disable expand_builtin_int_roundingfn, fold_builtin_int_roundingfn and
  186. stack-smashing protection builtins.
  187. (fold_builtins_1): Disable stack-smashing protection builtins.
  188. * builtins.def: Likewise.
  189. * Drop changes to c-parse.in (replaced by c-parser.c).
  190. * c-parser.c (c_parser_parameter_declaration): Handle an optional asmspec before the attributes
  191. to support register parameters. Pass it to
  192. build_c_parm (or NULL if there is none).
  193. (c_parser_compound_statement_nostart): Don't error about labels at end of compound statements,
  194. only pedwarn if pedantic.
  195. * config/m68k/m68k.c (output_move_double, floating_exact_log2): Use gcc_unreachable instead of
  196. abort.
  197. * config/smapbcd.h (REAL_VALUE_TO_TARGET_SINGLE, REAL_VALUE_TO_TARGET_DOUBLE): Likewise.
  198. (UNSIGNED_INF, POSITIVE_INF, NEGATIVE_INF, NAN, REAL_VALUE_LDEXP, REAL_VALUE_UNSIGNED_FIX,
  199. REAL_VALUE_RNDZINT, REAL_VALUE_TO_TARGET_LONG_DOUBLE, REAL_VALUE_TO_TARGET_SMAP_BCD):
  200. Add ull suffix to big numbers to get rid of warnings.
  201. * c-decl.c (c_insert_default_attributes): Use ISO C90 prototype.
  202. * c-typeck.c (build_modify_expr): Update parameters for default_function_array_conversion call.
  203. * expr.c (emit_block_move_via_libcall, clear_storage_via_libcall): Fix use of uninitialized
  204. variable.
  205. * real.c (real_value_dtof): Add ull suffix to big number to get rid of warning.
  206. (real_value_htof): Delete unused variable "exp2".
  207. (real_from_integer): Delete unused variable "i".
  208. * simplify-rtx.c (simplify_const_binary_operation): Declare tmp1 pointer const.
  209. (simplify_immed_subreg): Declare tmp pointer const.
  210. * tree-object-size.c (alloc_object_size): Don't handle BUILT_IN_CALLOC.
  211. (pass_through_call): Don't handle BUILT_IN_*_CHK.
  212. * optabs.c (lowpart_subreg_maybe_copy, expand_copysign_absneg): Disable.
  213. * config/m68k/m68k.c (m68k_handle_stkparm_attribute, m68k_handle_regparm_attribute): Update
  214. calls to warning().
  215. (m68k_save_reg, m68k_output_function_prologue): Fix pointer signedness mismatch.