+2009-06-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * dwarf2out.c (deferred_asm_name): New.
+ (add_name_and_src_coords_attributes): Defer creation of
+ DW_AT_MIPS_linkage_name attribute if DECL_ASSEMBLER_NAME was not
+ computed yet.
+ (move_linkage_attr): New.
+ (dwarf2out_finish): Revisit deferrals and emit attributes at the
+ right place.
+
+2009-06-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * tree-nested.c (finalize_nesting_tree_1): Declare the
+ frame_decl in the binding tree.
+
+2009-06-04 Cary Coutant <ccoutant@google.com>
+
+ * basic-block.h (struct basic_block_def): Add discriminator field.
+ * dbxout.c (dbxout_source_line): Add new parameter. Change all
+ callers.
+ * debug.c (do_nothing_debug_hooks): Add additional entry.
+ (debug_nothing_int_charstar_int): New function.
+ * debug.h (struct gcc_debug_hooks): Add parameter to source_line
+ hook.
+ (debug_nothing_int_charstar_int): New declaration.
+ * dwarf2out.c (dwarf2out_source_line): Add new parameter. Write
+ discriminator value in .loc directive.
+ * final.c (last_discriminator): New variable.
+ (discriminator): New variable.
+ (final_start_function): Initialize above variables, pass current
+ discriminator to debug hook.
+ (notice_source_line): Check for discriminator change.
+ * gimple-pretty-print.c (dump_bb_header): Print discriminator value.
+ * sdbout.c (sdbout_source_line): New parameter.
+ * tree-cfg.c (struct locus_discrim_map): New structure type.
+ (discriminator_per_locus): New hash table.
+ (build_gimple_cfg): Allocate and free discriminator hash table.
+ (make_edges): Call assign_discriminator.
+ (locus_map_hash): New function.
+ (locus_map_eq): New function.
+ (next_discriminator_for_locus): New function.
+ (same_line_p): New function.
+ (assign_discriminator): New function.
+ (make_cond_expr_edges): Call assign_discriminator.
+ (make_gimple_switch_edges): Likewise.
+ (first_non_label_stmt): New function.
+ * vmsdbgout.c (vmsdbgout_source_line): Add new parameter. Change
+ all callers.
+ * xcoffout.c (xcoffout_source_line): Add new parameter.
+
+ * configure.ac (gcc_cv_as_discriminator): New configury check for
+ gas support for discriminator.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
+2009-06-04 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ * config/arm/arm.c (thumb2_legitimate_index_p): Initialize
+ val after checking for integers.
+
+2009-06-04 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.h (X86_64_MS_REGPARM_MAX): Rename from
+ X64_REGPARM_MAX.
+ (REGPARM_MAX): Use X86_64_MS_REGPARM_MAX.
+ (X86_64_MS_SSE_REGPARM_MAX): Rename from X64_SSE_REGPARM_MAX.
+ (SSE_REGPARM_MAX): Use X86_64_MS_SSE_REGPARM_MAX.
+ * config/i386/i386.c: Use X86_64_MS_REGPARM_MAX instead of
+ X64_REGPARM_MAX. Use X86_64_MS_SSE_REGPARM_MAX instead of
+ X64_SSE_REGPARM_MAX.
+ * config/i386/i386.md: Use X86_64_MS_SSE_REGPARM_MAX instead of
+ X64_SSE_REGPARM_MAX.
+
+2009-06-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * gcc.c (report_times_to_file): New.
+ (execute): Implement it.
+ (process_command): Support -time=.
+ * doc/invoke.texi: Document it.
+
+2009-06-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * tree-ssa-live.c (remove_unused_scope_block_p): Keep variables
+ that have value exprs.
+
+2009-06-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * dwarf2asm.c (dw2_force_const_mem): Defer creation of
+ declarations for constants until...
+ (dw2_output_indirect_constant_1): ... this point.
+
+2009-06-04 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/10242
+ * arm.md (arm_addsi3): Don't try to split an add with an
+ eliminable register until after reload has completed.
+
+2009-06-03 Ian Lance Taylor <iant@google.com>
+
+ * dummy-checksum.c (executable_checksum): Use EXPORTED_CONST.
+ * genattrtab.c (write_length_unit_log): Likewise.
+ * genchecksum.c (dosum): Likewise.
+ * gengtype.c (write_rtx_next): Likewise.
+ (finish_root_table, write_roots): Likewise.
+ * gimple.c (gimple_ops_offset_): Likewise.
+ * tree-nomudflap.c (gt_ggc_r_gt_tree_mudflap_h): Likewise.
+ * config/arc/arc.c (arc_attribute_table): Likewise.
+ * config/arm/arm.c (arm_attribute_table): Likewise.
+ * config/avr/avr.c (avr_attribute_table): Likewise.
+ * config/crx/crx.c (crx_attribute_table): Likewise.
+ * config/m32r/m32r.c (m32r_attribute_table): Likewise.
+ * config/m68hc11/m68hc11.c (m68hc11_attribute_table): Likewise.
+ * config/mcore/mcore.c (mcore_attribute_table): Likewise.
+ * config/rs6000/rs6000.c (rs6000_attribute_table): Likewise.
+ * config/sh/sh.c (sh_attribute_table): Likewise.
+ * config/sparc/sparc.c (sparc_attribute_table): Likewise.
+ * config/spu/spu.c (spu_attribute_table): Likewise.
+ * config/v850/v850.c (v850_attribute_table): Likewise.
+
+ * config/alpha/alpha.c (vms_attribute_table): Make static.
+ * config/bfin/bfin.c (bfin_attribute_table): Likewise.
+ * config/h8300/h8300.c (h8300_attribute_table): Likewise.
+ * config/mips/mips.c (mips_attribute_table): Likewise.
+
+ * Makefile.in (dummy-checksum.o): Depend upon $(CONFIG_H) and
+ $(SYSTEM_H).
+ (cc1-checksum.o): Likewise.
+
+2009-06-03 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/vect.md (*movv2sf_internal): Handle big endian case.
+
+2009-06-03 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_stack_reset): Return generated
+ insn if it is changing sp. Use gen_add3_insn instead of
+ conditionally gen_addsi3 and gen_adddi3.
+ (offset_below_red_zone_p): New static inline function.
+ (rs6000_emit_epilogue): Emit needed epilogue unwind info.
+ Use gen_add3_insn instead of conditionally gen_addsi3 and gen_adddi3.
+ * config/rs6000/ppc-asm.h: Include auto-host.h.
+ (CFI_STARTPROC, CFI_ENDPROC, CFI_DEF_CFA_REGISTER, CFI_OFFSET,
+ CFI_RESTORE): Define.
+ * config/rs6000/crtresxgpr.asm: Add unwind info.
+ * config/rs6000/crtresxfpr.asm: Likewise.
+ * config/rs6000/crtresgpr.asm: Likewise.
+ * config/rs6000/crtresfpr.asm: Likewise.
+ * config/rs6000/crtsavgpr.asm: Likewise.
+ * config/rs6000/crtsavfpr.asm: Likewise.
+
+ * dwarf2out.c (output_cfi_directive): Pass 1 instead of
+ 0 to second argument of DWARF2_FRAME_REG_OUT macros.
+
+2009-06-03 Julian Brown <julian@codesourcery.com>
+
+ * config/arm/arm.c (arm_hard_regno_mode_ok): Permit values of four
+ words or less (including TImode) in core registers.
+
+2009-06-03 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/40328
+ * fold-const.c (fold_convert): Fold the build COMPLEX_EXPR.
+
+2009-06-03 Andrey Belevantsev <abel@ispras.ru>
+
+ * statistics.c (statistics_counter_event): Do not record event
+ in pass dump if its number == -1.
+ (curr_statistics_hash): Add assert that we never get passes
+ with static number == -1.
+
+2009-06-03 Richard Guenther <rguenther@suse.de>
+ Andrey Belevantsev <abel@ispras.ru>
+
+ * cfgexpand.c (discover_nonconstant_array_refs_r): Make only
+ non-BLKmode arrays addressable.
+
+2009-06-03 Maxim Kuvyrkov <maxim@codesourcery.com>
+
+ * config/m68k/linux.h (HAVE_GAS_BALIGN_AND_P2ALIGN): Move to ...
+ * config/m68k/m68k.h: ... here.
+ * testsuite/gcc.dg/falign-labels.c (dg-options): Don't restrict for
+ m68k and fido.
+
+2009-06-03 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimization/40323
+ * ipa-prop.c (get_ssa_def_if_simple_copy): Break if not single
+ assignment.
+
+2009-06-03 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE
+ consistently.
+
+2009-06-03 Shujing Zhao <pearly.zhao@oracle.com>
+
+ * config/sh/predicates.md: Use REG_P, MEM_P, CONST_INT_P, LABEL_P,
+ JUMP_P, CALL_P, NONJUMP_INSN_P, NOTE_P, BARRIER_P and
+ JUMP_TABLE_DATA_P where applicable.
+ * config/sh/sh.c: Ditto.
+ * config/sh/sh.h: Ditto.
+ * config/sh/sh.md: Ditto.
+ * config/sh/symbian.c: Ditto.
+
+2009-06-03 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/driver-i386.c (describe_cache): Optimize
+ concatenation of strings. Use snprintf instead of sprintf.
+ (host_detect_local_cpu): Ditto. Ignore -march and -mtune for native
+ target when not compiling with GCC.
+
+2009-06-02 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c: Revert last change.
+ (sh_expand_epilogue): Emit a blockage insn before the frame
+ pointer adjustment unconditionally.
+
+2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com>
+
+ * config/pa/pa-hpux.h (LINK_SPEC): Remove "%<fwhole-program".
+ * config/pa/pa-hpux10.h (LINK_SPEC): Likewise.
+ * config/pa/pa-hpux11.h (LINK_SPEC): Likewise.
+ * gcc.c (set_collect_gcc_options): Don't add -fwhole-program
+ to COLLECT_GCC_OPTIONS.
+
+2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com>
+
+ * collect2.c (target_system_root): New variable.
+ (main): Handle --sysroot=.
+ (ignore_library): Strip the sysroot from the library path.
+
+2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com>
+
+ * Makefile.in (COLLECT2_OBJS): Add collect2-aix.o.
+ (collect2.o): Depend on collect2-aix.h.
+ (collect2-aix.o): New rule.
+ * collect2-aix.h: New file.
+ * collect2-aix.c: Likewise.
+ * collect2.c: Include collect2-aix.h. Don't undefine
+ OBJECT_FORMAT_COFF if CROSS_AIX_SUPPORT is defined.
+ Guard native includes with #ifndef CROSS_DIRECTORY_STRUCTURE.
+ Use TARGET_AIX_VERSION instead of _AIX51.
+ * config/rs6000/aix43.h (TARGET_AIX_VERSION): Define.
+ * config/rs6000/aix51.h (TARGET_AIX_VERSION): Likewise.
+ * config/rs6000/aix52.h (TARGET_AIX_VERSION): Likewise.
+ * config/rs6000/aix53.h (TARGET_AIX_VERSION): Likewise.
+ * config/rs6000/aix61.h (TARGET_AIX_VERSION): Likewise.
+
+2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com>
+
+ * collect2.c (ignore_library): Avoid premature post-increment
+ and null deference.
+
+2009-06-02 Richard Sandiford <r.sandiford@uk.ibm.com>
+
+ * Makefile.in (libgcc.mvars): Add TARGET_SYSTEM_ROOT.
+ * config/rs6000/aix.h (LINK_SYSCALLS_SPEC): Add %R to the
+ !CROSS_DIRECTORY_STRUCTURE alternative and use it for
+ CROSS_DIRECTORY_STRUCTURE too.
+ (LINK_LIBG_SPEC): Likewise.
+ (LIB_SPEC): Add %R to sysroot paths.
+ * config/rs6000/aix43.h (CPP_SPEC): Add %R to sysroot paths.
+ (CPLUSPLUS_CPP_SPEC, LIB_SPEC): Likewise.
+ * config/rs6000/aix51.h: As for aix43.h.
+ * config/rs6000/aix52.h: Likewise.
+ * config/rs6000/aix53.h: Likewise.
+ * config/rs6000/aix61.h: Likewise.
+ * config/rs6000/t-aix52 (SHLIB_LINK): Add $(TARGET_SYSTEM_ROOT)
+ to the beginning of sysroot paths.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * print_rtl (print_rtx): Don't print modes in EXPR_LISTs and
+ INSN_LISTs that are out of the REG_NOTE range.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * loop-unroll.c (struct iv_to_split): Add pointer to next.
+ (struct var_to_expand): Likewise.
+ (struct opt_info): Add head and tail for linked lists of the above.
+ (analyze_insn_to_expand_var): Initialize next.
+ (analyze_iv_to_split_insn): Likewise.
+ (analyze_insns_in_loop): Create linked lists.
+ (allocate_basic_variable): Simplify for use without hash table.
+ (insert_var_expansion_initialization): Likewise, make it type-safer.
+ (combine_var_copies_in_loop_exit): Likewise.
+ (apply_opt_in_copies): Walk lists rather than hash tables.
+ (release_var_copies): Simplified and inlined by hand into...
+ (free_opt_info): ... this function.
+
+2009-06-02 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE
+ for field decls.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * cfgexpand.c (gimple_expand_cfg): Discard the source location
+ only for builtins that are not overridden.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * gengtype.c (adjust_field_rtx_def): Add NOTE_INSN_DELETED_LABEL's
+ label string.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * df-core.c (df_ref_debug): Honor -fdump-noaddr.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (move_deaths): Compare LUIDs within the same BB only.
+
+2009-06-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * common.opt (fdump-unnumbered-links): New.
+ * doc/invoke.texi (-fdump-unnumbered-links): Document it.
+ * print-rtl.c (flag_dump_unnumbered_links): New.
+ (print_rtx): Test it.
+
+2009-06-02 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_get_frame_offsets): Prefer using r3 for padding a
+ push/pop multiple to 8-byte alignment.
+
+2009-06-01 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (queued_cfa_restores): New static variable.
+ (ix86_add_cfa_restore_note, ix86_add_queued_cfa_restore_notes): New
+ functions.
+ (pro_epilogue_adjust_stack): Call ix86_add_queued_cfa_restore_notes.
+ (ix86_emit_restore_reg_using_pop): Add RED_OFFSET argument.
+ Set RTX_FRAME_RELATED_P immediately after adding a REG_CFA_* note.
+ Call ix86_add_cfa_restore_note instead of adding REG_CFA_OFFSET
+ note unconditionally.
+ (ix86_emit_restore_regs_using_mov): Likewise.
+ (ix86_emit_restore_sse_regs_using_mov): Likewise.
+ (ix86_emit_restore_regs_using_pop): Add RED_OFFSET argument, pass
+ it through to ix86_emit_restore_reg_using_pop.
+ (ix86_emit_leave): Add RED_OFFSET argument. Call
+ ix86_add_queued_cfa_restore_notes. Call ix86_add_cfa_restore_note
+ instead of adding REG_CFA_OFFSET note unconditionally.
+ (ix86_expand_epilogue): Compute RED_OFFSET, pass it down to
+ the above functions. Call ix86_add_queued_cfa_restore_notes when
+ needed.
+
+ * dwarf2out.c (dwarf2out_cfi_label): Add FORCE argument, if true,
+ force output of the label even for dwarf2out_do_cfi_asm.
+ (add_fde_cfi): If -g2 and above and cfi might change CFA,
+ force creation of CFI label and chain DW_CFA_set_loc jumping to it
+ for convert_cfa_to_fb_loc_list. Adjust other dwarf2out_cfi_label
+ caller.
+ (dwarf2out_stack_adjust, dwarf2out_frame_debug,
+ dwarf2out_begin_epilogue, dwarf2out_frame_debug_restore_state): Adjust
+ dwarf2out_cfi_label callers.
+ * tree.h (dwarf2out_cfi_label): Adjust prototype.
+ * config/arm/arm.c (thumb_pushpop, thumb1_output_function_prologue):
+ Adjust dwarf2out_cfi_label callers.
+ * config/vax/vax.c (vax_output_function_prologue): Likewise.
+
+ * config/i386/i386.h (struct machine_cfa_state,
+ struct machine_function): Guard with ifndef USED_FOR_TARGET
+ instead of not IN_LIBGCC2 and not in IN_TARGET_LIBS.
+
+ PR other/40024
+ * emutls.c (__emutls_get_address): Change arr->size to mean number
+ of allocated arr->data entries instead of # of slots + 1.
+
+ PR middle-end/40316
+ * recog.c (peep2_reinit_state): New function.
+ (peephole2_init_state): Use it at the end of a basic block and also
+ when seeing a RTX_FRAME_RELATED_P insn.
+
+2009-06-01 Steve Ellcey <sje@cup.hp.com>
+
+ * ia64.md (floatdirf2, fix_truncrfdi, floatunsdirf,
+ fixuns_truncrfdi2): New.
+ (fix_truncxfdi2_alts, fixuns_truncxfdi2_alts,
+ *nmaddsf4_alts, *nmadddf4_alts, *nmadddf4_truncsf_alts,
+ *mulxf3_alts, *mulxf3_truncsf_alts, *mulxf3_truncdf_alts,
+ *maddxf4_alts, *maddxf4_alts_truncsf, *maddxf4_alts_truncdf,
+ *nmaddxf4_alts, *nmaddxf4_truncsf_alts, *nmaddxf4_truncdf_alts,
+ *recip_approx): Remove.
+ (divsi3 modsi3, udivsi3, umodsi3, divsi3_internal, divdi3,
+ moddi3, udivdi3, umoddi3, divdi3_internal_lat, divdi3_internal_thr,
+ divsf3, sqrtsf2, divdf3, sqrtdf2, divxf3, sqrtxf2): Modify and
+ move to div.md.
+ * div.md (fix_truncrfdi2_alts, fixuns_truncrfdi2_alt,
+ setf_exp_rf): New.
+
+2009-06-01 Ian Lance Taylor <iant@google.com>
+
+ * attribs.c (register_attribute): Use CONST_CAST.
+ * collect2.c (main): Use CONST_CAST2.
+ (scan_prog_file): Likewise.
+ * gcc.c (process_command, main): Likewise.
+ * toplev.c (toplev_main): Likewise.
+
+ * c-typeck.c (handle_warn_cast_qual): New static function,
+ partially broken out of build_c_cast.
+ (build_c_cast): Call handle_warn_cast_qual.
+ * doc/invoke.texi (Warning Options): Document new effect of
+ -Wcast-qual.
+
2009-06-01 Aldy Hernandez <aldyh@redhat.com>
* diagnostic.c (diagnostic_build_prefix): Always print columns.
2009-06-01 Maxim Kuvyrkov <maxim@codesourcery.com>
Revert due to PR40320:
-
2009-06-01 Maxim Kuvyrkov <maxim@codesourcery.com>
* calls.c (emit_library_call_value_1): Don't force_operand for move
and push insns.
2009-06-01 Olivier Hainque <hainque@adacore.com>
- Eric Botcazou <botcazou@adacore.com>
+ Eric Botcazou <ebotcazou@adacore.com>
* tree.h (CONSTRUCTOR_BITFIELD_P): True if NODE, a FIELD_DECL, is
to be processed as a bitfield for constructor output purposes.
2009-05-31 Ian Lance Taylor <iant@google.com>
- * regstat.c (regstat_n_sets_and_refs): Remove duplicate
- definition.
+ * regstat.c (regstat_n_sets_and_refs): Remove duplicate definition.
2009-05-31 Ian Lance Taylor <iant@google.com>
- * Makefile.in (except.o): Depend upon gt-except.h, not
- gt-$(EXCEPT_H).
+ * Makefile.in (except.o): Depend upon gt-except.h, not gt-$(EXCEPT_H).
(ipa-cp.o): Depend upon $(FIBHEAP_H) and $(PARAMS_H).
(ipa-reference.o): Depend upon gt-ipa-reference.h.
2009-05-31 Jason Merrill <jason@redhat.com>
* tree-pretty-print.c (print_call_name): Take the callee, not the
- call itself. Make non-static. Use dump_function_name for
- functions.
+ call itself. Make non-static. Use dump_function_name for functions.
(dump_generic_node): Adjust.
* diagnostic.h: Declare print_call_name.
* gimple-pretty-print.c (dump_gimple_call): Use it.
(vectorize_loops): Don't allocate and free vect_memsyms_to_rename.
Call mark_sym_for_renaming.
* tree-vectorizer.h (vect_memsyms_to_rename): Remove.
- * tree-vect-loop.c (vect_transform_loop): Remove vect_memsyms_to_rename
- initialization and a call to mark_set_for_renaming.
+ * tree-vect-loop.c (vect_transform_loop): Remove
+ vect_memsyms_to_rename initialization and a call to
+ mark_set_for_renaming.
2009-05-31 Jakub Jelinek <jakub@redhat.com>
2009-05-30 Kai Tietz <kai.tietz@onevision.com>
* config/i386/mingw-tls.c: New file.
- * config/i386/t-gthr-win32 (LIB2FUNCS_EXTRA): Add
- mingw-tls.c file.
- * gthr-win32.h (MINGW32_SUPPORTS_MT_EH): Define
- it for targets defining _WIN32 but not __CYGWIN__.
+ * config/i386/t-gthr-win32 (LIB2FUNCS_EXTRA): Add mingw-tls.c file.
+ * gthr-win32.h (MINGW32_SUPPORTS_MT_EH): Define it for targets
+ defining _WIN32 but not __CYGWIN__.
2009-05-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
avx_cmps<ssemodesuffixf2c><mode>3, *avx_maskcmp<mode>3,
<sse>_maskcmp<mode>3, <sse>_vmmaskcmp<mode>3,
avx_shufps256_1, *avx_shufps_<mode>, sse_shufps_<mode>,
- *vec_dupv4sf_avx, *vec_dupv4sf): Set
- length_immediate attribute to 1.
+ *vec_dupv4sf_avx, *vec_dupv4sf): Set length_immediate attribute to 1.
(*avx_cvtsi2ssq, *avx_cvtsi2sdq): Set length_vex attribute to 4.
(sse_cvtsi2ssq, sse2_cvtsi2sdq): Set prefix_rex attribute to 1.
(sse2_cvtpi2pd, sse_loadlps, sse2_storelpd): Override
(*avx_mulv2siv2di3, *avx_mulv4si3, sse4_2_gtv2di3): Set prefix_extra
to 1.
(*avx_<code><mode>3, *avx_eq<mode>3, *avx_gt<mode>3): Set
- prefix_extra attribute for variants that don't have 0f prefix
- alone.
+ prefix_extra attribute for variants that don't have 0f prefix alone.
(*avx_pinsr<ssevecsize>): Likewise. Set length_immediate to 1.
(*sse4_1_pinsrb, *sse2_pinsrw, *sse4_1_pinsrd, *sse4_1_pextrb,
*sse4_1_pextrb_memory, *sse2_pextrw, *sse4_1_pextrw_memory,
ssse3_phsubwv4hi3, ssse3_phsubdv2si3, ssse3_phsubswv4hi3,
ssse3_pmaddubsw, *ssse3_pmulhrswv4hi, ssse3_pshufbv8qi3,
ssse3_psign<mode>3): Override prefix_rex attribute.
- (*avx_palignrti): Override prefix_extra and length_immediate
- to 1.
+ (*avx_palignrti): Override prefix_extra and length_immediate to 1.
(ssse3_palignrti): Override length_immediate to 1.
(ssse3_palignrdi): Override length_immediate to 1, override
prefix_rex attribute.
- (abs<mode>2): Override prefix_rep to 0, override prefix_rex
- attribute.
+ (abs<mode>2): Override prefix_rep to 0, override prefix_rex attribute.
(sse4a_extrqi): Override length_immediate to 2.
(sse4a_insertqi): Likewise. Override prefix_data16 to 0.
(sse4a_insertq): Override prefix_data16 to 0.
(mmx_ashr<mode>3, mmx_lshr<mode>3, mmx_ashl<mode>3): Set
length_immediate to 1 if operand 2 is const_int_operand.
(*mmx_pinsrw, mmx_pextrw, mmx_pshufw_1, *vec_dupv4hi,
- *vec_extractv2si_1): Set length_immediate
- attribute to 1.
+ *vec_extractv2si_1): Set length_immediate attribute to 1.
(*mmx_uavgv8qi3): Override prefix_extra attribute to 1 if
using old 3DNOW insn rather than SSE/3DNOW_A.
(mmx_emms, mmx_femms): Clear modrm attribute.
2009-05-28 Steve Ellcey <sje@cup.hp.com>
- * doc/invoke.texi (IA-64 Options)
+ * doc/invoke.texi (IA-64 Options):
Add -msdata, -mfused-madd, -mno-inline-float-divide,
-mno-inline-int-divide, -mno-inline-sqrt, -msched-spec-ldc,
-msched-spec-control-ldc, -msched-prefer-non-data-spec-insns,
-msched-stop-bits-after-every-cycle,
-msched-count-spec-in-critical-path,
-msel-sched-dont-check-control-spec, -msched-fp-mem-deps-zero-cost
- -msched-max-memory-insns-hard-limit, -msched-max-memory-insns
+ -msched-max-memory-insns-hard-limit, -msched-max-memory-insns.
Remove -mt, -pthread, -msched-ldc, -mno-sched-control-ldc,
and -msched-spec-verbose.
2009-05-28 Joseph Myers <joseph@codesourcery.com>
- * config/arm/lib1funcs.asm (__clear_cache): Define if
- L_clear_cache.
+ * config/arm/lib1funcs.asm (__clear_cache): Define if L_clear_cache.
* config/arm/linux-eabi.h (CLEAR_INSN_CACHE): Define to give an
error if used.
* config/arm/t-linux-eabi (LIB1ASMFUNCS): Add _clear_cache.
(get_ref_from_reference_ops): remove.
(vn_reference_lookup_2): Adjust signature.
(vn_reference_lookup_3): Do not re-build trees. Handle unions.
- (vn_reference_lookup_pieces): Adjust signature, do not re-build
- trees.
+ (vn_reference_lookup_pieces): Adjust signature, do not re-build trees.
(vn_reference_lookup): Adjust.
(vn_reference_insert): Likewise.
(vn_reference_insert_pieces): Adjust signature.
2009-05-28 Adam Nemet <anemet@caviumnetworks.com>
PR middle-end/33699
- * target.h (struct gcc_target): Fix indentation. Add
- const_anchor.
+ * target.h (struct gcc_target): Fix indentation. Add const_anchor.
* target-def.h (TARGET_CONST_ANCHOR): New macro.
(TARGET_INITIALIZER): Use it.
* cse.c (CHEAPER): Move it up to the other macros.
find_reg_offset_for_const, try_const_anchors): New functions.
(cse_insn): Call try_const_anchors. Adjust cost of src_related
when using a const-anchor. Call insert_const_anchors.
- * config/mips/mips.c (mips_set_mips16_mode): Set
- targetm.const_anchor.
+ * config/mips/mips.c (mips_set_mips16_mode): Set targetm.const_anchor.
* doc/tm.texi (Misc): Document TARGET_CONST_ANCHOR.
2009-05-28 Alexandre Oliva <aoliva@redhat.com>
2009-05-21 Denis Chertykov <denisc@overta.ru>
- * doc/contrib.texi (Contributors): add myself to the list.
+ * doc/contrib.texi (Contributors): Add myself to the list.
2009-05-27 Olivier Hainque <hainque@adacore.com>
2009-05-27 Rafael Avila de Espindola <espindola@google.com>
- * Makefile.in (GCC_PLUGIN_H): New. Replace all uses of gcc-plugin.h with
- it.
+ * Makefile.in (GCC_PLUGIN_H): New. Replace all uses of gcc-plugin.h
+ with it.
* doc/plugins.texi: Document that gcc-plugin.h must be the first to be
included.
* gcc-plugin.h: Include config.h and system.h.
* gcc-plugin.h (PLUGIN_GGC_START, PLUGIN_GGC_MARKING)
(PLUGIN_GGC_END, PLUGIN_REGISTER_GGC_ROOTS): Added new events.
(register_callback): Improved comment in declaration.
- * ggc-common.c (const_ggc_root_tab_t) Added new typedef for
- vectors.
- (extra_root_vec) Added static variable for dynamic roots
- registration.
+ * ggc-common.c (const_ggc_root_tab_t) Added new typedef for vectors.
+ (extra_root_vec) Added static variable for dynamic roots registration.
(ggc_register_root_tab) Added new routine.
(ggc_mark_roots) Added iteration inside extra_root_vec, and invoke
PLUGIN_GGC_MARKING event.
(cgraph_default_inline_p): Likewise.
(cgraph_edge_badness): Compute badness based on benefit and size cost.
(cgraph_decide_recursive_inlining): Check size.
- (cgraph_decide_inlining_of_small_function): Update size; dump sizes and
- times.
+ (cgraph_decide_inlining_of_small_function): Update size; dump sizes
+ and times.
(cgraph_decide_inlining): Likewise.
(cgraph_decide_inlining_incrementally): Likewise; honor
PARAM_EARLY_INLINING_INSNS.
PR tree-optimization/36327
* tree-ssa-alias.c (walk_non_aliased_vuses): Add second walker
- callback for reference translation or lookup at the point
- of may-defs.
+ callback for reference translation or lookup at the point of may-defs.
* tree-ssa-alias.h (walk_non_aliased_vuses): Adjust prototype.
* tree-ssa-sccvn.c (get_ref_from_reference_ops): Bail out
for union COMPONENT_REFs.
Likewise.
* tree-ssa-propagate.c (substitute_and_fold): Likewise.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Likewise.
- (dom_opt_finalize_block): Likewise, adjusting access to stmts_to_rescan.
+ (dom_opt_finalize_block): Likewise, adjusting access to
+ stmts_to_rescan.
(optimize_stmt): Likewise, adjusting access to stmts_to_rescan.
(stmts_to_rescan): Change item type to gimple.
(tree_ssa_dominator_optimize): Change type of stmts_to_rescan.
2009-05-20 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/driver-i386.c (host_detect_local_cpu): Check
- extended family and model for Intel processors. Support Intel
- Atom.
+ extended family and model for Intel processors. Support Intel Atom.
2009-05-20 Olivier Hainque <hainque@adacore.com>
2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
- * c-common.c (warn_logical_operator): Remove unnecessary
- conditionals.
+ * c-common.c (warn_logical_operator): Remove unnecessary conditionals.
2009-05-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
(cgraph_default_inline_p): Likewise.
(cgraph_edge_badness): Compute badness based on benefit and size cost.
(cgraph_decide_recursive_inlining): Check size.
- (cgraph_decide_inlining_of_small_function): Update size; dump sizes and
- times.
+ (cgraph_decide_inlining_of_small_function): Update size; dump sizes
+ and times.
(cgraph_decide_inlining): Likewise.
(cgraph_decide_inlining_incrementally): Likewise; honor
PARAM_EARLY_INLINING_INSNS.
(cgraph_default_inline_p): Likewise.
(cgraph_edge_badness): Compute badness based on benefit and size cost.
(cgraph_decide_recursive_inlining): Check size.
- (cgraph_decide_inlining_of_small_function): Update size; dump sizes and
- times.
+ (cgraph_decide_inlining_of_small_function): Update size; dump sizes
+ and times.
(cgraph_decide_inlining): Likewise.
(cgraph_decide_inlining_incrementally): Likewise; honor
PARAM_EARLY_INLINING_INSNS.
(is_subrange_type): Delete.
(subrange_type_die): Add LOW and HIGH parameters. Use them for bounds.
(modified_type_die): Call subrange_type_for_debug_p on subtypes.
- * fold-const.c (fold_truth_not_expr) <CONVERT_EXPR>: Do not strip it if
- the destination type is boolean.
+ * fold-const.c (fold_truth_not_expr) <CONVERT_EXPR>: Do not strip it
+ if the destination type is boolean.
(build_range_check): Do not special-case subtypes.
(fold_sign_changed_comparison): Likewise.
(fold_unary): Likewise.
* langhooks-def.h (LANG_HOOKS_GET_SUBRANGE_BOUNDS): Define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add LANG_HOOKS_GET_SUBRANGE_BOUNDS.
* langhooks.h (lang_hooks_for_types): Add get_subrange_bounds.
- * tree.c (subrange_type_for_debug_p): New predicate based on the former
- is_subrange_type.
+ * tree.c (subrange_type_for_debug_p): New predicate based on the
+ former is_subrange_type.
* tree.h (subrange_type_for_debug_p): Declare.
* tree-chrec.c (avoid_arithmetics_in_type_p): Delete.
(convert_affine_scev): Remove call to above function.
(arm_legitimate_address_outer_p): ... this.
* config/arm/constraints.md ("Uq"): Adjust call.
* config/arm/predicates.md (arm_extendqisi_mem_op): Likewise.
- * config/arm/arm.c (arm_legitimate_address_p): New, rename old one to...
+ * config/arm/arm.c (arm_legitimate_address_p): New, rename old one
+ to...
(arm_legitimate_address_outer_p): ... this.
- (thumb1_legitimate_address_p, thumb2_legitimate_address_p): Make static.
+ (thumb1_legitimate_address_p, thumb2_legitimate_address_p): Make
+ static.
(TARGET_LEGITIMATE_ADDRESS_P): New.
* config/mips/mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
2009-05-13 Taras Glek <tglek@mozilla.com>
- * attribs.c (register_attribute): moved out attribute registration into
- register_attribute.
- * doc/plugins.texi: Documented register_attribute and PLUGIN_ATTRIBUTES.
+ * attribs.c (register_attribute): moved out attribute registration
+ into register_attribute.
+ * doc/plugins.texi: Documented register_attribute and
+ PLUGIN_ATTRIBUTES.
* gcc-plugin.h: Added forward decl for register_attribute.
* gcc-plugin.h (plugins_event): Added PLUGIN_ATTRIBUTES.
* plugin.c (register_callback, invoke_plugin_callbacks): Added
(bcc_gen_fctn, setcc_gen_code, emit_cmp_insn): Delete.
* ifcvt.c (find_if_header): Replace HAVE_conditional_trap
with lookup of ctrap_optab.
- * genopinit.c (cmp_optab, tst_optab, bcc_gen_fctn,
- setcc_gen_code): Delete.
+ * genopinit.c (cmp_optab, tst_optab, bcc_gen_fctn, setcc_gen_code):
+ Delete.
(ctrap_optab): New.
* combine.c (combine_simplify_rtx, simplify_set): Do not