+2008-04-07 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md ("*sse_prologue_save_insn"): Use braced output
+ control string instead of quoted.
+
+2008-04-07 Kenneth Zadeck <zadeck@naturalbridge.com>
+
+ * doc/rtl.texi: Rewrite of subreg section.
+
+2008-04-07 Kai Tietz <kai.tietz@onevision.com>
+
+ PR/35842
+ * config/i386/i386.c (legitimize_pic_address): Add treating
+ of dllimport SYM_REF's.
+ (legitimize_dllimport_symbol): Add prototype.
+
+2008-04-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * fold-const.c (fold) <ARRAY_REF>: New case. Try to fold constant
+ reference in constructor with non self-referential type.
+
+2008-04-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ Removal of Return with Depressed Stack Pointer support
+ * tree.h (TYPE_RETURNS_STACK_DEPRESSED): Delete.
+ (ECF_SP_DEPRESSED): Likewise.
+ (ECF_LIBCALL_BLOCK, ECF_NOVOPS): Adjust.
+ * calls.c (emit_call_1): Do not test ECF_SP_DEPRESSED.
+ (flags_from_decl_or_type): Do not test TYPE_RETURNS_STACK_DEPRESSED.
+ (expand_call): Do not test ECF_SP_DEPRESSED.
+ * dse.c (dse_step0): Do not test TYPE_RETURNS_STACK_DEPRESSED.
+ * function.c (keep_stack_depressed): Delete.
+ (handle_epilogue_set): Likewise.
+ (update_epilogue_consts): Likewise.
+ (emit_equiv_load): Likewise.
+ (thread_prologue_and_epilogue_insns): Remove support for Return with
+ Depressed Stack Pointer.
+ * print-tree.c (print_node): Do not test TYPE_RETURNS_STACK_DEPRESSED.
+
+2008-04-06 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/35400
+ * tree-vrp.c (vrp_evaluate_conditional): Only query value-range
+ information from SSA_NAMEs.
+
+2008-04-06 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.h (avr_mega_p): Remove declaration.
+ (AVR_MEGA): Remove macro.
+ * config/avr/avr.c (avr_mega_p): Remove variable.
+ (avr_override_options): Remove inicializion of avr_mega_p.
+ Use AVR_HAVE_JMP_CALL instead of AVR_MEGA.
+ (print_operand): Use AVR_HAVE_JMP_CALL instead of AVR_MEGA.
+ (avr_jump_mode): (Ditto.).
+ (avr_output_progmem_section_asm_op): (Ditto.).
+ (avr_asm_init_sections): (Ditto.).
+ (avr_asm_init_sections): (Ditto.).
+ (avr_rtx_costs): (Ditto.).
+ * config/avr/avr.md: (Ditto.).
+ * config/avr/avr.h: Use '__AVR_HAVE_JMP_CALL__' instead of
+ '__AVR_MEGA__'.
+
+2008-04-06 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/35842
+ * tree-ssa-address.c (fixed_address_object_p): Adjust to match
+ is_gimple_invariant_address.
+
+2008-04-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * gcc.c (default_compilers): Sync Fortran extensions list with
+ that in fortran/lang-specs.h.
+ * doc/invoke.texi: Likewise.
+ * dbxout.c (get_lang_number): Use "GNU Fortran" in "GNU F95".
+ * dwarf2out.c (gen_compile_unit_die): Likewise.
+
+2008-04-06 Tom G. Christensen <tgc@jupiterrise.com>
+
+ * gthr-posix95.h (__gthread_cond_wait_recursive): Add missing &.
+
+2008-04-05 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/12329
+ * config/i386/i386.c (ix86_function_regparm): Error if regparm(3)
+ attribute is used for nested functions.
+
+2008-04-05 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (init_emit): xcalloc regno_pointer_align.
+
+ * tree-dump.c (dump_enable_all): Remove prototype; do not accept
+ letter argument.
+ (dump_files): Update.
+ (enable_rtl_dump_file): Do not accept letter argument.
+ * tree-pass.h (dump_file_info): Remove letter argument.
+ * toplev.c (decode_d_option): Update -da handling.
+ * toplev.h (enable_rtl_dump_file): Update prototype.
+ * passes.c (register_one_dump_file): Do not accept IPA argument; work
+ it out based on pass type.
+ (register_dump_files_1): Likewise.
+ (init_optimization_passes): Update register_one_dump_file calls.
+ (execute_one_pass): Sanity check that IPA passes are called at IPA
+ level and RTL passes at RTL level.
+ (execute_pass_list): IPA pass can not be after or subpass of
+ GIMPLE/RTL pass.
+ (execute_ipa_pass_list): Handle IPA subpasses of IPA subpasses and
+ disallov RTL subpasses of IPA subpasses.
+
+2008-04-05 Ben Elliston <bje@au.ibm.com>
+
+ * tree-cfg.c (need_fake_edge_p): Return false for calls to
+ builtins that return exactly once and do not throw. Cache call to
+ call_expr_flags.
+
+2008-04-04 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ PR rtl-optimization/34916
+ PR middle-end/35519
+ * combine.c (create_log_links): Do not create duplicate LOG_LINKS
+ between instruction pairs.
+
+2008-04-04 Naveen.H.S <naveen.hs@kpitcummins.com>
+
+ * doc/invoke.texi: Document -mbitops for SH.
+ * config/sh/constraints.md (K03, K12, Sbv, Sbw): New constraints.
+ * config/sh/predicates.md (bitwise_memory_operand): New predicate.
+ * config/sh/sh.c (print_operand): Add %t operand code.
+ * config/sh/sh.h (GO_IF_LEGITIMATE_INDEX): Add condition for SH2A.
+ * config/sh/sh.md (*iorsi3_compact): Fix condition for SH2A.
+ (extendqisi2_compact): Add the alternative for SH2A 4-byte mov.b.
+ (extendqihi2): Likewise.
+ (movqi_i): Likewise.
+ (insv): Use bset, bclr and bst instructions for SH2A if possible.
+ (extv): Use bld instruction for SH2A if possible.
+ (extzv): Likewise.
+ (bclr_m2a, bclrmem_m2a, bset_m2a, bsetmem_m2a, bst_m2a, bld_m2a,
+ bldsign_m2a, bld_reg, *bld_regqi, band_m2a, bandreg_m2a,
+ bor_m2a, borreg_m2a, bxor_m2a, bxorreg_m2a): New insns.
+ (bset.b, bclr.b): Define peepholes.
+ * config/sh/sh.opt (mbitops): New option.
+
+2008-04-04 Janis Johnson <janis187@us.ibm.com>
+
+ PR target/35620
+ * config/rs6000/rs6000.c (rs6000_check_sdmode): Handle indirect ref
+ and view convert expression.
+
+2008-04-04 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/35364
+ * tree-cfg.c (remove_useless_stmts_1): Handle OMP_* containers.
+
2008-04-04 H.J. Lu <hongjiu.lu@intel.com>
* config.gcc (extra_headers): Add wmmintrin.h for x86 and x86-64.
(UNSPEC_AESDECLAST): Likewise.
(UNSPEC_AESIMC): Likewise.
(UNSPEC_AESKEYGENASSIST): Likewise.
- (UNSPEC_PCLMULQDQ): Likewise.
+ (UNSPEC_PCLMUL): Likewise.
* config/i386/i386.opt (maes): New.
(mpclmul): Likewise.
* config/mips/mips.md (any_gt, any_ge, any_lt, any_le): New code
iterators.
- (u): Add attribute values for gt, gtu, ge, geu, lt, ltu, le and
- leu.
+ (u): Add attribute values for gt, gtu, ge, geu, lt, ltu, le and leu.
(sgt<u>): Merge sgt and sgtu into new expander.
(sgt, sgtu): Remove expanders.
- (*sgt<u>_<mode>): Merge *sgt_<mode> and *sgtu_<mode> into new
- pattern.
+ (*sgt<u>_<mode>): Merge *sgt_<mode> and *sgtu_<mode> into new pattern.
(*sgt_<mode>, *sgtu_<mode>): Remove patterns.
(*sgt<u>_<mode>_mips16): Merge *sgt_<mode>_mips16 and
*sgtu_<mode>_mips16 into new pattern.
(*sge_<mode>, second *sge_<mode>): Remove patterns.
(slt<u>): Merge slt and sltu into new expander.
(slt, sltu): Remove expanders.
- (*slt<u>_<mode>): Merge *slt_<mode> and *sltu_<mode> into new
- pattern.
+ (*slt<u>_<mode>): Merge *slt_<mode> and *sltu_<mode> into new pattern.
(*slt_<mode>, *sltu_<mode>): Remove patterns.
(*slt<u>_<mode>_mips16): Merge *slt_<mode>_mips16 and
*sltu_<mode>_mips16 into new pattern.
(*slt_<mode>_mips16, *sltu_<mode>_mips16): Remove patterns.
(sle<u>): Merge sle and sleu into new expander.
(sle, sleu): Remove expanders.
- (*sle<u>_<mode>): Merge *sle_<mode> and *sleu_<mode> into new
- pattern.
+ (*sle<u>_<mode>): Merge *sle_<mode> and *sleu_<mode> into new pattern.
(*sle_<mode>, *sleu_<mode>): Remove patterns.
(*sle<u>_<mode>_mips16): Merge *sle_<mode>_mips16 and
*sleu_<mode>_mips16 into new pattern.