X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=bfaf388b089c3bc669a62a5e006269e1a1ec8705;hb=cb18bd3ce42532858cc65a1f20f3d79d5c253dde;hp=7c28457f7f863f80768a9776798614038b238957;hpb=4e775b8e0dd58553636f606e1482306b72128170;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7c28457f7f8..bfaf388b089 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,416 @@ +2011-03-31 Mark Wielaard + + * dwarf2out.c (dwarf2out_finish): Don't add low_pc and/or + high_pc attribute if the CU has no associated code. Only output + DW_AT_entry_pc for CU if not generating strict dwarf and + dwarf_version < 4. + +2011-04-01 Bernd Schmidt + + * dwarf2out.h (dwarf2out_frame_debug_init): Declare. + * dwarf2out.c (dwarf2out_frame_debug_init): New function, broken + out of ... + (dwarf2out_frame_debug): ... here. Don't handle a NULL argument. + * final.c (final_start_function): Call the new function rather + than using a NULL argument for dwarf2out_frame_debug. + + * ifcvt.c (cond_exec_process_insns): Disallow converting a block + that contains the prologue. + + * haifa-sched.c (queue_insn): New arg REASON. All callers + changed. Print it in debugging output. + + * sched-ebb.c (schedule_ebbs): Honor the BB_DISABLE_SCHEDULE flag. + + * sched-ebb.c (begin_schedule_ready): Remove second argument. + Split most of the code into... + (begin_move_insn): ... here. New function. + (ebb_sched_info): Add a pointer to it. + * haifa-sched.c (scheduled_insns): New static variable. + (sched_extend_ready_list): Allocate it. + (schedule_block): Use it to record the order of scheduled insns. + Perform RTL changes to move insns only after all scheduling + decisions have been made. + * modulo-sched.c (sms_sched_haifa_sched_info): Add NULL entry for the + begin_move_insn field. + * sel-sched-ir.c (sched_sel_haifa_sched_info): Likewise. + * sched-int.h (struct haifa_sched_info): Remove second argument + from begin_schedule_ready hook. Add new member begin_move_insn. + * sched-rgn.c (begin_schedule_ready): Remove second argument. + (rgn_const_sched_info): Add NULL entry for the begin_move_insn field. + + * haifa-sched.c (prune_ready_list): New function, broken out of + schedule_block. + (schedule_block): Use it. + +2011-04-01 Ulrich Weigand + + * config/spu/t-spu-elf (dp-bit.c): Use > instead of >>. + +2011-04-01 Kai Tietz + + * config.gcc (*-*-mingw*): Allow as option the + posix threading model. + * config/i386/mingw32.h ( SPEC_PTHREAD1, SPEC_PTHREAD2): + New macros defined dependent to TARGET_USE_PTHREAD_BY_DEFAULT + definition. + (CPP_SPEC): Add pthread/no-pthread handling. + (LIB_SPEC): Likewise. + * config/i386/mingw-w64.h (CPP_SPEC):Likewise. + (LIB_SPEC): Likewise. + * config/i386/t-cygming (SHLIB_PTHREAD_CFLAG): New + flag to pass -pthread option for shared libgcc build. + (SHLIB_PTHREAD_LDFLAG): New option to pass -lpthread + for shared libgcc build. + * config/i386/t-mingw-pthread: New file. + * config/i386/mingw-pthread.h (TARGET_USE_PTHREAD_BY_DEFAULT): + New define to enable use of library pthread by default. + * config/i386/mingw.opt (pthread): New driver option. + (no-pthread): New driver option. + * config/i386/cygming.opt: Make sure trailing empty line + is retained. + * config/i386/mingw-w64.opt: Likewise. + +2011-04-01 Gary Funck + + * c-decl.c (grokdeclarator): Fix formatting. + +2011-04-01 Richard Sandiford + + * expr.c (emit_block_move_via_movmem): Use n_generator_args + instead of n_operands. + (set_storage_via_setmem): Likewise. + * optabs.c (maybe_gen_insn): Likewise. + * config/arm/arm.c (arm_init_neon_builtins): Likewise. + * config/mips/mips.c (mips_expand_builtin_compare_1): Likewise. + (mips_expand_builtin_direct): Likewise. + * config/spu/spu.c (expand_builtin_args): Likewise. + +2011-04-01 Richard Sandiford + + * recog.h (insn_data_d): Add n_generator_args. + * genoutput.c (data): Likewise. + (output_insn_data): Print it. + (max_opno, num_dups): Delete. + (scan_operands): Just fill in "d->operand[...]". + (gen_insn, gen_peephole, gen_expand, gen_split): Use get_pattern_stats. + +2011-04-01 Richard Sandiford + + * gensupport.h (pattern_stats): New structure. + * gensupport.c (get_pattern_stats_1, get_pattern_stats): New functions. + * genemit.c (max_opno, max_dupno, max_scratch_opno): Delete. + (max_operand_1, max_operand_vec): Delete. + (gen_insn, gen_expand, gen_split): Use get_pattern_stats. + +2011-03-31 Nathan Froyd + + * emit-rtl.c (emit_pattern_after_setloc): New function. + (emit_insn_after_setloc, emit_jump_insn_after_setloc): Call it. + (emit_call_insn_after_setloc, emit_debug_insn_after_setloc): Likewise. + (emit_pattern_after): New function. + (emit_insn_after, emit_jump_insn_after): Call it. + (emit_call_insn_after, emit_debug_insn_after): Likewise. + (emit_pattern_before_setloc): New function. + (emit_insn_before_setloc, emit_jump_insn_before_setloc): Call it. + (emit_call_insn_before_setloc, emit_debug_insn_before_setloc): + Likewise. + (emit_pattern_before): New function. + (emit_insn_before, emit_jump_insn_before): Call it. + (emit_call_insn_before, emit_debug_insn_before): Likewise. + +2011-03-31 Richard Henderson + + * dwarf2out.c (dw_separate_line_info_ref): Remove. + (dw_separate_line_info_entry): Remove. + (enum dw_line_info_opcode): New. + (dw_line_info_entry): Use it. + (dw_line_info_table, dw_line_info_table_p): New. + (DWARF_LINE_OPCODE_BASE): Include dwarf3 opcodes. + (line_info_table, line_info_label_num): Remove. + (line_info_table_in_use): Remove. + (separate_line_info_table): Remove. + (separate_line_info_table_allocated): Remove. + (separate_line_info_table_in_use): Remove. + (LINE_INFO_TABLE_INCREMENT): Remove. + (line_info_label_num): New. + (cur_line_info_table): New. + (text_section_line_info, cold_text_section_line_info): New. + (separate_line_info): New. + (SEPARATE_LINE_CODE_LABEL): Remove. + (print_dwarf_line_table): Remove. + (debug_dwarf): Don't dump it. + (output_one_line_info_table): New. + (output_line_info): Use it. + (new_line_info_table): New. + (set_cur_line_info_table): New. + (dwarf2out_switch_text_section): Use it. + (dwarf2out_begin_function): Likewise. + (push_dw_line_info_entry): New. + (dwarf2out_source_line): Rewrite for new line info tables. + (dwarf2out_init): Remove dead initailizations. + +2011-03-31 Joseph Myers + + * opts.h (cl_option): Add comments to fields. Add bit-fields for + various flags. + (CL_SEPARATE_NARGS_SHIFT, CL_SEPARATE_NARGS_MASK, + CL_SEPARATE_ALIAS, CL_NO_DRIVER_ARG, CL_REJECT_DRIVER, CL_SAVE, + CL_DISABLED, CL_REPOR, CL_REJECT_NEGATIVE, CL_MISSING_OK, + CL_UINTEGER, CL_NEGATIVE_ALIAS): Remove. + (CL_JOINED, CL_SEPARATE, CL_UNDOCUMENTED): Update bit positions. + * opt-functions.awk (flag_init, switch_bit_fields): New. + (switch_flags): Don't handle flags moved to bit-fields. Don't + generate CL_MISSING_OK or CL_SAVE. + * optc-gen.awk: Update to generate bit-field output as well as + flags field. + * gcc.c (driver_wrong_lang_callback): Use cl_reject_driver + bit-field instead of CL_REJECT_DRIVER flag. + * opts-common.c (generate_canonical_option, + decode_cmdline_option): Use bit-fields instead of CL_* flags. + * opts.c (maybe_default_option): Use cl_reject_negative bit-field + instead of CL_REJECT_NEGATIVE flag. + * toplev.c (print_switch_values): Use cl_report bit-field instead + of CL_REPORT flag. + +2011-03-31 Eric Botcazou + + * tree-ssa-pre.c (create_component_ref_by_pieces_1) : Drop + a zero minimum index only if it is redundant. + +2011-03-31 Vladimir Makarov + + PR rtl-optimization/48381 + * ira-color.c (assign_hard_reg): Use hard reg set intersection + instead of ira_class_hard_reg_index for calculating conflicting + hard registers. + +2011-03-31 Steven Bosscher + + * cprop.c: Clean up hash table building. + (reg_avail_info): Remove. + (oprs_available_p): Remove. + (record_last_reg_set_info): Remove. + (record_last_set_info): Remove. + (reg_available_p): New function. + (gcse_constant_p): Do not treat unfolded conditions as constants. + (make_set_regs_unavailable): New function. + (hash_scan_set): Simplify with new reg_available_p. + (compute_hash_table_work): Traverse insns stream only once. + Do not compute reg_avail_info. Traverse insns in reverse order. + Record implicit sets after recording explicit sets from the block. + +2011-03-31 Michael Matz + + * builtins.c (build_va_arg_indirect_ref): Use + build_simple_mem_ref_loc. + +2011-03-31 Anatoly Sokolov + + * config/h8300/h8300.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove macro. + * config/h8300/h8300-protos.h (h8300_get_index): Remove. + * config/h8300/h8300.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define. + (h8300_mode_dependent_address_p): New function. + (h8300_get_index): Make static. + +2011-03-31 Jeff Law + + * reload1.c (elimination_effects): Fix typo in recent change. + + * tree-ssa-forwprop.c (forward_propagate_into_cond): Avoid + typo potentially leading to null pointer dereference. + + * caller-save.c (new_saved_hard_reg): Eliminate return value. + (setup_save_areas): Corresponding changes to avoid useless + assignments. + + * jump.c (reversed_comparison_code_parts): Avoid successive return + statements when REVERSE_CONDITION is defined. + + * expr.c (expand_assignment): Avoid useless assignments. + (expand_expr_real_1): Likewise. + (expand_expr_real_2): Avoid useless statements. + + * tree-ssa-phiopt.c (minmax_replacement): Avoid useless statement. + + * cfgexpand.c (expand_gimple_basic_block): Avoid useless assignment. + + * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Avoid useless + statements. + + * stmt.c (expand_expr_stmt): Avoid useless assignment. + +2011-03-31 Joseph Myers + + PR target/47109 + * doc/tm.texi.in (TARGET_VERSION): Remove. + * doc/tm.texi: Regenerate. + * system.h (TARGET_VERSION, MACHINE_TYPE): Poison. + * collect2.c (main): Don't use TARGET_VERSION. + * mips-tdump.c (main): Don't use TARGET_VERSION. + * mips-tfile.c (main): Don't use TARGET_VERSION. + * config.gcc (powerpc-wrs-vxworksae): Don't use + rs6000/vxworksae.h. + * config/rs6000/vxworksae.h: Remove. + * config/alpha/alpha.h (TARGET_VERSION): Remove. + * config/alpha/freebsd.h (TARGET_VERSION): Remove. + * config/alpha/linux-elf.h (TARGET_VERSION): Remove. + * config/alpha/netbsd.h (TARGET_VERSION): Remove. + * config/alpha/vms.h (TARGET_NAME, TARGET_VERSION): Remove. + * config/arm/arm.h (TARGET_VERSION): Remove. + * config/arm/coff.h (TARGET_VERSION): Remove. + * config/arm/ecos-elf.h (TARGET_VERSION): Remove. + * config/arm/elf.h (TARGET_VERSION): Remove. + * config/arm/freebsd.h (TARGET_VERSION): Remove. + * config/arm/linux-elf.h (TARGET_VERSION): Remove. + * config/arm/netbsd-elf.h (TARGET_VERSION): Remove. + * config/arm/pe.h (TARGET_VERSION): Remove. + * config/arm/rtems-elf.h (TARGET_VERSION): Remove. + * config/arm/semi.h (TARGET_VERSION): Remove. + * config/arm/uclinux-elf.h (TARGET_VERSION): Remove. + * config/arm/unknown-elf.h (TARGET_VERSION): Remove. + * config/arm/vxworks.h (TARGET_VERSION): Remove. + * config/avr/avr.h (TARGET_VERSION): Remove. + * config/bfin/bfin.h (TARGET_VERSION): Remove. + * config/fr30/fr30.h (TARGET_VERSION): Remove. + * config/frv/frv.h (TARGET_VERSION): Remove. + * config/h8300/h8300.h (TARGET_VERSION): Remove. + * config/i386/cygwin.h (TARGET_VERSION): Remove. + * config/i386/darwin.h (TARGET_VERSION): Remove. + * config/i386/darwin64.h (TARGET_VERSION): Remove. + * config/i386/djgpp.h (TARGET_VERSION): Remove. + * config/i386/freebsd.h (TARGET_VERSION): Remove. + * config/i386/freebsd64.h (TARGET_VERSION): Remove. + * config/i386/gnu.h (TARGET_VERSION): Remove. + * config/i386/i386-interix.h (TARGET_VERSION): Remove. + * config/i386/i386elf.h (TARGET_VERSION): Remove. + * config/i386/linux.h (TARGET_VERSION): Remove. + * config/i386/linux64.h (TARGET_VERSION): Remove. + * config/i386/lynx.h (TARGET_VERSION): Remove. + * config/i386/mingw32.h (TARGET_VERSION): Remove. + * config/i386/netbsd-elf.h (TARGET_VERSION): Remove. + * config/i386/netbsd64.h (TARGET_VERSION): Remove. + * config/i386/netware.h (TARGET_VERSION): Remove. + * config/i386/nto.h (TARGET_VERSION): Remove. + * config/i386/openbsd.h (TARGET_VERSION): Remove. + * config/i386/vxworks.h (TARGET_VERSION): Remove. + * config/ia64/elf.h (TARGET_VERSION): Remove. + * config/ia64/freebsd.h (TARGET_VERSION): Remove. + * config/ia64/hpux.h (TARGET_VERSION): Remove. + * config/ia64/linux.h (TARGET_VERSION): Remove. + * config/ia64/vms.h (TARGET_NAME, TARGET_VERSION): Remove. + * config/iq2000/iq2000.h (IQ2000_VERSION, MACHINE_TYPE, + TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove. + * config/lm32/lm32.h (TARGET_VERSION): Remove. + * config/lm32/uclinux-elf.h (TARGET_VERSION): Remove. + * config/m32c/m32c.h (TARGET_VERSION): Remove. + * config/m32r/linux.h (LINUX_DEFAULT_ELF, TARGET_VERSION): Remove. + * config/m32r/m32r.h (TARGET_VERSION): Remove. + * config/m68k/linux.h (TARGET_VERSION): Remove. + * config/m68k/m68k.h (TARGET_VERSION): Remove. + * config/m68k/netbsd-elf.h (TARGET_VERSION): Remove. + * config/m68k/uclinux.h (TARGET_VERSION): Remove. + * config/mcore/mcore-elf.h (TARGET_VERSION): Remove. + * config/mep/mep.h (TARGET_VERSION): Remove. + * config/microblaze/microblaze.h (MICROBLAZE_VERSION, + MACHINE_TYPE, TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove. + * config/mips/iris6.h (MACHINE_TYPE): Remove. + * config/mips/linux.h (TARGET_VERSION): Remove. + * config/mips/netbsd.h (MACHINE_TYPE): Remove. + * config/mips/vxworks.h (TARGET_VERSION): Remove. + * config/mmix/mmix.h (TARGET_VERSION): Remove. + * config/mn10300/linux.h (TARGET_VERSION): Remove. + * config/mn10300/mn10300.h (TARGET_VERSION): Remove. + * config/pa/pa.h (TARGET_VERSION): Remove. + * config/pdp11/pdp11.h (TARGET_VERSION): Remove. + * config/picochip/picochip.h (TARGET_VERSION): Remove. + * config/rs6000/aix.h (TARGET_VERSION): Remove. + * config/rs6000/darwin.h (TARGET_VERSION): Remove. + * config/rs6000/darwin64.h (TARGET_VERSION): Remove. + * config/rs6000/eabi.h (TARGET_VERSION): Remove. + * config/rs6000/eabialtivec.h (TARGET_VERSION): Remove. + * config/rs6000/eabisim.h (TARGET_VERSION): Remove. + * config/rs6000/eabispe.h (TARGET_VERSION): Remove. + * config/rs6000/freebsd.h (TARGET_VERSION): Remove. + * config/rs6000/linux.h (TARGET_VERSION): Remove. + * config/rs6000/linux64.h (TARGET_VERSION): Remove. + * config/rs6000/linuxaltivec.h (TARGET_VERSION): Remove. + * config/rs6000/linuxspe.h (TARGET_VERSION): Remove. + * config/rs6000/lynx.h (TARGET_VERSION): Remove. + * config/rs6000/netbsd.h (TARGET_VERSION): Remove. + * config/rs6000/sysv4.h (TARGET_VERSION): Remove. + * config/rs6000/vxworks.h (TARGET_VERSION): Remove. + * config/s390/linux.h (TARGET_VERSION): Remove. + * config/s390/s390.h (TARGET_VERSION): Remove. + * config/s390/tpf.h (TARGET_VERSION): Remove. + * config/score/score.h (TARGET_VERSION): Remove. + * config/sh/linux.h (TARGET_VERSION): Remove. + * config/sh/netbsd-elf.h (TARGET_VERSION_ENDIAN, + TARGET_VERSION_CPU, TARGET_VERSION): Remove. + * config/sh/sh.h (TARGET_VERSION): Remove. + * config/sh/sh64.h (TARGET_VERSION): Remove. + * config/sh/superh.h (TARGET_VERSION): Remove. + * config/sh/vxworks.h (TARGET_VERSION): Remove. + * config/sparc/freebsd.h (TARGET_VERSION): Remove. + * config/sparc/linux.h (TARGET_VERSION): Remove. + * config/sparc/linux64.h (TARGET_VERSION): Remove. + * config/sparc/netbsd-elf.h (TARGET_VERSION, TARGET_NAME64, + TARGET_NAME32, TARGET_NAME): Remove. + * config/sparc/openbsd64.h (TARGET_VERSION): Remove. + * config/sparc/sp-elf.h (TARGET_VERSION): Remove. + * config/sparc/sp64-elf.h (TARGET_VERSION): Remove. + * config/sparc/sysv4.h (TARGET_VERSION): Remove. + * config/sparc/vxworks.h (TARGET_VERSION): Remove. + * config/spu/spu.h (TARGET_VERSION): Remove. + * config/stormy16/stormy16.h (TARGET_VERSION): Remove. + * config/v850/v850.h (TARGET_VERSION): Remove. + * config/vax/linux.h (TARGET_VERSION): Remove. + * config/vax/vax.h (TARGET_NAME, TARGET_VERSION): Remove. + * config/xtensa/elf.h (TARGET_VERSION): Remove. + * config/xtensa/linux.h (TARGET_VERSION): Remove. + +2011-03-31 Eric Botcazou + + PR target/48142 + * config/i386/i386.c (ix86_adjust_stack_and_probe): Differentiate + frame-related from frame-unrelated adjustments to the stack pointer. + +2011-03-31 Jakub Jelinek + + * common.opt (fdebug-types-section): Move earlier. + * doc/invoke.texi: Fix up -fno-debug-types-section documentation. + +2011-03-31 Andreas Tobler + + * config/rs6000/rs6000.c (rs6000_handle_option): Remove unused isel + var. + +2011-03-30 Nathan Froyd + + * tree.h (CASE_CHAIN): Define. + * tree-cfg.c (edge_to_cases_cleanup, get_cases_for_edge): Use it. + (gimple_redirect_edge_and_branch): Likewise. + +2011-03-30 Vladimir Makarov + + PR middle-end/48367 + * ira-costs.c (find_costs_and_classes): Fix a typo in i_mem_cost + calculation. + +2011-03-30 Jeff Law + + * PR bootstrap/48371 + * reload1.c (reload): Fix botch in last change. + + * reload.h (struct reload): Fix typo introduced in last change. + +2011-03-30 Joseph Myers + + * config/arm/arm.opt (mhard-float, msoft-float): Mark + Undocumented. Remove help text. + * doc/invoke.texi (ARM Options): Don't document -msoft-float and + -mhard-float. + 2011-03-30 Joseph Myers * doc/options.texi (NegativeAlias): Document.