ChangeLog-gcc-4.1.txt 14 KB

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