gcc.git
17 years agoDaily bump.
GCC Administrator [Fri, 5 Jan 2007 00:17:36 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r120463

17 years agoRevert revision 120457.
Ben Elliston [Fri, 5 Jan 2007 00:03:35 +0000 (11:03 +1100)]
Revert revision 120457.

From-SVN: r120458

17 years agostrstream.cc (strstreambuf::seekoff): Add parentheses around truth expression to...
Ben Elliston [Thu, 4 Jan 2007 23:43:14 +0000 (23:43 +0000)]
strstream.cc (strstreambuf::seekoff): Add parentheses around truth expression to eliminate a new warning from g++.

* src/strstream.cc (strstreambuf::seekoff): Add parentheses around
truth expression to eliminate a new warning from g++.

From-SVN: r120457

17 years ago* Makefile.in: Added .PHONY entry for documentation targets.
Brooks Moses [Thu, 4 Jan 2007 23:43:11 +0000 (23:43 +0000)]
* Makefile.in: Added .PHONY entry for documentation targets.

From-SVN: r120456

17 years ago* Makefile.in: Add empty info, html, dvi, pdf targets.
Brooks Moses [Thu, 4 Jan 2007 23:27:33 +0000 (23:27 +0000)]
* Makefile.in: Add empty info, html, dvi, pdf targets.

From-SVN: r120455

17 years agolibgcc2.c (__bswapsi2): Use SItype.
Eric Christopher [Thu, 4 Jan 2007 23:16:34 +0000 (23:16 +0000)]
libgcc2.c (__bswapsi2): Use SItype.

2007-01-04  Eric Christopher  <echristo@apple.com>

    * libgcc2.c (__bswapsi2): Use SItype.
      (__bswapdi2): Use DItype.
    * libgcc2.h: Update for above.

From-SVN: r120454

17 years agoarm.md (arm_mulsi3, [...]): Make conditional on !arm_arch6.
Paul Brook [Thu, 4 Jan 2007 23:13:55 +0000 (23:13 +0000)]
arm.md (arm_mulsi3, [...]): Make conditional on !arm_arch6.

2007-01-04  Paul Brook  <paul@codesourcery.com>

* config/arm/arm.md (arm_mulsi3, thumb_mulsi3, mulsi3_compare0,
mulsi_compare0_scratch, mulsi3addsi, mulsi3addsi_compare0,
mulsi3addsi_compare0_scratch, mulsidi3adddi, mulsidi3,
umulsidi3, umulsidi3adddi, smulsi3_highpart,
umulsi3_highpart): Make conditional on !arm_arch6.
(arm_mulsi3_v6, thumb_mulsi3_v6, mulsi3_compare0_v6,
mulsi_compare0_scratch_v6, mulsi3addsi_v6, mulsi3addsi_compare0_v6,
mulsi3addsi_compare0_scratch_v6, mulsidi3adddi_v6, mulsidi3_v6,
umulsidi3_v6, umulsidi3adddi_v6, smulsi3_highpart_v6,
umulsi3_highpart_v6): New insns.

From-SVN: r120453

17 years agointrinsic.texi (IAND): Clarify argument specifications.
Brooks Moses [Thu, 4 Jan 2007 23:00:41 +0000 (23:00 +0000)]
intrinsic.texi (IAND): Clarify argument specifications.

* intrinsic.texi (IAND): Clarify argument specifications.
(IBCLR): Add documentation.
(IBITS): Add documentation.
(IBSET): Add documentation.
(IEOR): Add documentation.
(IERRNO): Add documentation.
(INDEX): Add documentation.
(IOR): Add documentation.
(ISHFT): Add documentation.
(ISHFTC): Add documentation.
(KILL): Add documentation.
(LEN_TRIM): Add documentation.

From-SVN: r120452

17 years agofold-const.c (fold_convert): When casting an expression to void...
Roger Sayle [Thu, 4 Jan 2007 23:00:00 +0000 (23:00 +0000)]
fold-const.c (fold_convert): When casting an expression to void...

* fold-const.c (fold_convert): When casting an expression to void,
fold_ignored_result may discover a GIMPLE_MODIFY_STMT which doesn't
have a type.  Instead of attempting to build a NOP_EXPR, return
these "special" trees directly.

From-SVN: r120451

17 years agoMakefile.in (MAKEINFO): Remove.
Mike Stump [Thu, 4 Jan 2007 21:54:45 +0000 (21:54 +0000)]
Makefile.in (MAKEINFO): Remove.

* Makefile.in (MAKEINFO): Remove.
(PERL): Likewise.

From-SVN: r120450

17 years agoconfigure.ac: Add GCC_TOPLEV_SUBDIRS.
Paolo Bonzini [Thu, 4 Jan 2007 18:12:08 +0000 (18:12 +0000)]
configure.ac: Add GCC_TOPLEV_SUBDIRS.

2007-01-04  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Add GCC_TOPLEV_SUBDIRS.
* configure: Regenerate.
* Makefile.in (host_subdir): Substitute it.
(gcc_objdir): Use it.

From-SVN: r120449

17 years agore PR fortran/30235 ([4.1 only] missing alternate return argument with explicit inter...
Brooks Moses [Thu, 4 Jan 2007 17:30:37 +0000 (17:30 +0000)]
re PR fortran/30235 ([4.1 only] missing alternate return argument with explicit interface causes segfault)

fortran/
PR 30235
* interface.c (compare_actual_formal): check for
alternate returns when iterating over non-present
arguments.

testsuite/
PR 30235
* gfortran.dg/altreturn_2.f90: new test.

From-SVN: r120447

17 years ago* invoke.texi: Update manpage copyright to include 2007.
Brooks Moses [Thu, 4 Jan 2007 17:09:34 +0000 (17:09 +0000)]
* invoke.texi: Update manpage copyright to include 2007.

From-SVN: r120445

17 years agogfortran.texi: Update copyright to include 2007.
Brooks Moses [Thu, 4 Jan 2007 16:52:36 +0000 (16:52 +0000)]
gfortran.texi: Update copyright to include 2007.

* gfortran.texi: Update copyright to include 2007.
* intrinsic.texi: Update copyright to include 2007.
* invoke.texi: Update copyright to include 2007.

From-SVN: r120444

17 years ago* config.host (ia64*-*-linux*): Set tmake_file.
Daniel Jacobowitz [Thu, 4 Jan 2007 16:52:02 +0000 (16:52 +0000)]
* config.host (ia64*-*-linux*): Set tmake_file.

From-SVN: r120443

17 years agors6000.c (rs6000_rtx_costs): Make adjustment for MULT inside MINUS as either argument.
Joseph Myers [Thu, 4 Jan 2007 16:36:57 +0000 (16:36 +0000)]
rs6000.c (rs6000_rtx_costs): Make adjustment for MULT inside MINUS as either argument.

* config/rs6000/rs6000.c (rs6000_rtx_costs): Make adjustment for
MULT inside MINUS as either argument.  Use rs6000_cost->dmul -
rs6000_cost->fp not 0 as adjustment for outer NEG.

From-SVN: r120442

17 years agore PR preprocessor/28165 (_Pragma GCC system_header broken)
Tom Tromey [Thu, 4 Jan 2007 15:32:26 +0000 (15:32 +0000)]
re PR preprocessor/28165 (_Pragma GCC system_header broken)

libcpp
PR preprocessor/28165:
* internal.h (cpp_in_primary_file): New function.
* directives.c (do_include_next): Use cpp_in_primary_file.
(do_pragma_once): Likewise.
(do_pragma_system_header): Likewise.
gcc/testsuite
PR preprocessor/28165:
* gcc.dg/cpp/pr28165.c: New file.

From-SVN: r120441

17 years ago* Makefile.in (version): Define.
Daniel Jacobowitz [Thu, 4 Jan 2007 14:20:15 +0000 (14:20 +0000)]
* Makefile.in (version): Define.

From-SVN: r120440

17 years agocommit changelog entry for last commit
Paolo Bonzini [Thu, 4 Jan 2007 14:10:50 +0000 (14:10 +0000)]
commit changelog entry for last commit

From-SVN: r120439

17 years agocgraph.c (cgraph_release_function_body): New function.
Jan Hubicka [Thu, 4 Jan 2007 11:30:10 +0000 (12:30 +0100)]
cgraph.c (cgraph_release_function_body): New function.

* cgraph.c (cgraph_release_function_body): New function.
(cgraph_remove_node): Use it.
* cgraph.h (cgraph_release_function_body): Declare.
* cgraphunit.c (cgraph_expand_function): Use it.
* ipa.c (cgraph_remove_unreahchable_nodes): Use it.
* tree-ssa.c (delete_tree_ssa): Allow to be called before aliasing
is initialized and while compilation of other function is running.
* tree-optimize.c (execute_free_cfg_annotations): Move code to clear
statement CFG annotations from here to ...
* tree-cfg.c (delete_tree_cfg_annotations): ... here.

From-SVN: r120437

17 years agocfgloop.h (enum li_flags): Make the constants powers of two.
Zdenek Dvorak [Thu, 4 Jan 2007 09:53:29 +0000 (09:53 +0000)]
cfgloop.h (enum li_flags): Make the constants powers of two.

* cfgloop.h (enum li_flags): Make the constants powers of two.

From-SVN: r120433

17 years agoconfigure.in: Use DEV-PHASE to detect the default for --enable-werror.
Paolo Bonzini [Thu, 4 Jan 2007 09:10:51 +0000 (09:10 +0000)]
configure.in: Use DEV-PHASE to detect the default for --enable-werror.

2007-01-04  Paolo Bonzini  <bonzini@gnu.org>

* configure.in: Use DEV-PHASE to detect the default for --enable-werror.
* configure: Regenerate.

From-SVN: r120432

17 years agore PR fortran/30276 (gfortran include problem)
Tobias Burnus [Thu, 4 Jan 2007 08:57:36 +0000 (09:57 +0100)]
re PR fortran/30276 (gfortran include problem)

2007-01-02  Tobias Burnus  <burnus@net-b.de>
            Jakub Jelinek  <jakub@redhat.com>

        PR fortran/30276
        * scanner.c (open_included_file): Revert patch.
          (gfc_open_included_file): Support absolute pathnames.
          (gfc_open_intrinsic_module): Support absolute pathnames.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r120431

17 years agotree-inline.c (copy_bb): Insert new statements to statements_to_fold set.
Jan Hubicka [Thu, 4 Jan 2007 08:56:05 +0000 (09:56 +0100)]
tree-inline.c (copy_bb): Insert new statements to statements_to_fold set.

* tree-inline.c (copy_bb): Insert new statements to statements_to_fold
set.
(fold_marked_statements): New function.
(optimize_inline_calls, tree_function_versioning): Fold new statements.
* tree-inline.h (copy_body_data): Add statemetns_to_fold.

From-SVN: r120430

17 years agoMakefile.def (target_modules): Add libgcc.
Daniel Jacobowitz [Thu, 4 Jan 2007 04:22:37 +0000 (04:22 +0000)]
Makefile.def (target_modules): Add libgcc.

./ * Makefile.def (target_modules): Add libgcc.
(lang_env_dependencies): Remove default items.  Use no_c and no_gcc.
* Makefile.tpl (clean-target-libgcc): Delete.
(configure-target-[+module+]): Emit --disable-bootstrap dependencies
on gcc even for bootstrapped modules.  Rewrite handling of
lang_env_dependencies to loop over target_modules.
* configure.in (target_libraries): Add target-libgcc.
* Makefile.in, configure: Regenerated.
gcc/
* config.gcc: Mention libgcc/config.host.
* Makefile.in: Update comments mentioning libgcc.
(LIBGCC, INSTALL_LIBGCC, GCC_PARTS, mklibgcc): Delete.
(all.cross, start.encap, rest.encap, rest.cross): Update
dependencies for libgcc move.
(libgcc.mk, LIBGCC_DEPS, libgcov.a, libgcc.a, stmp-multilib)
(clean-target, clean-target-libgcc): Delete.
(srcdirify, GCC_EXTRA_PARTS): New macros.
(libgcc-support, libgcc.mvars): New rules.
(distclean): Remove mention of mklibgcc.
(install): Don't reference INSTALL_LIBGCC.
(install-common): Don't reference EXTRA_PARTS.
(install-libgcc, install-multilib): Delete rules.
* mklibgcc.in: Delete file.
* doc/configfiles.texi: Don't mention mklibgcc.

* config/i386/t-darwin (SHLIB_VERPFX): Delete (moved to libgcc).
* config/i386/t-darwin64 (SHLIB_VERPFX): Likewise.
* config/rs6000/t-darwin (SHLIB_VERPFX): Likewise.
* config/rs6000/t-ppccomm (TARGET_LIBGCC2_CFLAGS, SHLIB_MAPFILES)
(mklibgcc, ldblspecs): Likewise.

* config/i386/t-nwld (libgcc.def, libc.def, libpcre.def)
(posixpre.def): Use $(T).
(SHLIB_EXT, SHLIB_NAME, SHLIB_SLIBDIR_QUAL, SHLIB_DEF, SHLIB_MAP)
(SHLIB_SRC, SHLIB_INSTALL): Delete.
(SHLIB_LINK): Make dummy.
* config/t-slibgcc-darwin: Delete contents except for dummy SHLIB_LINK.

* config/frv/t-linux (EXTRA_MULTILIB_PARTS): Clear.

* config/alpha/t-crtfm: Use $(T) in rules for EXTRA_PARTS.
* config/alpha/t-vms, config/alpha/t-vms64, config/fr30/t-fr30,
config/i386/t-rtems-i386, config/ia64/t-ia64, config/rs6000/t-beos,
config/rs6000/t-newas, config/sparc/t-elf: Likewise.

* configure.ac (all_outputs): Remove mklibgcc.
* configure: Regenerated.
libgcc/
* Makefile.in, config/i386/t-darwin, config/i386/t-darwin64,
config/i386/t-nwld, config/rs6000/t-darwin, config/rs6000/t-ldbl128,
config/i386/t-crtfm, config/alpha/t-crtfm, config/ia64/t-ia64,
config/sparc/t-crtfm, config/t-slibgcc-darwin,
config/rs6000/t-ppccomm, config.host, configure.ac, empty.mk,
shared-object.mk, siditi-object.mk, static-object.mk: New files.
* configure: Generated.

Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r120429

17 years ago* gfortran.texi (GNU Fortran and GCC): Rewrite
Brooks Moses [Thu, 4 Jan 2007 02:21:38 +0000 (02:21 +0000)]
* gfortran.texi (GNU Fortran and GCC): Rewrite

From-SVN: r120428

17 years agogfortran.texi (Introduction): Lower "Part I...
Brooks Moses [Thu, 4 Jan 2007 02:11:05 +0000 (02:11 +0000)]
gfortran.texi (Introduction): Lower "Part I...

* gfortran.texi (Introduction): Lower "Part I:
Introduction" to a chapter, renumber Parts II and III to
Parts I and II.
* intrinsic.texi (Introduction): Rename to "Introduction
to Intrinsics" to avoid conflict with the new chapter.

From-SVN: r120427

17 years ago* intrinsic.texi (Introduction): Rewrite first paragraph.
Brooks Moses [Thu, 4 Jan 2007 01:37:27 +0000 (01:37 +0000)]
* intrinsic.texi (Introduction): Rewrite first paragraph.

From-SVN: r120426

17 years agore PR middle-end/29683 (Arg split between stack/regs can cause stack corruption)
Josh Conner [Thu, 4 Jan 2007 01:37:15 +0000 (01:37 +0000)]
re PR middle-end/29683 (Arg split between stack/regs can cause stack corruption)

2007-03-01  Josh Conner  <jconner@apple.com>

PR middle-end/29683
* calls.c (compute_argument_addresses): Set stack and stack_slot
for partial args, too.
(store_one_arg): Use locate.size.constant for the size when
generating a save_area.

2007-03-01  Josh Conner  <jconner@apple.com>

PR middle-end/29683
* gcc.dg/pr29683.c: New.

From-SVN: r120425

17 years agoinvoke.texi (OpenMP): Added index entry.
Brooks Moses [Thu, 4 Jan 2007 01:29:08 +0000 (01:29 +0000)]
invoke.texi (OpenMP): Added index entry.

* invoke.texi (OpenMP): Added index entry.
* gfortran.texi (title page): Removed erroneous '*'.

From-SVN: r120424

17 years agotree-cfg.c (tree_merge_blocks): Release SSA_NAME phi results whose definitions are...
Robert Kennedy [Thu, 4 Jan 2007 01:20:08 +0000 (01:20 +0000)]
tree-cfg.c (tree_merge_blocks): Release SSA_NAME phi results whose definitions are deleted due to basic block...

* tree-cfg.c (tree_merge_blocks): Release SSA_NAME phi results
whose definitions are deleted due to basic block merging.

From-SVN: r120423

17 years agogfortran.texi (GFORTRAN_DEFAULT_RECL): Added units to description.
Brooks Moses [Thu, 4 Jan 2007 01:02:40 +0000 (01:02 +0000)]
gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units to description.

* gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
to description.
(Extensions): Miscellaneous minor rewriting and copyediting.
(BOZ-literal constants): Renamed from Hexadecimal constants.
(Hollerith constants support): Added explanation and
suggestions for standard-conforming modern equivalents.

From-SVN: r120422

17 years agointrinsic.texi: Improvements to index entries; change @findex entries to @cindex...
Brooks Moses [Thu, 4 Jan 2007 00:39:15 +0000 (00:39 +0000)]
intrinsic.texi: Improvements to index entries; change @findex entries to @cindex entries.

* intrinsic.texi: Improvements to index entries; change
@findex entries to @cindex entries.
* invoke.texi: Standardize and improve index entries.
* gfortran.texi: Fix @code in one index entry.

From-SVN: r120421

17 years agoinvoke.texi: Change @code-type macros to appropriate variants (@command, @option...
Brooks Moses [Thu, 4 Jan 2007 00:19:36 +0000 (00:19 +0000)]
invoke.texi: Change @code-type macros to appropriate variants (@command, @option, etc.)

* invoke.texi: Change @code-type macros to appropriate
variants (@command, @option, etc.)
* gfortran.texi: Same.

From-SVN: r120420

17 years agoDaily bump.
GCC Administrator [Thu, 4 Jan 2007 00:17:33 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r120418

17 years agore PR target/16634 (arm-elf-gcc problems when generating code for __attribute__ ...
Paul Brook [Thu, 4 Jan 2007 00:09:48 +0000 (00:09 +0000)]
re PR target/16634 (arm-elf-gcc problems when generating code for __attribute__ ((interrupt ("IRQ"))))

2007-01-03  Paul Brook  <paul@codesourcery.com>

PR target/16634
gcc/
* config/arm/arm.c (output_return_instruction): Pop PC in interrupt
functions.
(use_return_insn): Return 0 for Thumb interrupt functions.
(print_multi_reg): Add rfe argument for IRQ returns.
(arm_output_epilogue): Pop interrupt return address directly into PC.
(arm_expand_prologue): Only adjust IRQ return address in Arm mode.

From-SVN: r120413

17 years agore PR c++/28217 (ICE in tree_int_cst_sgn)
Jakub Jelinek [Wed, 3 Jan 2007 23:53:18 +0000 (00:53 +0100)]
re PR c++/28217 (ICE in tree_int_cst_sgn)

PR c++/28217
* g++.dg/pch/template-1.C: New test.
* g++.dg/pch/template-1.Hs: New file.

From-SVN: r120410

17 years ago* intrinsic.texi: Various minor cleanups.
Brooks Moses [Wed, 3 Jan 2007 23:49:10 +0000 (23:49 +0000)]
* intrinsic.texi: Various minor cleanups.

From-SVN: r120409

17 years agobackport: thumb2.md: New file.
Paul Brook [Wed, 3 Jan 2007 23:48:10 +0000 (23:48 +0000)]
backport: thumb2.md: New file.

2007-01-03  Paul Brook  <paul@codesourcery.com>

Merge from sourcerygxx-4_1.
gcc/
* config/arm/thumb2.md: New file.
* config/arm/elf.h (JUMP_TABLES_IN_TEXT_SECTION): Return True for
Thumb-2.
* config/arm/coff.h (JUMP_TABLES_IN_TEXT_SECTION): Ditto.
* config/arm/aout.h (ASM_OUTPUT_ADDR_VEC_ELT): Add !Thumb-2 assertion.
(ASM_OUTPUT_ADDR_DIFF_ELT): Output Thumb-2 jump tables.
* config/arm/aof.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output Thumb-2 jump
tables.
(ASM_OUTPUT_ADDR_VEC_ELT): Add !Thumb-2 assertion.
* config/arm/ieee754-df.S: Use macros for Thumb-2/Unified asm
comptibility.
* config/arm/ieee754-sf.S: Ditto.
* config/arm/arm.c (thumb_base_register_rtx_p): Rename...
(thumb1_base_register_rtx_p): ... to this.
(thumb_index_register_rtx_p): Rename...
(thumb1_index_register_rtx_p): ... to this.
(thumb_output_function_prologue): Rename...
(thumb1_output_function_prologue): ... to this.
(thumb_legitimate_address_p): Rename...
(thumb1_legitimate_address_p): ... to this.
(thumb_rtx_costs): Rename...
(thumb1_rtx_costs): ... to this.
(thumb_compute_save_reg_mask): Rename...
(thumb1_compute_save_reg_mask): ... to this.
(thumb_final_prescan_insn): Rename...
(thumb1_final_prescan_insn): ... to this.
(thumb_expand_epilogue): Rename...
(thumb1_expand_epilogue): ... to this.
(arm_unwind_emit_stm): Rename...
(arm_unwind_emit_sequence): ... to this.
(thumb2_legitimate_index_p, thumb2_legitimate_address_p,
thumb1_compute_save_reg_mask, arm_dwarf_handle_frame_unspec,
thumb2_index_mul_operand, output_move_vfp, arm_shift_nmem,
arm_save_coproc_regs, thumb_set_frame_pointer, arm_print_condition,
thumb2_final_prescan_insn, thumb2_asm_output_opcode, arm_output_shift,
thumb2_output_casesi): New functions.
(TARGET_DWARF_HANDLE_FRAME_UNSPEC): Define.
(FL_THUMB2, FL_NOTM, FL_DIV, FL_FOR_ARCH6T2, FL_FOR_ARCH7,
FL_FOR_ARCH7A, FL_FOR_ARCH7R, FL_FOR_ARCH7M, ARM_LSL_NAME,
THUMB2_WORK_REGS): Define.
(arm_arch_notm, arm_arch_thumb2, arm_arch_hwdiv, arm_condexec_count,
arm_condexec_mask, arm_condexec_masklen)): New variables.
(all_architectures): Add armv6t2, armv7, armv7a, armv7r and armv7m.
(arm_override_options): Check new CPU capabilities.
Set new architecture flag variables.
(arm_isr_value): Handle v7m interrupt functions.
(user_return_insn): Return 0 for v7m interrupt functions.  Handle
Thumb-2.
(const_ok_for_arm): Handle Thumb-2 constants.
(arm_gen_constant): Ditto.  Use movw when available.
(arm_function_ok_for_sibcall): Return false for v7m interrupt
functions.
(legitimize_pic_address, arm_call_tls_get_addr): Handle Thumb-2.
(thumb_find_work_register, arm_load_pic_register,
legitimize_tls_address, arm_address_cost, load_multiple_sequence,
emit_ldm_seq, emit_stm_seq, arm_select_cc_mode, get_jump_table_size,
print_multi_reg, output_mov_long_double_fpa_from_arm,
output_mov_long_double_arm_from_fpa, output_mov_double_fpa_from_arm,
output_mov_double_fpa_from_arm, output_move_double,
arm_compute_save_reg_mask, arm_compute_save_reg0_reg12_mask,
output_return_instruction, arm_output_function_prologue,
arm_output_epilogue, arm_get_frame_offsets, arm_regno_class,
arm_output_mi_thunk, thumb_set_return_address): Ditto.
(arm_expand_prologue): Handle Thumb-2.  Use arm_save_coproc_regs.
(arm_coproc_mem_operand): Allow POST_INC/PRE_DEC.
(arithmetic_instr, shift_op): Use arm_shift_nmem.
(arm_print_operand): Use arm_print_condition.  Handle '(', ')', '.',
'!' and 'L'.
(arm_final_prescan_insn): Use extract_constrain_insn_cached.
(thumb_expand_prologue): Use thumb_set_frame_pointer.
(arm_file_start): Output directive for unified syntax.
(arm_unwind_emit_set): Handle stack alignment instruction.
* config/arm/lib1funcs.asm: Remove default for __ARM_ARCH__.
Add v6t2, v7, v7a, v7r and v7m.
(RETLDM): Add Thumb-2 code.
(do_it, shift1, do_push, do_pop, COND, THUMB_SYNTAX): New macros.
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __thumb2__.
(TARGET_THUMB1, TARGET_32BIT, TARGET_THUMB2, TARGET_DSP_MULTIPLY,
TARGET_INT_SIMD, TARGET_UNIFIED_ASM, ARM_FT_STACKALIGN, IS_STACKALIGN,
THUMB2_TRAMPOLINE_TEMPLATE, TRAMPOLINE_ADJUST_ADDRESS,
ASM_OUTPUT_OPCODE, THUMB2_GO_IF_LEGITIMATE_ADDRESS,
THUMB2_LEGITIMIZE_ADDRESS, CASE_VECTOR_PC_RELATIVE,
CASE_VECTOR_SHORTEN_MODE, ADDR_VEC_ALIGN, ASM_OUTPUT_CASE_END,
ADJUST_INSN_LENGTH): Define.
(TARGET_REALLY_IWMMXT, TARGET_IWMMXT_ABI, CONDITIONAL_REGISTER_USAGE,
STATIC_CHAIN_REGNUM, HARD_REGNO_NREGS, INDEX_REG_CLASS,
BASE_REG_CLASS, MODE_BASE_REG_CLASS, SMALL_REGISTER_CLASSES,
PREFERRED_RELOAD_CLASS, SECONDARY_OUTPUT_RELOAD_CLASS,
SECONDARY_INPUT_RELOAD_CLASS, LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P,
TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE, HAVE_PRE_INCREMENT,
HAVE_POST_DECREMENT, HAVE_PRE_DECREMENT, HAVE_PRE_MODIFY_DISP,
HAVE_POST_MODIFY_DISP, HAVE_PRE_MODIFY_REG, HAVE_POST_MODIFY_REG,
REGNO_MODE_OK_FOR_BASE_P, LEGITIMATE_CONSTANT_P,
REG_MODE_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, GO_IF_LEGITIMATE_ADDRESS,
LEGITIMIZE_ADDRESS, THUMB2_LEGITIMIZE_ADDRESS,
GO_IF_MODE_DEPENDENT_ADDRESS, MEMORY_MOVE_COST, BRANCH_COST,
ASM_APP_OFF, ASM_OUTPUT_CASE_LABEL, ARM_DECLARE_FUNCTION_NAME,
FINAL_PRESCAN_INSN, PRINT_OPERAND_PUNCT_VALID_P,
PRINT_OPERAND_ADDRESS): Adjust for Thumb-2.
(arm_arch_notm, arm_arch_thumb2, arm_arch_hwdiv): New declarations.
* config/arm/arm-cores.def: Add arm1156t2-s, cortex-a8, cortex-r4 and
cortex-m3.
* config/arm/arm-tune.md: Regenerate.
* config/arm/arm-protos.h: Update prototypes.
* config/arm/vfp.md: Enable patterns for Thumb-2.
(arm_movsi_vfp): Add movw alternative.  Use output_move_vfp.
(arm_movdi_vfp, movsf_vfp, movdf_vfp): Use output_move_vfp.
(thumb2_movsi_vfp, thumb2_movdi_vfp, thumb2_movsf_vfp,
thumb2_movdf_vfp, thumb2_movsfcc_vfp, thumb2_movdfcc_vfp): New.
* config/arm/libunwind.S: Add Thumb-2 code.
* config/arm/constraints.md: Update include Thumb-2.
* config/arm/ieee754-sf.S: Add Thumb-2/Unified asm support.
* config/arm/ieee754-df.S: Ditto.
* config/arm/bpabi.S: Ditto.
* config/arm/t-arm (MD_INCLUDES): Add thumb2.md.
* config/arm/predicates.md (low_register_operand,
low_reg_or_int_operand, thumb_16bit_operator): New.
(thumb_cmp_operand, thumb_cmpneg_operand): Rename...
(thumb1_cmp_operand, thumb1_cmpneg_operand): ... to this.
* config/arm/t-arm-elf: Add armv7 multilib.
* config/arm/arm.md: Update patterns for Thumb-2 and Unified asm.
Include thumb2.md.
(UNSPEC_STACK_ALIGN, ce_count): New.
(arm_incscc, arm_decscc, arm_umaxsi3, arm_uminsi3,
arm_zero_extendsidi2, arm_zero_extendqidi2): New
insns/expanders.
* config/arm/fpa.md: Update patterns for Thumb-2 and Unified asm.
(thumb2_movsf_fpa, thumb2_movdf_fpa, thumb2_movxf_fpa,
thumb2_movsfcc_fpa, thumb2_movdfcc_fpa): New insns.
* config/arm/cirrus.md: Update patterns for Thumb-2 and Unified asm.
(cirrus_thumb2_movdi, cirrus_thumb2_movsi_insn,
thumb2_cirrus_movsf_hard_insn, thumb2_cirrus_movdf_hard_insn): New
insns.
* doc/extend.texi: Document ARMv7-M interrupt functions.
* doc/invoke.texi: Document Thumb-2 new cores+architectures.

From-SVN: r120408

17 years agounwind-dw2.c (SIGNAL_FRAME_BIT, [...]): Define.
Jakub Jelinek [Wed, 3 Jan 2007 23:45:47 +0000 (00:45 +0100)]
unwind-dw2.c (SIGNAL_FRAME_BIT, [...]): Define.

* unwind-dw2.c (SIGNAL_FRAME_BIT, EXTENDED_CONTEXT_BIT): Define.
(struct _Unwind_Context): Rename args_size to flags, remove
signal_frame field, add a new args_size field and version field.
(_Unwind_IsSignalFrame, _Unwind_SetSignalFrame,
_Unwind_IsExtendedContext): New inline functions.
(_Unwind_GetGR, _Unwind_SetGR, _Unwind_GetGRPtr, _Unwind_SetGRPtr):
Assume by_value array is only present if _Unwind_IsExtendedContext.
(_Unwind_GetIPInfo, execute_cfa_program, uw_frame_state_for): Use
_Unwind_IsSignalFrame.
(__frame_state_for): Initialize context.flags to EXTENDED_CONTEXT_BIT.
(uw_update_context_1): Use _Unwind_SetSignalFrame.
(uw_init_context_1): Initialize context->flags to
EXTENDED_CONTEXT_BIT.
* config/rs6000/linux-unwind.h (frob_update_context): Use
_Unwind_SetSignalFrame.

From-SVN: r120406

17 years agoFix PR number in my last changelog entry, I got the testsuite one correct.
Andrew Pinski [Wed, 3 Jan 2007 23:02:13 +0000 (15:02 -0800)]
Fix PR number in my last changelog entry, I got the testsuite one correct.

From-SVN: r120405

17 years agore PR target/20353 (uclibc does not provide C99 math functions)
Andrew Pinski [Wed, 3 Jan 2007 23:00:40 +0000 (23:00 +0000)]
re PR target/20353 (uclibc does not provide C99 math functions)

2007-01-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/20353
        * gimplify.c (gimplify_modify_expr_complex_part): Move below
        tree_to_gimple_tuple.  Call tree_to_gimple_tuple when we need
        the value.

2007-01-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30353
        * gcc.c-torture/compile/complex-4.c: New test.

From-SVN: r120404

17 years agovect.exp: Skip PowerPC targets not supporting -maltivec.
Joseph Myers [Wed, 3 Jan 2007 21:55:24 +0000 (21:55 +0000)]
vect.exp: Skip PowerPC targets not supporting -maltivec.

* g++.dg/vect/vect.exp: Skip PowerPC targets not supporting
-maltivec.
* gcc.target/powerpc/altivec-20.c: Use powerpc_altivec_ok.

From-SVN: r120401

17 years ago* cgraphunit.c, tree-ssa-alias.c: Fix comment typos.
Kazu Hirata [Wed, 3 Jan 2007 08:42:27 +0000 (08:42 +0000)]
* cgraphunit.c, tree-ssa-alias.c: Fix comment typos.

From-SVN: r120395

17 years ago* pt.c: Fix a comment typo.
Kazu Hirata [Wed, 3 Jan 2007 08:37:54 +0000 (08:37 +0000)]
* pt.c: Fix a comment typo.

From-SVN: r120394

17 years agore PR middle-end/30286 (Segfault with -O2 -ftrapv)
Jakub Jelinek [Wed, 3 Jan 2007 08:04:11 +0000 (09:04 +0100)]
re PR middle-end/30286 (Segfault with -O2 -ftrapv)

PR middle-end/30286
* gcc.dg/pr30286.c: New test.

From-SVN: r120387

17 years agoalias.c (init_alias_analysis): Use VEC_safe_grow_cleared.
Kazu Hirata [Wed, 3 Jan 2007 08:04:01 +0000 (08:04 +0000)]
alias.c (init_alias_analysis): Use VEC_safe_grow_cleared.

* alias.c (init_alias_analysis): Use VEC_safe_grow_cleared.
* cfgbuild.c (find_basic_blocks): Likewise.
* cfgrtl.c (rtl_create_basic_block): Likewise.
* function.c (temp_slots_at_level): Likewise.
* reg-stack.c (stack_regs_mentioned): Likewise.
* regclass.c (allocate_reg_info): Likewise.
* tree-cfg.c (init_empty_tree_cfg, build_tree_cfg, create_bb,
set_bb_for_stmt, move_block_to_fn): Likewise.
* tree-complex.c (tree_lower_complex): Likewise.
* vec.h (VEC_safe_grow_cleared): New.

From-SVN: r120386

17 years agore PR c++/29535 (ICE in instantiate_class_template, at cp/pt.c:5728)
Jakub Jelinek [Wed, 3 Jan 2007 08:03:26 +0000 (09:03 +0100)]
re PR c++/29535 (ICE in instantiate_class_template, at cp/pt.c:5728)

PR c++/29535
* g++.dg/template/crash66.C: New test.

From-SVN: r120385

17 years agore PR c++/29054 (ICE on friend template specialization)
Jakub Jelinek [Wed, 3 Jan 2007 08:00:30 +0000 (09:00 +0100)]
re PR c++/29054 (ICE on friend template specialization)

PR c++/29054
* g++.dg/template/friend49.C: New test.

From-SVN: r120384

17 years agoi386.h (NON_STACK_REG_P, [...]): Remove.
Kazu Hirata [Wed, 3 Jan 2007 06:44:38 +0000 (06:44 +0000)]
i386.h (NON_STACK_REG_P, [...]): Remove.

* config/i386/i386.h (NON_STACK_REG_P, REGNO_OK_FOR_SIREG_P,
REGNO_OK_FOR_DIREG_P, REWRITE_ADDRESS, ASM_OPERAND_LETTER,
RET, AT_SP): Remove.
* config/i386/i386.md (*sse_prologue_save_insn): Use return
instead of RET.

From-SVN: r120383

17 years agoibits.f90: New test.
Jerry DeLisle [Wed, 3 Jan 2007 03:45:50 +0000 (03:45 +0000)]
ibits.f90: New test.

2007-01-03  Steven G. Kargl  <kargls@comcast.net>

* gfortran.dg/ibits.f90: New test.

From-SVN: r120380

17 years agotrans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to build_int_cst.
Steven G. Kargl [Wed, 3 Jan 2007 03:44:15 +0000 (03:44 +0000)]
trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to build_int_cst.

2007-01-02  Steven G. Kargl  <kargls@comcast.net>

* trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to
build_int_cst.

From-SVN: r120379

17 years agoloop-unswitch.c (unswitch_loop): Pass probabilities to loopify.
Zdenek Dvorak [Wed, 3 Jan 2007 02:29:00 +0000 (02:29 +0000)]
loop-unswitch.c (unswitch_loop): Pass probabilities to loopify.

* loop-unswitch.c (unswitch_loop): Pass probabilities to loopify.
* tree-ssa-loop-unswitch.c (tree_unswitch_loop): Pass probabilities
to loop_version.
* cfgloopmanip.c (scale_loop_frequencies): Export.
(loopify): Scale the frequencies by prescribed coefficients.
(set_zero_probability): New function.
(duplicate_loop_to_header_edge): Improve updating of frequencies.
(lv_adjust_loop_entry_edge, loop_version): Set probabilities
and frequencies according to arguments.
* tree-ssa-loop-manip.c (tree_unroll_loop): Set probabilities
correctly.
* cfg.c (scale_bbs_frequencies_int): Allow scaling the frequencies up.
* modulo-sched.c (sms_schedule): Set probabilities for entering
versioned loop correctly.
* tree-vect-transform.c (vect_transform_loop): Ditto.
* cfgloop.h (loopify, loop_version): Declaration changed.
(scale_loop_frequencies): Declared.

* gcc.dg/tree-ssa/update-unroll-1.c: New test.
* gcc.dg/tree-ssa/update-unswitch-1.c: New test.

From-SVN: r120378

17 years agopr16194.c: We now output error on all three functions, not just first one.
Jan Hubicka [Wed, 3 Jan 2007 01:12:56 +0000 (02:12 +0100)]
pr16194.c: We now output error on all three functions, not just first one.

* gcc.dg/pr16194.c: We now output error on all three functions, not just
first one.

* cgraph.c: Include tree-flow.h
(cgraph_add_new-function): Handle IPA_SSA mode; execute
early_local_passes.
* cgraph.h (enum cgraph_state): Add CGRAPH_STATE_IPA_SSA.
* tree-pass.h (pass_all_early_optimizations): Declare.
* cgraphunit.c (cgraph_process_new_functions): Add IPA_SSA; execute
early_local_passes.
(cgraph_analyze_function): Do early_local_passes.
* tree-mudflap.c (mf_decl_cache_locals, mf_build_check_statement_for):
Do not add referenced vars.
* tree-optimize.c (gate_all_optimizations): Do not execute when not in
SSA form.
(gate_all_early_local_passes): New gate.
(pass_early_local_passes): Use new gate.
(execute_early_local_optimizations): New functions.
(gate_all_early_optimizations): New gate.
(pass_all_early_optimizations): New pass.
(execute_free_datastructures): Free SSA only when initialized.
(gate_init_datastructures): Init only when optimizing.
(tree_lowering_passes): Do early local passes when called late.
* tree-profile.c (do_tree_profiling): Don't profile functions added
late.
(do_early_tree_profiling, pass_early_tree_profile): Kill.
* tree-cfg.c (update_modified_stmts): Do not update when operands are
not active.
* passes.c (init_optimizations_passes): Reorder so we go into SSA
during early_local_passes.
* Makefile.in (cgraph.o): Add dependency on tree-flow.h.

From-SVN: r120373

17 years agoDaily bump.
GCC Administrator [Wed, 3 Jan 2007 00:17:36 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r120368

17 years agoMakefile.in: Update copyright year.
Carlos O'Donell [Tue, 2 Jan 2007 22:20:41 +0000 (22:20 +0000)]
Makefile.in: Update copyright year.

gcc/

2007-01-02  Carlos O'Donell  <carlos@codesourcery.com>

* Makefile.in: Update copyright year.

From-SVN: r120360

17 years agoMakefile.in: Export GCC_EXEC_PREFIX before calling $(RUNTEST) in $(lang_checks) and...
Carlos O'Donell [Tue, 2 Jan 2007 22:13:19 +0000 (22:13 +0000)]
Makefile.in: Export GCC_EXEC_PREFIX before calling $(RUNTEST) in $(lang_checks) and...

gcc/

2007-01-02  Carlos O'Donell  <carlos@codesourcery.com>

* Makefile.in: Export GCC_EXEC_PREFIX before calling $(RUNTEST)
in $(lang_checks) and check-consistency targets.

From-SVN: r120359

17 years agotree-mudflap.c (mf_decl_cache_locals, [...]): Do not add referenced vars.
Jan Hubicka [Tue, 2 Jan 2007 21:36:17 +0000 (22:36 +0100)]
tree-mudflap.c (mf_decl_cache_locals, [...]): Do not add referenced vars.

        * tree-mudflap.c (mf_decl_cache_locals, mf_build_check_statement_for):
        Do not add referenced vars.
        * tree-cfg.c (update_modified_stmts): Do not update when SSA operands
        are not active.
        * passes.c (init_optimization_passes): Put mudflap_2 after
        free_datastructures.

From-SVN: r120358

17 years agotree-optimize (execute_fixup_cfg): Set after_inlining flag.
Jan Hubicka [Tue, 2 Jan 2007 21:33:45 +0000 (22:33 +0100)]
tree-optimize (execute_fixup_cfg): Set after_inlining flag.

2007-01-02  Jan Hubicka  <jh@suse.cz>

* tree-optimize (execute_fixup_cfg): Set after_inlining flag.
Set NOTHROW flag on call statements proved to be nothrow.
Update statement of local calls so new pure/const functions are
updated. Update_ssa when in ssa form. Mark PHI nodes of nonlocal
goto receivers.
(tree_rest_of_compilation): Register hooks and initialize bitmap
early. Do not set after_inlining flag.

From-SVN: r120357

17 years agosbitmap.c (HOST_BITS_PER_LONG_LONG): Change to HOST_BITS_PER_LONGLONG
Steve Ellcey [Tue, 2 Jan 2007 21:23:55 +0000 (21:23 +0000)]
sbitmap.c (HOST_BITS_PER_LONG_LONG): Change to HOST_BITS_PER_LONGLONG

* sbitmap.c (HOST_BITS_PER_LONG_LONG):  Change to
HOST_BITS_PER_LONGLONG

From-SVN: r120356

17 years agore PR c/19977 (overflow in non-static initializer should not be pedwarn)
Manuel López-Ibáñez [Tue, 2 Jan 2007 20:07:44 +0000 (20:07 +0000)]
re PR c/19977 (overflow in non-static initializer should not be pedwarn)

2007-01-02  Manuel Lopez-Ibanez <manu@gcc.gnu.org>

PR c/19977
* c-typeck.c (store_init_value): Don't emit pedantic overflow
warning for non-static initializers.

testsuite/
* gcc/testsuite/gcc.dg/overflow-warn-3.c: Remove XFAIL.
* gcc/testsuite/gcc.dg/overflow-warn-4.c: Remove XFAIL.

From-SVN: r120355

17 years agoalpha.md, [...]: Always use set_unique_reg_note to add REG_EQUAL notes.
Steven Bosscher [Tue, 2 Jan 2007 18:50:33 +0000 (18:50 +0000)]
alpha.md, [...]: Always use set_unique_reg_note to add REG_EQUAL notes.

        * config/alpha/alpha.md, arm/arm.c, darwin.c, frv/frv.md,
        m32r/m32r.c, m32r/m32r.c, mn10300/mn10300.md, pa/pa.c,
        rs6000/rs6000.c, s390/s390.md, sh/sh.md, sparc/sparc.c:
        Always use set_unique_reg_note to add REG_EQUAL notes.

From-SVN: r120353

17 years agoRevert:
Kazu Hirata [Tue, 2 Jan 2007 18:06:37 +0000 (18:06 +0000)]
Revert:

2007-01-02  Kazu Hirata  <kazu@codesourcery.com>

* alias.c (init_alias_analysis): Use VEC_safe_grow_cleared.
* cfgbuild.c (find_basic_blocks): Likewise.
* cfgrtl.c (rtl_create_basic_block): Likewise.
* function.c (temp_slots_at_level): Likewise.
* reg-stack.c (stack_regs_mentioned): Likewise.
* regclass.c (allocate_reg_info): Likewise.
* tree-cfg.c (init_empty_tree_cfg, build_tree_cfg, create_bb,
set_bb_for_stmt, move_block_to_fn): Likewise.
* tree-complex.c (tree_lower_complex): Likewise.
* vec.h (VEC_safe_grow_cleared): New.

From-SVN: r120351

17 years agoc-common.c (c_common_truthvalue_conversion): When warning about using an assignment...
Ian Lance Taylor [Tue, 2 Jan 2007 17:49:07 +0000 (17:49 +0000)]
c-common.c (c_common_truthvalue_conversion): When warning about using an assignment as a truth value, set TREE_NO_WARNING.

./: * c-common.c (c_common_truthvalue_conversion): When warning about
using an assignment as a truth value, set TREE_NO_WARNING.
cp/:
* semantics.c (maybe_convert_cond): Optionally warn when using an
assignment as a condition.
* typeck.c (convert_for_assignment): Optionally warn about
assigning the result of an assignment to a bool.
testsuite/:
* g++.dg/warn/Wparentheses-22.C: New test.
* g++.dg/warn/Wparentheses-23.C: New test.

From-SVN: r120348

17 years agore PR middle-end/7651 (Define -Wextra strictly in terms of other warning flags)
Manuel López-Ibáñez [Tue, 2 Jan 2007 17:33:25 +0000 (17:33 +0000)]
re PR middle-end/7651 (Define -Wextra strictly in terms of other warning flags)

2007-01-02  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR middle-end/7651
* c.opt (Wold-style-declaration): New.
* doc/invoke.texi (C-only Warning Options): New.
(Wold-style-declaration): Document it.
(Wextra): Enabled by -Wextra.
* c-opts.c (c_common_post_options): Enabled by -Wextra.
* c-decl.c (declspecs_add_scspec): Replace -Wextra with
-Wold-style-declaration.

testsuite/
* gcc.dg/declspec-3.c: Replace -W with -Wold-style-declaration.
* gcc.dg/declspec-3-Wextra.c: New.
* gcc.dg/declspec-3-no.c: New

From-SVN: r120347

17 years agoalias.c (init_alias_analysis): Use VEC_safe_grow_cleared.
Kazu Hirata [Tue, 2 Jan 2007 17:03:22 +0000 (17:03 +0000)]
alias.c (init_alias_analysis): Use VEC_safe_grow_cleared.

* alias.c (init_alias_analysis): Use VEC_safe_grow_cleared.
* cfgbuild.c (find_basic_blocks): Likewise.
* cfgrtl.c (rtl_create_basic_block): Likewise.
* function.c (temp_slots_at_level): Likewise.
* reg-stack.c (stack_regs_mentioned): Likewise.
* regclass.c (allocate_reg_info): Likewise.
* tree-cfg.c (init_empty_tree_cfg, build_tree_cfg, create_bb,
set_bb_for_stmt, move_block_to_fn): Likewise.
* tree-complex.c (tree_lower_complex): Likewise.
* vec.h (VEC_safe_grow_cleared): New.

From-SVN: r120345

17 years agore PR fortran/30276 (gfortran include problem)
Tobias Burnus [Tue, 2 Jan 2007 15:54:20 +0000 (16:54 +0100)]
re PR fortran/30276 (gfortran include problem)

2007-01-02  Tobias Burnus  <burnus@net-b.de>

PR fortran/30276
* scanner.c (open_included_file): Support full-path filenames.

From-SVN: r120344

17 years agopt.c (canonical_template_parms): Correct typo in comment.
Douglas Gregor [Tue, 2 Jan 2007 14:26:29 +0000 (14:26 +0000)]
pt.c (canonical_template_parms): Correct typo in comment.

2007-01-02  Douglas Gregor  <doug.gregor@gmail.com>

* pt.c (canonical_template_parms): Correct typo in comment.

From-SVN: r120343

17 years agore PR fortran/20896 (ambiguous interface not detected)
Paul Thomas [Tue, 2 Jan 2007 14:23:36 +0000 (14:23 +0000)]
re PR fortran/20896 (ambiguous interface not detected)

2007-01-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/20896
* interface.c (check_sym_interfaces): Remove call to
resolve_global_procedure.
gfortran.h : Remove prototype for resolve_global_procedure.
resolve.c (resolve_global_procedure): Add static attribute
to function declaration.

2007-01-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/20896
* gfortran.dg/interface_10.f90: Remove.

From-SVN: r120342

17 years agoc-common.c (c_common_nodes_and_builtins): Since variants of void_type_node get built...
Douglas Gregor [Tue, 2 Jan 2007 14:23:26 +0000 (14:23 +0000)]
c-common.c (c_common_nodes_and_builtins): Since variants of void_type_node get built before it is given a name...

2007-01-02  Douglas Gregor  <doug.gregor@gmail.com>

* c-common.c(c_common_nodes_and_builtins): Since variants of
void_type_node get built before it is given a name, we need to
give those variants the name, too.
(complete_array_type): We need to work with the canonical main
type of the array, from which we will build the qualified version.
* params.def (PARAM_VERIFY_CANONICAL_TYPES): New.
* print-tree.c (print_node): Display canonical type information
for each type.
* stor-layout.c (layout_type): When we don't know the
alignment of a type for which we're building an array, we end up
guessing wrong, so make the type require structural equality.
* tree.c (make_node_stat): When we build a new type, it is its
own canonical type.
(build_type_attribute_qual_variant): When building an attribute
variant, its canonical type is the non-attribute variant. However,
if the attributes are target-dependent and they differ, we need to
use structural equality checks for this type.
(build_qualified_type): A qualified type is not equivalent to its
unqualified variant; set the canonical type appropriately.
(build_distinct_type_copy): When building a distinct type from
another type, the new type is its own canonical type.
(build_variant_type_copy): When building a new type variant, we
assume that it is equivalent to the original type.
(build_pointer_type_for_mode): When building a pointer type, also
build a canonical type pointer.
(build_reference_type_for_mode): When building a reference type,
also build a canonical type reference.
(build_index_type): When we can't hash an index type (e.g.,
because its maximum value is negative), the index type requires
structural equality tests.
(build_array_type): Build the canonical form of an array type.
(build_function_type): Function types require structural equality,
because they contain default arguments, attributes, etc.
(build_method_type_directly): Ditto for method types.
(build_offset_type): Build the canonical offset type.
(build_complex_type): Build the canonical vector type.
(make_vector_type): Build the canonical vector type.
* tree.h (TYPE_CANONICAL): New.
(TYPE_STRUCTURAL_EQUALITY_P): New.
(SET_TYPE_STRUCTURAL_EQUALITY): New.
(struct tree_type): Added "canonical" field.
* params.h (VERIFY_CANONICAL_TYPES): New.
* doc/c-tree.texi (TYPE_CANONICAL): Document.
(TYPE_STRUCTURAL_EQUALITY_P): Document.
(SET_TYPE_STRUCTURAL_EQUALITY): Document.
* doc/invoke.texi (verify-canonical-types): Document --param
parameter for verifying canonical types.

2007-01-02  Douglas Gregor  <doug.gregor@gmail.com>

* typeck.c (structural_comptypes): Renamed from "comptypes".
(comptypes): Use canonical type information to perform fast type
comparison. When VERIFY_CANONICAL_TYPES, verify that the
canonical type comparison returns the same results as we would see
from the current, structural check. Support COMPARE_STRUCTURAL
when we need structural checks.
* decl.c (typename_compare): Fix comment.
(build_typename_type): TYPENAME_TYPE nodes require structural
equality checks, because they resolve different based on the
current class type.
(make_unbound_class_template): UNBOUND_CLASS_TEMPLATE nodes
require structural equality checks (for now).
(build_ptrmemfunc_type): Build the canonical pointer to member
function type.
(compute_array_index_type): Whenever we build a new index type
to represent the size of an array in a template, we need to mark
this index type as requiring structural equality. This goes for
arrays with value-dependent sizes with the current ABI, or all
arrays with ABI-1.
* tree.c (cplus_array_hash): New.
(struct cplus_array_info): New.
(cplus_array_compare): New.
(cplus_array_htab): New.
(build_cplus_array_type_1): Use a hash table to cache the array
types we build. Build the canonical array type for each array
type.
(cp_build_qualified_type_real): When building a cv-qualified array
type, use the hash table of array types and build canonical array
types as necessary.
(bind_template_template_parm): BOUND_TEMPLATE_TEMPLATE_PARM nodes
use structural equality (for now).
* cp-tree.h (COMPARE_STRUCTURAL): New.
* pt.c (canonical_template_parms): New.
(canonical_type_parameter): New.
(process_template_parm): Find the canonical type parameter.
(lookup_template_class): When we have named the primary template
type, set the canonical type for our template class to the primary
template type. If any of the template arguments need structural
equality checks, the template class needs structural equality
checks.
(tsubst): When reducing the level of a template template
parameter, we require structural equality tests for the resulting
parameter because its template parameters have not had their types
canonicalized. When reducing a template type parameter, find the
canonical reduced type parameter.
(any_template_arguments_need_structural_equality_p): New.

2007-01-02  Douglas Gregor  <doug.gregor@gmail.com>

* objc-act.c (objc_build_volatilized_type): Keep track of
canonical types.
(objc_get_protocol_qualified_type): Ditto.

From-SVN: r120341

17 years agoconfig.gcc (powerpc-*-eabispe*, [...]): Add rs6000/e500.h to tm_file.
Joseph Myers [Tue, 2 Jan 2007 13:08:01 +0000 (13:08 +0000)]
config.gcc (powerpc-*-eabispe*, [...]): Add rs6000/e500.h to tm_file.

* config.gcc (powerpc-*-eabispe*, powerpc-*-eabisimaltivec*,
powerpc-*-eabisim*, powerpc-*-eabialtivec*, powerpc-*-eabi*,
powerpc-*-rtems*, powerpc-wrs-vxworks, powerpc-wrs-vxworksae,
powerpcle-*-eabisim*, powerpcle-*-eabi*): Add rs6000/e500.h to
tm_file.
* config/rs6000/e500.h: New.
* config/rs6000/eabi.h (TARGET_SPE_ABI, TARGET_SPE, TARGET_E500,
TARGET_ISEL, TARGET_FPRS, TARGET_E500_SINGLE, TARGET_E500_DOUBLE):
Remove.
* config/rs6000/linuxspe.h (TARGET_SPE_ABI, TARGET_SPE,
TARGET_E500, TARGET_ISEL, TARGET_FPRS, TARGET_E500_SINGLE,
TARGET_E500_DOUBLE): Remove.
* config/rs6000/vxworks.h (TARGET_SPE_ABI, TARGET_SPE,
TARGET_E500, TARGET_ISEL, TARGET_FPRS): Remove.
* config/rs6000/rs6000.h (CHECK_E500_OPTIONS): Define.
* config/rs6000/rs6000.c (rs6000_override_options): Use
CHECK_E500_OPTIONS.

From-SVN: r120340

17 years agors6000.c (print_operand): Check (TARGET_SPE || TARGET_E500_DOUBLE), not TARGET_E500...
Joseph Myers [Tue, 2 Jan 2007 13:03:59 +0000 (13:03 +0000)]
rs6000.c (print_operand): Check (TARGET_SPE || TARGET_E500_DOUBLE), not TARGET_E500, for %y.

* config/rs6000/rs6000.c (print_operand): Check (TARGET_SPE ||
TARGET_E500_DOUBLE), not TARGET_E500, for %y.
(rs6000_generate_compare, rs6000_emit_sCOND, output_cbranch,
rs6000_emit_cmove): Don't check TARGET_E500.
* config/rs6000/rs6000.md (bunordered, bordered, sunordered,
sordered): Don't check TARGET_E500.

From-SVN: r120339

17 years agomips.c (mips_regno_mode_ok_for_base_p): Use HARD_REGISTER_NUM_P.
Eric Christopher [Tue, 2 Jan 2007 06:34:09 +0000 (06:34 +0000)]
mips.c (mips_regno_mode_ok_for_base_p): Use HARD_REGISTER_NUM_P.

2007-01-01  Eric Christopher  <echristo@apple.com>

        * config/mips/mips.c (mips_regno_mode_ok_for_base_p): Use
        HARD_REGISTER_NUM_P.

From-SVN: r120334

17 years agofold-const.c (fold_binary): Fold "(X^C1) eq/ne C2" into "X eq/ne (C1^C2)".
Roger Sayle [Tue, 2 Jan 2007 04:32:07 +0000 (04:32 +0000)]
fold-const.c (fold_binary): Fold "(X^C1) eq/ne C2" into "X eq/ne (C1^C2)".

* fold-const.c (fold_binary) <EQ_EXPR>: Fold "(X^C1) eq/ne C2" into
"X eq/ne (C1^C2)".  Fold "(X^Z) eq/ne (Y^Z)" as "X eq/ne Y" when Z
has no side-effects.  Fold "(X^C1) eq/ne (Y^C2)" as "(X^(C1^C2))
eq/ne Y".

* gcc.dg/fold-eqxor-4.c: New test case.

From-SVN: r120333

17 years agoconfigure.ac: Remove support for building with Apple's gcc-3.1.
Mike Stump [Tue, 2 Jan 2007 03:35:17 +0000 (03:35 +0000)]
configure.ac: Remove support for building with Apple's gcc-3.1.

gcc:
* configure.ac: Remove support for building with Apple's gcc-3.1.
config:
* mh-ppc-darwin: Remove support for building with Apple's gcc-3.1.

From-SVN: r120331

17 years agore PR middle-end/30311 (revision 120211 failed to compile perlbench)
Joseph Myers [Tue, 2 Jan 2007 00:38:21 +0000 (00:38 +0000)]
re PR middle-end/30311 (revision 120211 failed to compile perlbench)

gcc:
PR middle-end/30311
* caller-save.c (add_stored_regs): Only handle SUBREGs if inner
REG is a hard register.  Do not modify REG before calling
subreg_nregs.
* rtlanal.c (subreg_get_info): Don't assert size of XMODE is a
multiple of the size of YMODE for certain lowpart cases.

gcc/testsuite:
* gcc.c-torture/compile/pr30311.c: New test.

From-SVN: r120329

17 years agoDaily bump.
GCC Administrator [Tue, 2 Jan 2007 00:17:34 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r120327

17 years agoFix misspelling of GIMPLE_MODIFY_STMT.
Andrew Pinski [Mon, 1 Jan 2007 22:27:27 +0000 (14:27 -0800)]
Fix misspelling of GIMPLE_MODIFY_STMT.

This is what I get for copying manually the patch.

From-SVN: r120322

17 years agore PR middle-end/30253 (ICE with statement expression inside a conditional)
Andrew Pinski [Mon, 1 Jan 2007 22:19:58 +0000 (14:19 -0800)]
re PR middle-end/30253 (ICE with statement expression inside a conditional)

2007-01-01  Andrew Pinski  <pinskia@gmail.com>

        PR middle-end/30253
        * gimplify (voidify_wrapper_expr): Update for
        GIMPLIFY_MODIFY_STMT.

2007-01-01  Andrew Pinski  <pinskia@gmail.com>

        PR middle-end/30253
        * gcc.c-torture/compile/statement-expression-1.c: New test.

From-SVN: r120321

17 years agore PR target/29166 (broken unwind information for many life variables resulting in...
Andreas Schwab [Mon, 1 Jan 2007 22:03:23 +0000 (22:03 +0000)]
re PR target/29166 (broken unwind information for many life variables resulting in register corruption)

PR target/29166
* config/ia64/ia64.c (ia64_compute_frame_size): Account space for
save of BR0 in extra_spill_size instead of spill_size.
(ia64_expand_prologue): Save BR0 outside of the gr/br/fr spill
area.
(ia64_expand_epilogue): Restore BR0 from its new location.

testsuite/:
* g++.dg/eh/pr29166.C: New test.

From-SVN: r120319

17 years agogimplify.c (gimplify_init_constructor <case VECTOR_TYPE>): Use a temporary variable...
Andrew Pinski [Mon, 1 Jan 2007 22:01:59 +0000 (14:01 -0800)]
gimplify.c (gimplify_init_constructor <case VECTOR_TYPE>): Use a temporary variable if the left hand side is not a gimple register.

2007-01-01  Andrew Pinski  <pinskia@gmail.com>

        * gimplify.c (gimplify_init_constructor <case VECTOR_TYPE>):
        Use a temporary variable if the left hand side is not a gimple
        register.

From-SVN: r120318

17 years agogimplify.c (gimplify_return_expr): Make the temporary variable for the return express...
Andrew Pinski [Mon, 1 Jan 2007 21:58:19 +0000 (13:58 -0800)]
gimplify.c (gimplify_return_expr): Make the temporary variable for the return expression, a gimple register variable.

2007-01-01  Andrew Pinski  <pinskia@gmail.com>

        * gimplify.c (gimplify_return_expr): Make the temporary variable
        for the return expression, a gimple register variable.

From-SVN: r120317

17 years agoemit-rtl.c (emit_copy_of_insn_after): Do not call copy_insn_1 for INSN_LIST.
Jan Hubicka [Mon, 1 Jan 2007 21:53:31 +0000 (22:53 +0100)]
emit-rtl.c (emit_copy_of_insn_after): Do not call copy_insn_1 for INSN_LIST.

* emit-rtl.c (emit_copy_of_insn_after): Do not call copy_insn_1 for
INSN_LIST.

From-SVN: r120316

17 years agoconfigure.ac (HAVE_GAS_LITERAL16): Add autoconf check for .literal16.
Mike Stump [Mon, 1 Jan 2007 20:58:38 +0000 (20:58 +0000)]
configure.ac (HAVE_GAS_LITERAL16): Add autoconf check for .literal16.

* configure.ac (HAVE_GAS_LITERAL16): Add autoconf check for
.literal16.
* config/darwin.c (machopic_select_rtx_section): Use
HAVE_GAS_LITERAL16.
(darwin_mergeable_constant_section): Likewise.
* configure: Regenerate.
* config.in: Regenerate.

From-SVN: r120315

17 years agocgraphunit.c (cgraph_optimize): Call cgraph_add_new_functions before starting IPA...
Jan Hubicka [Mon, 1 Jan 2007 20:11:09 +0000 (21:11 +0100)]
cgraphunit.c (cgraph_optimize): Call cgraph_add_new_functions before starting IPA passes.

* cgraphunit.c (cgraph_optimize): Call cgraph_add_new_functions
before starting IPA passes.

Co-Authored-By: Andrew Pinski <pinskia@gmail.com>
From-SVN: r120314

17 years agoRotate ChangeLog file.
Mike Stump [Mon, 1 Jan 2007 19:54:50 +0000 (19:54 +0000)]
Rotate ChangeLog file.

From-SVN: r120313

17 years agoRotate ChangeLog.
Steven G. Kargl [Mon, 1 Jan 2007 19:22:09 +0000 (19:22 +0000)]
Rotate ChangeLog.

From-SVN: r120312

17 years agoRotate ChangeLog
Steven G. Kargl [Mon, 1 Jan 2007 19:17:50 +0000 (19:17 +0000)]
Rotate ChangeLog

From-SVN: r120311

17 years agotarget-supports.exp (check_effective_target_powerpc_spe): New.
Joseph Myers [Mon, 1 Jan 2007 12:56:08 +0000 (12:56 +0000)]
target-supports.exp (check_effective_target_powerpc_spe): New.

* lib/target-supports.exp (check_effective_target_powerpc_spe):
New.
(check_effective_target_vect_cmdline_needed): Use it.

From-SVN: r120308

17 years agoDaily bump.
GCC Administrator [Mon, 1 Jan 2007 00:17:27 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r120306

17 years agore PR tree-optimization/30137 (Missed folding of pointer comparison)
Richard Guenther [Sun, 31 Dec 2006 17:27:35 +0000 (17:27 +0000)]
re PR tree-optimization/30137 (Missed folding of pointer comparison)

2006-12-31  Richard Guenther  <rguenther@suse.de>

PR middle-end/30137
* fold-const.c (fold_comparison): Fold comparison of addresses
of components.

* testsuite/gcc.dg/pr30137-1.c: New testcase.
* testsuite/gcc.dg/pr30137-2.c: Likewise.

From-SVN: r120301

17 years agore PR middle-end/30322 (((-i-1) + i) +1) is turned into ~i + (i+1) and never into...
Roger Sayle [Sun, 31 Dec 2006 16:17:49 +0000 (16:17 +0000)]
re PR middle-end/30322 (((-i-1) + i) +1) is turned into ~i + (i+1) and never into 0 on the tree level)

PR middle-end/30322
* fold-const.c (fold_binary): Fold X + ~X and ~X + X into -1 when
we don't care about trapping overflow.  Only convert -A - 1 into ~A
when we don't care about trapping overflow.

* gcc.dg/fold-plusnot-1.c: New test case.

From-SVN: r120300

17 years agore PR c++/29731 (ICE with statement expression as template parameter)
Simon Martin [Sun, 31 Dec 2006 16:09:07 +0000 (16:09 +0000)]
re PR c++/29731 (ICE with statement expression as template parameter)

2006-12-31  Simon Martin  <simartin@users.sourceforge.net>

PR c++/29731
* parser.c (cp_parser_primary_expression): Return error_mark_node when
a statement-expression is found outside of a function body.

From-SVN: r120299

17 years agore PR middle-end/30338 (infinite loop in maybe_canonicalize_comparison)
Richard Guenther [Sun, 31 Dec 2006 14:01:19 +0000 (14:01 +0000)]
re PR middle-end/30338 (infinite loop in maybe_canonicalize_comparison)

2006-12-31  Richard Guenther  <rguenther@suse.de>

PR middle-end/30338
* fold-const.c (fold_binary): Fix type-mismatch in folding
of -1 - A to ~A.

* gcc.c-torture/compile/pr30338.c: New testcase.

From-SVN: r120297

17 years agore PR fortran/27900 ([4.1 only] ICE using intrinsics as arguments)
Paul Thomas [Sun, 31 Dec 2006 07:51:47 +0000 (07:51 +0000)]
re PR fortran/27900 ([4.1 only] ICE using intrinsics as arguments)

2006-12-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/27900
* resolve.c (resolve_actual_arglist): If all else fails and a
procedure actual argument has no type, see if a specific
intrinsic matches.

PR fortran/24325
* resolve.c (resolve_function): If the function reference is
FL_VARIABLE this is an error.

2006-12-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/27900
* gfortran.dg/intrinsic_actual_4.f90: New test.

PR fortran/24325
* gfortran.dg/func_decl_3.f90: New test.

From-SVN: r120296

17 years agore PR fortran/23060 (%VAL, %REF and %DESCR constructs not implemented)
Paul Thomas [Sun, 31 Dec 2006 06:55:16 +0000 (06:55 +0000)]
re PR fortran/23060 (%VAL, %REF and %DESCR constructs not implemented)

2006-12-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/23060
* intrinsic.c (compare_actual_formal ): Distinguish argument
list functions from keywords.
* intrinsic.c (sort_actual): If formal is NULL, the presence of
an argument list function actual is an error.
* trans-expr.c (conv_arglist_function) : New function to
implement argument list functions %VAL, %REF and %LOC.
(gfc_conv_function_call): Call it.
* resolve.c (resolve_actual_arglist): Add arg ptype and check
argument list functions.
(resolve_function, resolve_call): Set value of ptype before
calls to resolve_actual_arglist.
* primary.c (match_arg_list_function): New function.
(gfc_match_actual_arglist): Call it before trying for a
keyword argument.

2006-12-31  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/23060
* gfortran.dg/c_by_val.c: Called by c_by_val_1.f.
* gfortran.dg/c_by_val_1.f: New test.
* gfortran.dg/c_by_val_2.f: New test.
* gfortran.dg/c_by_val_3.f: New test.

From-SVN: r120295

17 years agoDaily bump.
GCC Administrator [Sun, 31 Dec 2006 00:17:28 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r120293

17 years ago* tree-inline.c: Fix a comment typo.
Kazu Hirata [Sat, 30 Dec 2006 21:17:30 +0000 (21:17 +0000)]
* tree-inline.c: Fix a comment typo.

From-SVN: r120288

17 years agore PR fortran/30321 (program crash for SUM applied to zero-size array)
Thomas Koenig [Sat, 30 Dec 2006 13:16:36 +0000 (13:16 +0000)]
re PR fortran/30321 (program crash for SUM applied to zero-size array)

2006-12-30  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/30321
* m4/ifunction.m4 (name`'rtype_qual`_'atype_code):
Check for extents < 0 for zero-sized arrays.  If
no retarray has been specified and the size is zero,
return early.
(`m'name`'rtype_qual`_'atype_code): Likewise.
* generated/all_l16.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/count_16_l16.c: Regenerated.
* generated/count_16_l4.c: Regenerated.
* generated/count_16_l8.c: Regenerated.
* generated/count_4_l16.c: Regenerated.
* generated/count_4_l4.c: Regenerated.
* generated/count_4_l8.c: Regenerated.
* generated/count_8_l16.c: Regenerated.
* generated/count_8_l4.c: Regenerated.
* generated/count_8_l8.c: Regenerated.
* generated/cshift1_16.c: Regenerated.
* generated/cshift1_4.c: Regenerated.
* generated/cshift1_8.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.

2006-12-30  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/30321
* gfortran.dg/sum_zero_array_1.f90:  New test.

From-SVN: r120287

17 years agoipa-pure-const.c (check_operand): SSA_NAME is safe.
Jan Hubicka [Sat, 30 Dec 2006 12:15:16 +0000 (13:15 +0100)]
ipa-pure-const.c (check_operand): SSA_NAME is safe.

* ipa-pure-const.c (check_operand): SSA_NAME is safe.
* ipa-type-escape.c (scan_for_refs): Look into SSA_NAMEs.

From-SVN: r120286