platform/upstream/gcc.git
16 years agore PR middle-end/38200 (internal compiler error: in find_func_aliases, at tree-ssa...
Jakub Jelinek [Fri, 21 Nov 2008 21:59:33 +0000 (22:59 +0100)]
re PR middle-end/38200 (internal compiler error: in find_func_aliases, at tree-ssa-structalias.c:3905)

PR middle-end/38200
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Only
propagate x = &a into *x = b if conversion from b to a's type is
useless.

* gcc.dg/pr38200.c: New test.

From-SVN: r142100

16 years agocaller-save.c (insert_one_insn): Take into account REG_INC notes for the liveness...
Eric Botcazou [Fri, 21 Nov 2008 21:19:34 +0000 (21:19 +0000)]
caller-save.c (insert_one_insn): Take into account REG_INC notes for the liveness computation of the new insn.

* caller-save.c (insert_one_insn): Take into account REG_INC notes
for the liveness computation of the new insn.

From-SVN: r142099

16 years agostormy16.md (movqi_internal, [...]): Moves to/from below100 space (W) can only use...
DJ Delorie [Fri, 21 Nov 2008 20:39:09 +0000 (15:39 -0500)]
stormy16.md (movqi_internal, [...]): Moves to/from below100 space (W) can only use r0-r7.

* config/stormy16/stormy16.md (movqi_internal, movhi_internal):
Moves to/from below100 space (W) can only use r0-r7.

From-SVN: r142098

16 years agore PR other/38214 (Unrecognized command line option "-fipa-marix-reorg" although...
Paolo Carlini [Fri, 21 Nov 2008 16:21:33 +0000 (16:21 +0000)]
re PR other/38214 (Unrecognized command line option "-fipa-marix-reorg"  although it's documented)

2008-11-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR other/38214
* doc/invoke.texi (Optimization Options): Fix typo.

From-SVN: r142092

16 years agoAdd the new file.
H.J. Lu [Fri, 21 Nov 2008 14:05:42 +0000 (06:05 -0800)]
Add the new file.

From-SVN: r142091

16 years agoconfig.gcc (extra_headers): For x86 and x86-64, remove gmmintrin.h, add immintrin...
H.J. Lu [Fri, 21 Nov 2008 14:05:02 +0000 (14:05 +0000)]
config.gcc (extra_headers): For x86 and x86-64, remove gmmintrin.h, add immintrin.h and avxintrin.h.

gcc/

2008-11-21  H.J. Lu  <hongjiu.lu@intel.com>
    Xuepeng Guo  <xuepeng.guo@intel.com>

* config.gcc (extra_headers): For x86 and x86-64, remove
gmmintrin.h, add immintrin.h and avxintrin.h.

* config/i386/gmmintrin.h: Renamed to ...
* config/i386/avxintrin.h: This.  Don't include intrinsics if
_IMMINTRIN_H_INCLUDED is undedined.

* config/i386/immintrin.h: New.

gcc/testsuite/

2008-11-21  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/avx-1.c: Include <immintrin.h> instead of
<gmmintrin.h>.
* gcc.target/i386/avx-2.c: Likewise.
* gcc.target/i386/m256-check.h: Likewise.
* g++.dg/other/i386-5.C: Likewise.
* g++.dg/other/i386-6.C: Likewise.

Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com>
From-SVN: r142090

16 years agoMissed to check in changes to /config/mh-mingw.
Kai Tietz [Fri, 21 Nov 2008 13:54:41 +0000 (13:54 +0000)]
Missed to check in changes to /config/mh-mingw.

Missed to check in changes to /config/mh-mingw. It is part of the reviewed
patch 2008/10/13 by Danny Smith.

2008-11-21  Kai Tietz  <kai.tietz@onevision.com>

        Fix PR/25502
        * mh-mingw (BOOT_CFLAGS): Add -Wno-pedantic-ms-format switch.

From-SVN: r142089

16 years agore PR target/38208 (gcc.c-torture/compile/20080806-1.c)
Jakub Jelinek [Fri, 21 Nov 2008 13:47:05 +0000 (14:47 +0100)]
re PR target/38208 (gcc.c-torture/compile/20080806-1.c)

PR target/38208
* reload1.c (eliminate_regs_in_insn): For trunc_int_for_mode use
mode of PLUS, not mode of the eliminated register.

From-SVN: r142088

16 years agoObject.m (errno): Replaced by errno.h include.
Kai Tietz [Fri, 21 Nov 2008 12:07:43 +0000 (12:07 +0000)]
Object.m (errno): Replaced by errno.h include.

2008-11-21  Kai Tietz  <kai.tietz@onevision.com>

        *  Object.m (errno): Replaced by errno.h include.
        (compare): Cast self to id to prevent warning on comparison.
        * objc/objc.h (BOOL): Prevent redeclaration of BOOL, if it is
        already there.
        * sendmsg.c (__objc_print_dtable_stats): Remove type warnings.
        * thr-win32.c (__objc_thread_detach): Remove type warning.
        (__objc_thread_id): Likewise.
        * thr.c (__objc_thread_detach_functiont): Add __builtin_trap ()
        for noreturn.

From-SVN: r142087

16 years ago38210.cc: Tweak.
Paolo Carlini [Fri, 21 Nov 2008 10:14:14 +0000 (10:14 +0000)]
38210.cc: Tweak.

2008-11-21  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/22_locale/num_put/put/char/38210.cc: Tweak.
* testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.

From-SVN: r142086

16 years agore PR libstdc++/38210 (num_put<>::do_put(void*) performs padding incorrectly when...
Paolo Carlini [Fri, 21 Nov 2008 09:59:17 +0000 (09:59 +0000)]
re PR libstdc++/38210 (num_put<>::do_put(void*) performs padding incorrectly when adjustfield==internal)

2008-11-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/38210
* include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
ios_base&, char_type, const void*)): Fix.
* testsuite/22_locale/num_put/put/char/38210.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/38210.cc: Likewise.

From-SVN: r142085

16 years agommx.md (mmx_nand<mode>3): Rename to mmx_andnot<mode>3.
Uros Bizjak [Fri, 21 Nov 2008 08:54:18 +0000 (09:54 +0100)]
mmx.md (mmx_nand<mode>3): Rename to mmx_andnot<mode>3.

* config/i386/mmx.md (mmx_nand<mode>3): Rename to mmx_andnot<mode>3.
* config/i386/sse.md (avx_nand<mode>3): Rename to avx_andnot<mode>3.
(<sse>_nand<mode>3): Rename to <sse>_andnot<mode>3.
(sse2_nand<mode>3): Rename to sse2_andnot<mode>3.
(*sse_nand<mode>3): Rename to *sse_andnot<mode>3.
(*avx_nand<mode>3): Rename to *avx_andnot<mode>3.
(*nand<mode>3): Rename to *andnot<mode>3.
(*nandtf3): rename to *andnottf3.
* config/i386/i386.c (bdesc_args) [IX86_BUILTIN_PANDN]:
Use CODE_FOR_mmx_andnotv2si3.
[IX86_BUILTIN_ANDNPS]: Use CODE_FOR_sse_andnotv4sf3.
[IX86_BUILTIN_ANDNPD]: Use CODE_FOR_sse2_andnotv2df3.
[IX86_BUILTIN_PANDN128]: Use CODE_FOR_sse2_andnotv2di3.
[IX86_BUILTIN_ANDNPS256]: Use CODE_FOR_avx_andnotv8sf3.
[IX86_BUILTIN_ANDNPD256]: Use CODE_FOR_avx_andnotv4df3.

From-SVN: r142083

16 years agore PR middle-end/37908 (atomic NAND op generate wrong code; __sync_nand_and_fetch...
Uros Bizjak [Fri, 21 Nov 2008 07:28:27 +0000 (08:28 +0100)]
re PR middle-end/37908 (atomic NAND op generate wrong code; __sync_nand_and_fetch, __sync_fetch_and_nand)

PR middle-end/37908
* config/ia64/ia64.c (ia64_expand_atomic_ope): Properly handle NAND
case by calculating ~(new_reg & val) instead of (~new_reg & val).
* config/ia64/sync.md (sync_nand<mode>): Change insn RTX
to (not:IMODE (and:IMODE (...))).
(sync_old_nand<mode>): Ditto.
(sync_new_nand<mode>): Ditto.

From-SVN: r142082

16 years agore PR fortran/37472 (bad output on default-format write of double in common block...
Jerry DeLisle [Fri, 21 Nov 2008 04:35:17 +0000 (04:35 +0000)]
re PR fortran/37472 (bad output on default-format write of double in common block with -m64)

2008-11-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/37472
* gfortran.dg/namelist_print_1.f: Update test.

From-SVN: r142080

16 years agore PR fortran/37472 (bad output on default-format write of double in common block...
Jerry DeLisle [Fri, 21 Nov 2008 04:29:54 +0000 (04:29 +0000)]
re PR fortran/37472 (bad output on default-format write of double in common block with -m64)

2008-11-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/37472
* io/write_float.def (output_float_FMT_G_): Adjust conversion of
G format specification to F format.

From-SVN: r142079

16 years agoDaily bump.
GCC Administrator [Fri, 21 Nov 2008 00:16:55 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r142075

16 years agothumb2.md (thumb2_casesi_internal, [...]): Use earlyclobber for scratch operand 4.
Joseph Myers [Thu, 20 Nov 2008 23:00:00 +0000 (23:00 +0000)]
thumb2.md (thumb2_casesi_internal, [...]): Use earlyclobber for scratch operand 4.

* config/arm/thumb2.md (thumb2_casesi_internal,
thumb2_casesi_internal_pic): Use earlyclobber for scratch operand
4.

From-SVN: r142070

16 years agosync-2.c: Add type cast to avoid folding.
Andreas Krebbel [Thu, 20 Nov 2008 22:11:42 +0000 (22:11 +0000)]
sync-2.c: Add type cast to avoid folding.

2008-11-20  Andreas Krebbel  <krebbel1@de.ibm.com>

* gcc.dg/sync-2.c: Add type cast to avoid folding.
* gcc.dg/sync-3.c: Likewise.

From-SVN: r142064

16 years agos390.c (s390_expand_atomic): Adjust QI/HI atomic nand to the changed 4.4 semantic.
Andreas Krebbel [Thu, 20 Nov 2008 22:08:08 +0000 (22:08 +0000)]
s390.c (s390_expand_atomic): Adjust QI/HI atomic nand to the changed 4.4 semantic.

2008-11-20  Andreas Krebbel  <krebbel1@de.ibm.com>

* gcc/config/s390/s390.c (s390_expand_atomic): Adjust QI/HI atomic
nand to the changed 4.4 semantic.

From-SVN: r142063

16 years agore PR middle-end/29215 (extra store for memcpy)
Jakub Jelinek [Thu, 20 Nov 2008 21:35:03 +0000 (22:35 +0100)]
re PR middle-end/29215 (extra store for memcpy)

PR middle-end/29215
* builtins.c (SLOW_UNALIGNED_ACCESS): Define if not defined.
(fold_builtin_memory_op): Handle even the case where just one
of src and dest is an address of a var decl component, using
TYPE_REF_CAN_ALIAS_ALL pointers.  Remove is_gimple_min_invariant
and readonly_data_expr src check.
* tree-ssa-sccvn.c (DFS): Use clear_and_done_ssa_iter to shut
up warnings.

* trans-array.c (trans_array_constructor_value,
gfc_build_constant_array_constructor): Fill in TREE_PURPOSE.

* gfortran.dg/array_memcpy_3.f90: Adjust pattern to match even
memcpy optimized into ref-all store.
* gcc.dg/pr29215.c: New test.

From-SVN: r142061

16 years agore PR rtl-optimization/36998 (Ada bootstrap broken on i586-*-*)
Jakub Jelinek [Thu, 20 Nov 2008 21:26:52 +0000 (22:26 +0100)]
re PR rtl-optimization/36998 (Ada bootstrap broken on i586-*-*)

PR rtl-optimization/36998
* dwarf2out.c (stack_adjust_offset): Add cur_args_size and cur_offset
arguments.  Handle sp = reg and (set (foo) (mem (pre_inc (reg sp)))).
(compute_barrier_args_size_1, dwarf2out_frame_debug_expr): Adjust
stack_adjust_offset callers.
(dwarf2out_stack_adjust): Likewise.  Handle insns in annulled
branches properly.
(compute_barrier_args_size): Handle insns in annulled branches
properly.

From-SVN: r142060

16 years agore PR middle-end/38151 (structures with _Complex arguments are not passed correctly)
Uros Bizjak [Thu, 20 Nov 2008 21:11:22 +0000 (22:11 +0100)]
re PR middle-end/38151 (structures with _Complex arguments are not passed correctly)

PR target/38151
* config/i386/i386.c (classify_argument) [integer mode size <= 64bit]:
Handle cases when integer argument crosses argument register boundary.

testsuite/ChangeLog:

PR target/38151
* gcc.target/i386/pr38151-1.c: New test.

From-SVN: r142059

16 years ago* gcc-interface/utils.c (init_gigi_decls): Fix type mismatch.
Eric Botcazou [Thu, 20 Nov 2008 20:56:23 +0000 (20:56 +0000)]
* gcc-interface/utils.c (init_gigi_decls): Fix type mismatch.

From-SVN: r142058

16 years agoFollow up fix for GC19-015:
Eric Botcazou [Thu, 20 Nov 2008 20:24:53 +0000 (20:24 +0000)]
Follow up fix for GC19-015:

* utils.c (init_gigi_decls): Fix type mismatch.

From-SVN: r142057

16 years agore PR c++/28513 (QOI: Diagnostic missing since 3.3.x when naming rule is violated)
Jason Merrill [Thu, 20 Nov 2008 20:23:32 +0000 (15:23 -0500)]
re PR c++/28513 (QOI: Diagnostic missing since 3.3.x when naming rule is violated)

        PR c++/28513
        * parser.c (cp_parser_class_name): Call maybe_note_name_used_in_class.

From-SVN: r142056

16 years agore PR c++/37540 (ICE on __decltype of method call in function template)
Jason Merrill [Thu, 20 Nov 2008 18:40:52 +0000 (13:40 -0500)]
re PR c++/37540 (ICE on __decltype of method call in function template)

        PR c++/37540
        * call.c (build_over_call): Take the address of the function even
        in a template.
        (build_new_method_call): Remember the type of the called function
        in a template.

From-SVN: r142054

16 years agore PR bootstrap/33100 (on bootstrap getting section .eh_frame: bad cie version 0...
Rainer Orth [Thu, 20 Nov 2008 17:13:01 +0000 (17:13 +0000)]
re PR bootstrap/33100 (on bootstrap getting section .eh_frame: bad cie version 0: offset 0x0)

gcc:
PR bootstrap/33100
* config.gcc (i[34567]86-*-solaris2*): Don't include
i386/t-crtstuff here.
Move extra_parts, i386/t-sol2 in tmake_file to libgcc/config.host.
* config/i386/t-sol2: Move to libgcc/config/i386.

libgcc:
PR bootstrap/33100
* configure.ac (i?86-*-solaris2.1[0-9]*): Only include
i386/t-crtstuff if linker supports ZERO terminator unwind entries.
* configure: Regenerate.
* config.host (i[34567]86-*-solaris2*): Move i386/t-sol2 in
tmake_file here from gcc/config.gcc.
Move extra_parts here from gcc/config.gcc.
* config/i386/t-sol2: Move here from gcc/config/i386.
Use gcc_srcdir instead of srcdir.

From-SVN: r142050

16 years agore PR libstdc++/38196 (num_put<>::do_put(bool) performs 'internal' padding incorrectl...
Paolo Carlini [Thu, 20 Nov 2008 16:00:17 +0000 (16:00 +0000)]
re PR libstdc++/38196 (num_put<>::do_put(bool) performs 'internal' padding incorrectly when boolalpha==true)

2008-11-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/38196
* include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
ios_base&, char_type, bool)): Fix.
* testsuite/22_locale/num_put/put/char/38196.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/38196.cc: Likewise.

From-SVN: r142048

16 years agotrans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Use gfc_index_one_node.
Jakub Jelinek [Thu, 20 Nov 2008 15:21:12 +0000 (16:21 +0100)]
trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Use gfc_index_one_node.

* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Use
gfc_index_one_node.
(gfc_conv_intrinsic_size): Use gfc_index_{zero,one}_node.

From-SVN: r142046

16 years agoAdd PR tag forgotten in rev142043.
Thomas Schwinge [Thu, 20 Nov 2008 13:24:18 +0000 (14:24 +0100)]
Add PR tag forgotten in rev142043.

From-SVN: r142044

16 years agotlink.c: Include "libiberty.h".
Samuel Thibault [Thu, 20 Nov 2008 13:21:51 +0000 (13:21 +0000)]
tlink.c: Include "libiberty.h".

2008-11-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>

* tlink.c: Include "libiberty.h".
(initial_cwd): Change type into char *.
(tlink_init): Call getpwd instead of getcwd.

From-SVN: r142043

16 years agore PR tree-optimization/37868 (code that breaks TBAA is misoptimized even with -fno...
Richard Guenther [Thu, 20 Nov 2008 12:25:26 +0000 (12:25 +0000)]
re PR tree-optimization/37868 (code that breaks TBAA is misoptimized even with -fno-strict-aliasing)

2008-11-20  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37868
* gcc.dg/torture/pr37868.c: New testcase.
* gcc.c-torture/execute/pr38048-1.c: Likewise.
* gcc.c-torture/execute/pr38048-2.c: Likewise.

From-SVN: r142041

16 years agore PR fortran/38181 (calls to SIZE not optimized out of loops)
Jakub Jelinek [Thu, 20 Nov 2008 09:42:35 +0000 (10:42 +0100)]
re PR fortran/38181 (calls to SIZE not optimized out of loops)

PR fortran/38181
* trans-intrinsic.c (gfc_conv_intrinsic_size): Inline 2 argument
size if the second argument is not optional and one argument size
for rank 1 arrays.

* gfortran.dg/array_section_2.f90: Adjust pattern to match
the inlined size0 instead of a size0 call.

From-SVN: r142037

16 years agore PR rtl-optimization/32283 (Missed induction variable optimization)
Zdenek Dvorak [Thu, 20 Nov 2008 08:05:12 +0000 (09:05 +0100)]
re PR rtl-optimization/32283 (Missed induction variable optimization)

PR rtl-optimization/32283
* tree-ssa-loop-niter.c (scev_probably_wraps_p): Use type of the base
of the induction variable to decide whether it may wrap.
* tree-ssa-loop-ivopts.c (rewrite_use_compare): Emit the initialization
of the bound before the loop.
* simplify-rtx.c (simplify_binary_operation_1): Add two simplifications
regarding AND.
(simplify_plus_minus): Only fail if no simplification is possible.
* loop-iv.c (simple_rhs_p): Consider reg + reg and reg << cst simple.

From-SVN: r142035

16 years agore PR c++/36631 (attribute always_inline -> sorry, unimplemented: recursive inlining)
Jakub Jelinek [Thu, 20 Nov 2008 01:47:10 +0000 (02:47 +0100)]
re PR c++/36631 (attribute always_inline  ->  sorry, unimplemented: recursive inlining)

PR c++/36631
* gimplify.c (gimplify_call_expr): Defer most of the cannot inline
checking until GIMPLE lowering.
* gimple-low.c (check_call_args): New function.
(lower_stmt) <case GIMPLE_CALL>: Call it.

* g++.dg/template/call5.C: New test.

From-SVN: r142033

16 years agoDaily bump.
GCC Administrator [Thu, 20 Nov 2008 00:17:02 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r142030

16 years agore PR c++/37142 (ICE: in dependent_type_p, at cp/pt.c:15585)
Dodji Seketeli [Thu, 20 Nov 2008 00:00:39 +0000 (00:00 +0000)]
re PR c++/37142 (ICE: in dependent_type_p, at cp/pt.c:15585)

gcc/testsuite/ChangeLog:
2008-11-19  Dodji Seketeli  <dodji@redhat.com>

PR c++/37142
* g++.dg/template/crash85.C: New test.

gcc/cp/ChangeLog
2008-11-19  Dodji Seketeli  <dodji@redhat.com>

PR c++/37142
* pt.c (coerce_template_template_parm): Use the more robust
uses_template_parms instead of dependent_type_p.

From-SVN: r142025

16 years agomips.c (mips_gimplify_va_arg_expr): Use -rsize with the same type as the first operan...
Adam Nemet [Wed, 19 Nov 2008 23:13:29 +0000 (23:13 +0000)]
mips.c (mips_gimplify_va_arg_expr): Use -rsize with the same type as the first operand of the AND expression.

* config/mips/mips.c (mips_gimplify_va_arg_expr): Use -rsize
with the same type as the first operand of the AND expression.

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

From-SVN: r142024

16 years agore PR c++/35405 (Internal compiler error)
Dodji Seketeli [Wed, 19 Nov 2008 22:26:56 +0000 (22:26 +0000)]
re PR c++/35405 (Internal compiler error)

gcc/cp/ChangeLog:
2008-11-19  Dodji Seketeli  <dodji@redhat.com>

PR c++/35405
* pt.c (lookup_template_class): Check pointers before dereferencing
  Them.
* error.c (dump_template_decl): Likewise.

gcc/testsuite/ChangeLog:
2008-11-19  Dodji Seketeli  <dodji@redhat.com>

PR c++/35405
* g++.dg/template/crash84.C: New test.

From-SVN: r142022

16 years agopr11832.c: XFAIL even on s390*-*-*.
Jakub Jelinek [Wed, 19 Nov 2008 21:52:47 +0000 (22:52 +0100)]
pr11832.c: XFAIL even on s390*-*-*.

* gcc.c-torture/compile/pr11832.c: XFAIL even on s390*-*-*.
* gcc.c-torture/compile/pr33009.c: Likewise.

From-SVN: r142021

16 years agobelow100.S (.chip_info): Use position-independent expressions for the fillers.
DJ Delorie [Wed, 19 Nov 2008 21:43:16 +0000 (16:43 -0500)]
below100.S (.chip_info): Use position-independent expressions for the fillers.

* gcc.target/xstormy16/below100.S (.chip_info): Use
position-independent expressions for the fillers.

From-SVN: r142020

16 years agore PR c++/36410 (ICE with transparent union)
Jason Merrill [Wed, 19 Nov 2008 21:35:27 +0000 (16:35 -0500)]
re PR c++/36410 (ICE with transparent union)

        PR c++/36410
        * decl2.c (grokfield): Pass ATTR_FLAG_TYPE_IN_PLACE for a typedef
        that names a class for linkage purposes.

From-SVN: r142019

16 years agore PR bootstrap/37859 (Bootstrap failure on mips64octeon-unknown-linux-gnu)
Vladimir Makarov [Wed, 19 Nov 2008 21:25:00 +0000 (21:25 +0000)]
re PR bootstrap/37859 (Bootstrap failure on mips64octeon-unknown-linux-gnu)

2008-11-19  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/37859
* ira-int.h (struct ira_loop_tree_node): New member
entered_from_non_parent_p.

* ira-color.c (print_loop_title): Print loop bbs.

* ira-emit.c (entered_from_non_parent_p,
setup_entered_from_non_parent_p): New functions.
(not_modified_p): Rename to store_can_be_removed_p.  Check there
is no side entries.
(generate_edge_moves): Use store_can_be_removed_p instead of
not_modified_p.
(ira_emit): Call setup_entered_from_non_parent_p.

* ira-build.c (copy_info_to_removed_store_destinations):
Accumulate CALL_FREQ, CALL_CROSSED_NUM, and
ALLOCNO_EXCESS_PRESSURE_POINTS_NUM.
(ira_flattening): Don't CHECK MEM_OPTIMIZED_DEST[_P], always
update all accumulated attributes.

From-SVN: r142018

16 years agore PR middle-end/37790 (limits-fnargs.c takes very long time to compile at -O2)
Vladimir Makarov [Wed, 19 Nov 2008 21:20:44 +0000 (21:20 +0000)]
re PR middle-end/37790 (limits-fnargs.c takes very long time to compile at -O2)

2008-11-15  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/37790
* ira-int.h (ira_copy_allocno_live_range_list,
ira_merge_allocno_live_ranges,
ira_allocno_live_ranges_intersect_p,
ira_finish_allocno_live_range_list): New prototypes.
(ira_allocno_live_ranges_intersect_p,
ira_pseudo_live_ranges_intersect_p): Remove.

* ira-conflicts.c (ira_allocno_live_ranges_intersect_p,
ira_pseudo_live_ranges_intersect_p): Rename to
allocnos_have_intersected_live_ranges_p and
pseudos_have_intersected_live_ranges_p.  Move them from here to
...

* ira-color.c: ... here
(coalesced_allocno_conflict_p): Use
allocnos_have_intersected_live_ranges_p.
(coalesced_allocnos_living_at_program_points,
coalesced_allocnos_live_at_points_p,
set_coalesced_allocnos_live_points): Remove.
(slot_coalesced_allocnos_live_ranges,
slot_coalesced_allocno_live_ranges_intersect_p,
setup_slot_coalesced_allocno_live_ranges): New.
(coalesce_spill_slots): Use ranges of coalesced allocnos.
(ira_sort_regnos_for_alter_reg): Use
allocnos_have_intersected_live_ranges_p.
(ira_reuse_stack_slot): Use
pseudos_have_intersected_live_ranges_p.

* global.c (pseudo_for_reload_consideration_p): Check
flag_ira_share_spill_slots too.

* ira-build.c (copy_allocno_live_range_list): Rename to
ira_copy_allocno_live_range_list.  Make it external.
(merge_ranges): Rename to ira_merge_allocno_live_ranges.  Make it
external.
(ira_allocno_live_ranges_intersect_p): New.
(ira_finish_allocno_live_range_list): New.
(finish_allocno): Use it.
(remove_unnecessary_allocnos): Use ira_merge_allocno_live_ranges.
(copy_info_to_removed_store_destinations): Ditto.  Use
ira_copy_allocno_live_range_list.
(ira_flattening): Use ira_merge_allocno_live_ranges.

* ira.c (too_high_register_pressure_p): New function.
(ira): Switch off sharing spill slots if the pressure is too high.

From-SVN: r142017

16 years agore PR c++/37563 (Trouble calling qualified member function)
Jason Merrill [Wed, 19 Nov 2008 19:36:38 +0000 (14:36 -0500)]
re PR c++/37563 (Trouble calling qualified member function)

        PR c++/37563
        * parser.c (cp_parser_pseudo_destructor_name): A pseudo-destructor
        name is not a declaration.

From-SVN: r142015

16 years agore PR c++/37256 (extern template / explicit instantiation broken in 4.4.0-pre)
Jason Merrill [Wed, 19 Nov 2008 19:27:29 +0000 (14:27 -0500)]
re PR c++/37256 (extern template / explicit instantiation broken in 4.4.0-pre)

        PR c++/37256
        * pt.c (instantiate_decl): Don't require a definition of
        a template that is explicitly instantiated 'extern'.

From-SVN: r142014

16 years agoinclude/
Bob Wilson [Wed, 19 Nov 2008 18:26:00 +0000 (18:26 +0000)]
include/
* xtensa-config.h (XCHAL_HAVE_MUL16, XCHAL_HAVE_MUL32, XCHAL_HAVE_DIV32)
(XCHAL_HAVE_MINMAX, XCHAL_HAVE_SEXT, XCHAL_HAVE_THREADPTR)
(XCHAL_HAVE_RELEASE_SYNC, XCHAL_HAVE_S32C1I): Change to 1.
(XCHAL_NUM_AREGS): Change to 32.
(XCHAL_ICACHE_SIZE, XCHAL_DCACHE_SIZE): Change to 16K.
(XCHAL_ICACHE_LINESIZE, XCHAL_DCACHE_LINESIZE): Change to 32.
(XCHAL_ICACHE_LINEWIDTH, XCHAL_DCACHE_LINEWIDTH): Change to 5.
(XCHAL_DCACHE_IS_WRITEBACK): Change to 1.
(XCHAL_DEBUGLEVEL): Change to 6.

From-SVN: r142012

16 years agotree.c (build2_stat): Allow non-POINTER_PLUS_EXPRs with non-sizetype offsets if...
Richard Guenther [Wed, 19 Nov 2008 17:38:15 +0000 (17:38 +0000)]
tree.c (build2_stat): Allow non-POINTER_PLUS_EXPRs with non-sizetype offsets if...

2008-11-19  Richard Guenther  <rguenther@suse.de>

* tree.c (build2_stat): Allow non-POINTER_PLUS_EXPRs with
non-sizetype offsets if their precision matches that of
the pointer.
* expr.c (expand_expr_real_1): Always sign-extend the offset
operand of a POINTER_PLUS_EXPR.

From-SVN: r142009

16 years agoconfig.gcc: Unobsolete mips-sgi-irix[56]*.
Rainer Orth [Wed, 19 Nov 2008 17:03:51 +0000 (17:03 +0000)]
config.gcc: Unobsolete mips-sgi-irix[56]*.

* config.gcc: Unobsolete mips-sgi-irix[56]*.
(mips-sgi-irix[56]*): No need to use fixproto.

From-SVN: r142008

16 years agolb1sf68.asm: Add GNU-stack annotation to avoid executable stack.
Maxim Kuvyrkov [Wed, 19 Nov 2008 16:52:16 +0000 (16:52 +0000)]
lb1sf68.asm: Add GNU-stack annotation to avoid executable stack.

* config/m68k/lb1sf68.asm: Add GNU-stack annotation to avoid
executable stack.

Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r142007

16 years agom68k.c (sched_attr_op_type): Handle all CONSTs.
Maxim Kuvyrkov [Wed, 19 Nov 2008 16:24:10 +0000 (16:24 +0000)]
m68k.c (sched_attr_op_type): Handle all CONSTs.

* config/m68k/m68k.c (sched_attr_op_type): Handle all CONSTs.

* gcc.target/m68k/xgot-1.c (dg-options): Add -O2.

From-SVN: r142005

16 years agore PR tree-optimization/38156 (gcc.dg/tree-ssa/update-unswitch-1.c fails when compile...
Razya Ladelsky [Wed, 19 Nov 2008 16:08:01 +0000 (16:08 +0000)]
re PR tree-optimization/38156 (gcc.dg/tree-ssa/update-unswitch-1.c fails when compiled with -ftree-parallelize-loops=4)

2008-11-19  Razya Ladelsky  <razya@il.ibm.com>

        PR target/38156
        * tree-parloops.c (loop_parallel_p): NULL vect_dump.
        (separate_decls_in_region): Create shared struct even when there
        are only reductions.

From-SVN: r142004

16 years ago*config/picochip/picochip.c (headers): Removed an unnecessary header.
Hariharan Sandanagobalane [Wed, 19 Nov 2008 14:12:03 +0000 (14:12 +0000)]
*config/picochip/picochip.c (headers): Removed an unnecessary header.

From-SVN: r142002

16 years agore PR tree-optimization/36038 (miscompiled loop in perlbmk for -Os)
Jakub Jelinek [Wed, 19 Nov 2008 13:03:43 +0000 (14:03 +0100)]
re PR tree-optimization/36038 (miscompiled loop in perlbmk for -Os)

PR tree-optimization/36038
* gcc.c-torture/compile/pr36038.c: Moved to...
* gcc.c-torture/execute/pr36038.c: ... here.

From-SVN: r142000

16 years agore PR target/36133 (GCC creates suboptimal ASM : Code includes unneeded TST instructions)
Andrew Stubbs [Wed, 19 Nov 2008 11:23:28 +0000 (11:23 +0000)]
re PR target/36133 (GCC creates suboptimal ASM : Code includes unneeded TST instructions)

2008-11-19  Andrew Stubbs  <ams@codesourcery.com>

gcc/
PR target/36133
* config/m68k/m68k.h (CC_OVERFLOW_UNUSABLE, CC_NO_CARRY): New defines.
* config/m68k/m68k.c (notice_update_cc): Set cc_status properly for
shift instructions.
* config/m68k/m68k.md: Adjust all conditional branches that use the
carry and overflow flags so they understand CC_OVERFLOW_UNUSABLE.

gcc/testsuite/
PR target/36133
* gcc.target/m68k/pr36133.c: New test.

From-SVN: r141999

16 years agowo_prof_global_var.c: Use uninitialized integer values instead of uninitialized FP...
Maxim Kuvyrkov [Wed, 19 Nov 2008 11:12:07 +0000 (11:12 +0000)]
wo_prof_global_var.c: Use uninitialized integer values instead of uninitialized FP values to avoid NaNs.

  * gcc.gd/struct/wo_prof_global_var.c: Use uninitialized integer
  values instead of uninitialized FP values to avoid NaNs.
  * gcc.dg/struct/wo_prof_local_var.c: Same.

From-SVN: r141998

16 years agof2003_io_1.f03: XFAIL for all SPARC targets.
Eric Botcazou [Wed, 19 Nov 2008 08:37:13 +0000 (08:37 +0000)]
f2003_io_1.f03: XFAIL for all SPARC targets.

* gfortran.dg/f2003_io_1.f03: XFAIL for all SPARC targets.
* gfortran.dg/f2003_io_4.f03: Ditto.
* gfortran.dg/f2003_io_5.f03: Ditto.
* gfortran.dg/f2003_io_6.f03: Ditto.
* gfortran.dg/f2003_io_7.f03: Ditto.

From-SVN: r141996

16 years agore PR fortran/38171 (equivalence and nested modules broken)
Paul Thomas [Wed, 19 Nov 2008 03:41:57 +0000 (03:41 +0000)]
re PR fortran/38171 (equivalence and nested modules broken)

2008-11-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/38171
* ChangeLog: Correct PR number.

From-SVN: r141991

16 years agore PR fortran/38119 (character ICE in gfc_trans_create_temp_array)
Paul Thomas [Wed, 19 Nov 2008 03:25:00 +0000 (03:25 +0000)]
re PR fortran/38119 (character ICE in gfc_trans_create_temp_array)

2008-11-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/38119
* module.c (load_equiv): Regression fix; check that equivalence
members come from the same module only.

2008-11-19  Paul Thomas  <pault@gcc.gnu.org>

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

From-SVN: r141990

16 years agoDaily bump.
GCC Administrator [Wed, 19 Nov 2008 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r141987

16 years agore PR tree-optimization/38051 (Miscompilation of glibc's memcmp)
Jakub Jelinek [Tue, 18 Nov 2008 23:01:35 +0000 (00:01 +0100)]
re PR tree-optimization/38051 (Miscompilation of glibc's memcmp)

PR tree-optimization/38051
* gcc.c-torture/execute/pr38051.c (buf): Remove aligned attribute.
(buf2): Removed.
(main): Only run on little endian targets with
sizeof (long) == sizeof (void *).  Use just one buffer, align the
pointers at runtime.

From-SVN: r141983

16 years agore PR fortran/38135 (RESHAPE gives wrong result)
Thomas Koenig [Tue, 18 Nov 2008 22:43:05 +0000 (22:43 +0000)]
re PR fortran/38135 (RESHAPE gives wrong result)

2008-11-18  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/38135
* m4/reshape.m4:  Correct bounds checking when PAD is present.
Treat PAD as if it were SOURCE when SOURCE is empty.
* intrinsics/reshape_generic.c:  Likewise.
* generated/reshape_c10.c Regenerated.
* generated/reshape_c16.c Regenerated.
* generated/reshape_c4.c Regenerated.
* generated/reshape_c8.c Regenerated.
* generated/reshape_i16.c Regenerated.
* generated/reshape_i4.c Regenerated.
* generated/reshape_i8.c Regenerated.
* generated/reshape_r10.c Regenerated.
* generated/reshape_r16.c Regenerated.
* generated/reshape_r4.c Regenerated.
* generated/reshape_r8.c Regenerated.

2008-11-18  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/38135
* gfortran.dg/reshape_pad_1.f90:  New test case.

From-SVN: r141982

16 years agodg-cmp-results.sh: Do not print usage if either .sum file cannot be opened...
Ben Elliston [Tue, 18 Nov 2008 22:00:42 +0000 (22:00 +0000)]
dg-cmp-results.sh: Do not print usage if either .sum file cannot be opened...

* dg-cmp-results.sh: Do not print usage if either .sum file cannot
be opened; print a more meaningful error instead.

From-SVN: r141979

16 years agore PR target/37362 (Bootstrap broken on mipsisa64r2-linux-gcc)
Uros Bizjak [Tue, 18 Nov 2008 22:00:12 +0000 (23:00 +0100)]
re PR target/37362 (Bootstrap broken on mipsisa64r2-linux-gcc)

PR target/37362
* config/mips/mips.md (move_doubleword_fpr<mode>): Check that "high"
is a register or zero operand in the correct mode before generating
mtch1 insn or a register operand in the correct mode before generating
mfch1 insn.
(mtch1<mode>): Correct operand 1 predicate to reg_or_0_operand.

testsuite/ChangeLog:

PR target/37362
* gcc.target/mips/pr37362.c: New test.

From-SVN: r141978

16 years agoconfig.gcc (mips*-sde-elf*): Handle mipsisa64r2*.
Adam Nemet [Tue, 18 Nov 2008 21:00:28 +0000 (21:00 +0000)]
config.gcc (mips*-sde-elf*): Handle mipsisa64r2*.

gcc/
* config.gcc (mips*-sde-elf*): Handle mipsisa64r2*.
(mipsisa64r2-*-elf*, mipsisa64r2el-*-elf*): Add new cases to
mipsisa*-*-elf*.  Handle mipsisa64r2*.
* config/mips/sde.h (LINK_SPEC): Handle -mips64r2.
* config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add
mips64r2.
(MULTILIB_EXCLUSIONS): Add mips64r2/mfp64.
* config/mips/t-sde (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add
mips64r2.
(MULTILIB_EXCLUSIONS): Add mips64r2/mfp64.  Add mips64r2/mips16.
Fix mips16 if mips64 or mips64r2 are multilib defaults.
* config/mips/t-sdemtk (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add
mips64r2.

libgcc/
* config.host (mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*): New
case.

From-SVN: r141976

16 years ago* cpplib.pot: Regenerate.
Joseph Myers [Tue, 18 Nov 2008 20:07:59 +0000 (20:07 +0000)]
* cpplib.pot: Regenerate.

From-SVN: r141974

16 years ago* gcc.pot: Regenerate.
Joseph Myers [Tue, 18 Nov 2008 20:07:00 +0000 (20:07 +0000)]
* gcc.pot: Regenerate.

From-SVN: r141973

16 years ago* ru.po: Update.
Joseph Myers [Tue, 18 Nov 2008 18:18:22 +0000 (18:18 +0000)]
* ru.po: Update.

From-SVN: r141971

16 years agore PR c++/37962 (ICE with (auto*) casts)
Jason Merrill [Tue, 18 Nov 2008 18:11:32 +0000 (13:11 -0500)]
re PR c++/37962 (ICE with (auto*) casts)

        PR c++/37962
cp/
        * parser.c (cp_parser_type_id): Complain about auto.
        * decl.c (grokdeclarator): Complain about parameters and
        conversion functions declared with auto.
        * call.c (standard_conversion): Use CLASS_TYPE_P instead of
        MAYBE_CLASS_TYPE_P.
        * cp-tree.h (TYPE_NON_AGGREGATE_CLASS): Likewise.
testsuite/
        * g++.dg/cpp0x/auto[38].C: Adjust expected errors.
        * g++.dg/cpp0x/auto9.C: New test.
        * g++.dg/cpp0x/auto10.C: New test.

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

16 years agocinttypes: Remove redundant pragma system_header.
Paolo Carlini [Tue, 18 Nov 2008 17:27:10 +0000 (17:27 +0000)]
cinttypes: Remove redundant pragma system_header.

2008-11-18  Paolo Carlini  <paolo.carlini@oracle.com>

* include/tr1_impl/cinttypes: Remove redundant pragma system_header.
* include/tr1_impl/cfenv: Likewise.
* include/tr1_impl/cstdint: Likewise.

From-SVN: r141968

16 years agore PR target/38130 (__builtin_alloca (vs IRA?) testsuite failures on mingw32)
Jakub Jelinek [Tue, 18 Nov 2008 12:33:38 +0000 (13:33 +0100)]
re PR target/38130 (__builtin_alloca (vs IRA?)  testsuite failures on  mingw32)

PR target/38130
* config/i386/i386.md (allocate_stack_worker_32,
allocate_stack_worker_64): Don't use match_dup between input and
output operand.
(allocate_stack): Adjust gen_stack_worker_{32,64} caller.
* config/i386/i386.c (ix86_expand_prologue): Likewise.

From-SVN: r141965

16 years agore PR ada/38127 (ACATS cd1c04e fails on sparc, hppa)
Eric Botcazou [Tue, 18 Nov 2008 12:10:18 +0000 (12:10 +0000)]
re PR ada/38127 (ACATS cd1c04e fails on sparc, hppa)

PR ada/38127
* gcc-interface/decl.c (make_type_from_size) <INTEGER_TYPE>: Propagate
the name.

From-SVN: r141964

16 years agot-cygming (SHLIB_LINK): Make sure that $(SHLIB_MAP).def is forced when trying to...
Kai Tietz [Tue, 18 Nov 2008 11:03:01 +0000 (11:03 +0000)]
t-cygming (SHLIB_LINK): Make sure that $(SHLIB_MAP).def is forced when trying to do a symbol link for it.

2008-11-18  Kai Tietz  <kai.tietz@onevision.com>

        * config/i386/t-cygming (SHLIB_LINK): Make sure that $(SHLIB_MAP).def
        is forced when trying to do a symbol link for it.

From-SVN: r141963

16 years agoexpmed.c (extract_bit_field_1): Also use a temporary and convert_extracted_bit_field...
Adam Nemet [Tue, 18 Nov 2008 02:08:24 +0000 (02:08 +0000)]
expmed.c (extract_bit_field_1): Also use a temporary and convert_extracted_bit_field when...

* expmed.c (extract_bit_field_1): Also use a temporary and
convert_extracted_bit_field when the conversion from ext_mode to
the target mode requires explicit truncation.

testsuite/
* gcc.c-torture/execute/20081117-1.c: New test.

From-SVN: r141960

16 years agoDaily bump.
GCC Administrator [Tue, 18 Nov 2008 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r141958

16 years agomips.h (REG_ALLOC_ORDER): Put accumulators first.
Richard Sandiford [Mon, 17 Nov 2008 22:59:54 +0000 (22:59 +0000)]
mips.h (REG_ALLOC_ORDER): Put accumulators first.

gcc/
* config/mips/mips.h (REG_ALLOC_ORDER): Put accumulators first.
Tweak formatting.
* config/mips/mips.c (mips_ira_cover_classes): Don't use accumulator
registers when not optimizing.

gcc/testsuite/
* gcc.target/mips/dspr2-MULT.c: Just check for $ac1 and $ac2.
* gcc.target/mips/dspr2-MULTU.c: Likewise.

From-SVN: r141955

16 years agomips.md (*mul_acc_si): Remove middle alternative and its associated define_split.
Richard Sandiford [Mon, 17 Nov 2008 22:49:05 +0000 (22:49 +0000)]
mips.md (*mul_acc_si): Remove middle alternative and its associated define_split.

gcc/
* config/mips/mips.md (*mul_acc_si): Remove middle alternative
and its associated define_split.  Expose the all-d alternative
to the register allocator, but mark it with "?".  Mark the first
alternative with "*?*?".
(*mul_sub_si): Likewise.
(*mul_acc_si_r3900): New pattern.

gcc/testsuite/
* gcc.target/mips/madd-5.c: New test.
* gcc.target/mips/madd-6.c: Likewise.
* gcc.target/mips/madd-7.c: Likewise.
* gcc.target/mips/madd-8.c: Likewise.
* gcc.target/mips/msub-5.c: Likewise.
* gcc.target/mips/msub-6.c: Likewise.
* gcc.target/mips/msub-7.c: Likewise.
* gcc.target/mips/msub-8.c: Likewise.

From-SVN: r141954

16 years agono-smartmips-ror-1.c: Use -march=mips32 instead of -march=mips32r2.
Richard Sandiford [Mon, 17 Nov 2008 22:23:04 +0000 (22:23 +0000)]
no-smartmips-ror-1.c: Use -march=mips32 instead of -march=mips32r2.

gcc/testsuite/
* gcc.target/mips/no-smartmips-ror-1.c: Use -march=mips32 instead
of -march=mips32r2.

From-SVN: r141953

16 years agodefault_format_denormal_1.f90: Don't XFAIL darwin10 or later.
Jack Howarth [Mon, 17 Nov 2008 21:02:28 +0000 (21:02 +0000)]
default_format_denormal_1.f90: Don't XFAIL darwin10 or later.

2008-11-17  Jack Howarth  <howarth@bromo.med.uc.edu>

* gfortran.dg/default_format_denormal_1.f90: Don't XFAIL darwin10
or later.

From-SVN: r141950

16 years agore PR middle-end/38140 (ice for C code with -O2)
Jakub Jelinek [Mon, 17 Nov 2008 20:58:52 +0000 (21:58 +0100)]
re PR middle-end/38140 (ice for C code with -O2)

PR middle-end/38140
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If
propagating x = &a into *x = b, add a cast if not useless
type conversion or don't optimize if another stmt would be
needed.

* gcc.dg/pr38140.c: New test.

From-SVN: r141949

16 years agore PR testsuite/38099 (tmpdir-gcc.dg-struct-layout-1/t027 c_compat_x_tst.o-c_compat_y...
Jack Howarth [Mon, 17 Nov 2008 19:39:54 +0000 (19:39 +0000)]
re PR testsuite/38099 (tmpdir-gcc.dg-struct-layout-1/t027 c_compat_x_tst.o-c_compat_y_tst.o execute failure)

2008-11-14  Jack Howarth  <howarth@bromo.med.uc.edu>

        PR testsuite/38099
* gcc.dg/compat/struct-layout-1_generate.c: Also use -no-mmx on
i?86/x86_64 darwin.
* g++.dg/compat/struct-layout-1_generate.c: Same.

From-SVN: r141948

16 years agore PR middle-end/37908 (atomic NAND op generate wrong code; __sync_nand_and_fetch...
Uros Bizjak [Mon, 17 Nov 2008 11:19:06 +0000 (12:19 +0100)]
re PR middle-end/37908 (atomic NAND op generate wrong code; __sync_nand_and_fetch, __sync_fetch_and_nand)

PR middle-end/37908
* optabs.c (expand_sync_operation): Properly handle NAND case
by calculating ~(t1 & val) instead of (~t1 & val).
* builtins.c (expand_builtin_sync_operation): Warn for changed
semantics in NAND builtins.
* c.opt (Wsync-nand): New warning option.  Describe -Wsync-nand.

* doc/invoke.texi (Warning options): Add Wsync-nand.
* doc/extend.texi (Atomic Builtins) [__sync_fetch_and_nand]: Correct
__sync_fetch_and_nand builtin operation in the example.  Add a note
about changed semantics in GCC 4.4.
[__sync_nand_and_fetch]: Correct __sync_nand_and_fetch builtin
operation in the example.  Add a note about changed semantics in
GCC 4.4.

testsuite/ChangeLog:

PR middle-end/37908
* gcc.dg/pr37908.c: New test.
* gcc.dg/ia64-sync-1.c: Correct __sync_fetch_and_nand and
__sync_nand_and_fetch results.  Add dg-message to look for the warning
about changed semantics of NAND builtin.
(init_si, init_di): Change init value for __sync_fetch_and_nand to -1.
(test_si, test_di): Change expected result of
__sync_nand_and_fetch to ~7.
* gcc.dg/ia64-sync-2.c: Correct __sync_fetch_and_nand and
__sync_nand_and_fetch results.  Add dg-message to look for the warning
about changed semantics of NAND builtin.
(init_noret_si, init_noret_di): Change init value for
__sync_fetch_and_nand to -1.
(init_noret_si, init_noret_di): Change expected result of
__sync_nand_and_fetch to ~7.
* gcc.dg/sync-2.c: Correct __sync_fetch_and_nand and
__sync_nand_and_fetch results.  Add dg-message to look for the warning
about changed semantics of NAND builtin.
(init_qi, init_qi): Change init value for __sync_fetch_and_nand to -1.
(init_hi, init_hi): Change expected result of
__sync_nand_and_fetch to ~7.
* gcc.dg/sync-3.c: Copy from sync-2.c instead of including
the c source file.
* gcc.c-torture/compile/sync-1.c: Add dg-message to look for the
warning about changed semantics of NAND builtin.
* gcc.c-torture/compile/sync-2.c: Ditto.
* gcc.c-torture/compile/sync-3.c: Ditto.

From-SVN: r141942

16 years agore PR c++/36089 (Funny rejects valid with constant integral expression)
Jakub Jelinek [Mon, 17 Nov 2008 07:55:52 +0000 (08:55 +0100)]
re PR c++/36089 (Funny rejects valid with constant integral expression)

PR c++/36089
* init.c (constant_value_1): Handle TREE_LIST init.

* g++.dg/template/init8.C: New test.

From-SVN: r141941

16 years agoDaily bump.
GCC Administrator [Mon, 17 Nov 2008 00:16:53 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r141934

16 years agore PR fortran/35681 (wrong result for vector subscripted array expression in MVBITS)
Mikael Morin [Sun, 16 Nov 2008 22:45:10 +0000 (23:45 +0100)]
re PR fortran/35681 (wrong result for vector subscripted array expression in MVBITS)

2008-11-16  Mikael Morin <mikael.morin@tele2.fr>

PR fortran/35681
* dependency.c (gfc_check_argument_var_dependency): Add
elemental check flag. Issue a warning if we find a dependency
but don't generate a temporary. Add the case of an elemental
function call as actual argument to an elemental procedure.
Add the case of an operator expression as actual argument
to an elemental procedure.
(gfc_check_argument_dependency): Add elemental check flag.
Update calls to gfc_check_argument_var_dependency.
(gfc_check_fncall_dependency): Add elemental check flag.
Update call to gfc_check_argument_dependency.
* trans-stmt.c (gfc_trans_call): Make call to
gfc_conv_elemental_dependency unconditional, but with a flag
whether we should check dependencies between variables.
(gfc_conv_elemental_dependency): Add elemental check flag.
Update call to gfc_check_fncall_dependency.
* trans-expr.c (gfc_trans_arrayfunc_assign): Update call to
gfc_check_fncall_dependency.
* resolve.c (find_noncopying_intrinsics): Update call to
gfc_check_fncall_dependency.
* dependency.h (enum gfc_dep_check): New enum.
(gfc_check_fncall_dependency): Update prototype.

2008-11-16  Mikael Morin <mikael.morin@tele2.fr>

PR fortran/35681
* gfortran.dg/elemental_dependency_1.f90: New test.

From-SVN: r141931

16 years agocgraph.c (cgraph_function_body_availability): Fix test of externally visible.
Jan Hubicka [Sun, 16 Nov 2008 22:31:58 +0000 (23:31 +0100)]
cgraph.c (cgraph_function_body_availability): Fix test of externally visible.

* cgraph.c (cgraph_function_body_availability): Fix test of externally
visible.

From-SVN: r141930

16 years agomips.h (MIPS_ISA_LEVEL_SPEC): Map -march=r1[0246]000 to -mips4.
Joshua Kinard [Sun, 16 Nov 2008 21:00:12 +0000 (21:00 +0000)]
mips.h (MIPS_ISA_LEVEL_SPEC): Map -march=r1[0246]000 to -mips4.

gcc/
2008-11-16  Joshua Kinard  <kumba@gentoo.org>

* config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Map -march=r1[0246]000
to -mips4.

From-SVN: r141928

16 years agore PR fortran/37992 (ICE while resolving charlen for rejected statements)
Mikael Morin [Sun, 16 Nov 2008 20:44:33 +0000 (21:44 +0100)]
re PR fortran/37992 (ICE while resolving charlen for rejected statements)

2008-11-16  Mikael Morin  <mikael.morin@tele2.fr>

PR fortran/37992
* gfortran.h (gfc_namespace): Added member old_cl_list,
backup of cl_list.
(gfc_free_charlen): Added prototype.
* symbol.c (gfc_free_charlen): New function.
(gfc_free_namespace): Use gfc_free_charlen.
* parse.c (next_statement): Backup gfc_current_ns->cl_list.
(reject_statement): Restore gfc_current_ns->cl_list.
Free cl_list's elements before dropping them.

2008-11-16  Mikael Morin  <mikael.morin@tele2.fr>

PR fortran/37992
* gfotran.dg/charlen_free_1.f90: New test.

From-SVN: r141927

16 years agore PR target/38052 (genautomata segfaults when -O2 is enabled)
Richard Sandiford [Sun, 16 Nov 2008 20:31:13 +0000 (20:31 +0000)]
re PR target/38052 (genautomata segfaults when -O2 is enabled)

gcc/
PR target/38052
* config/mips/mips.c (mips_cfun_call_saved_reg_p)
(mips_cfun_might_clobber_call_saved_reg_p): New functions,
split out from...
(mips_save_reg_p): ...here.  Always consult TARGET_CALL_SAVED_GP
rather than call_really_used_regs when handling $gp.

From-SVN: r141926

16 years agore PR target/38052 (genautomata segfaults when -O2 is enabled)
Richard Sandiford [Sun, 16 Nov 2008 20:25:40 +0000 (20:25 +0000)]
re PR target/38052 (genautomata segfaults when -O2 is enabled)

gcc/
PR target/38052
* config/mips/mips.c (machine_function): Update the comment
above global_pointer.
(mips_global_pointer): Use INVALID_REGNUM rather than 0 to indicate
that a function doesn't need a global pointer.
(mips_current_loadgp_style): Update accordingly.
(mips_restore_gp): Likewise.
(mips_output_cplocal): Likewise.
(mips_expand_prologue): Likewise.

From-SVN: r141925

16 years agosparc.c (function_arg_vector_value): Remove 'base_mode' parameter.
Eric Botcazou [Sun, 16 Nov 2008 17:05:34 +0000 (17:05 +0000)]
sparc.c (function_arg_vector_value): Remove 'base_mode' parameter.

* config/sparc/sparc.c (function_arg_vector_value): Remove 'base_mode'
parameter.  Use DImode for computing the number of registers.
(function_arg): Adjust for above change.
(function_value): Likewise.

From-SVN: r141921

16 years agore PR libfortran/38097 (I/O with blanks in exponent fails; blank="NULL", BN edit...
Jerry DeLisle [Sun, 16 Nov 2008 16:18:36 +0000 (16:18 +0000)]
re PR libfortran/38097 (I/O with blanks in exponent fails; blank="NULL", BN edit descriptor)

2008-11-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/38097
* gfortran.dg/fmt_bz_bn.f: New test.

From-SVN: r141920

16 years agore PR libfortran/38097 (I/O with blanks in exponent fails; blank="NULL", BN edit...
Jerry DeLisle [Sun, 16 Nov 2008 16:12:16 +0000 (16:12 +0000)]
re PR libfortran/38097 (I/O with blanks in exponent fails; blank="NULL", BN edit descriptor)

2008-11-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/38097
* io/read.c (read_f): Initialize exponent. Fix comment. Set loop
conditions for BZ/BN.
* io/unit.c (get_internal_unit): Initialize flags.blank.
* io/transfer.c (data_transfer_init): Fix whitespace.

From-SVN: r141919

16 years ago* gnat.dg/boolean_bitfield.adb: New test.
Eric Botcazou [Sun, 16 Nov 2008 15:16:34 +0000 (15:16 +0000)]
* gnat.dg/boolean_bitfield.adb: New test.

From-SVN: r141918

16 years agore PR fortran/38095 (character ICE)
Tobias Burnus [Sun, 16 Nov 2008 14:19:38 +0000 (15:19 +0100)]
re PR fortran/38095 (character ICE)

2008-11-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38095
        * trans-expr.c (gfc_map_intrinsic_function): Fix pointer access.

2008-11-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38095
        * gfortran.dg/char_length_13.f90: New test.

From-SVN: r141917

16 years agopr36246.c: Add -fomit-frame-pointer to dg-options.
Uros Bizjak [Sun, 16 Nov 2008 14:14:44 +0000 (15:14 +0100)]
pr36246.c: Add -fomit-frame-pointer to dg-options.

* gcc.target/i386/pr36246.c: Add -fomit-frame-pointer to dg-options.
* gcc.target/i386/pr32661-1.c: Ditto.
* gcc.target/i386/pr34256.c: Ditto.
* gcc.target/i386/pr22076.c: Ditto. Check for "movl" instruction on
nonpic targets only.

From-SVN: r141916

16 years agore PR fortran/38119 (character ICE in gfc_trans_create_temp_array)
Paul Thomas [Sun, 16 Nov 2008 12:11:53 +0000 (12:11 +0000)]
re PR fortran/38119 (character ICE in gfc_trans_create_temp_array)

2008-11-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/38119
* trans-array.c (gfc_trans_create_temp_array): Set the
loop->from to zero and the renormalisation of loop->to for all
dimensions.

2008-11-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/38119
* gfortran.dg/array_temporaries_3.f90: New test.

From-SVN: r141915

16 years agore PR fortran/37926 (Program gives wrong output (connected to char len))
Paul Thomas [Sun, 16 Nov 2008 12:00:44 +0000 (12:00 +0000)]
re PR fortran/37926 (Program gives wrong output (connected to char len))

2008-11-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/37926
* trans-expr.c (gfc_free_interface_mapping): Null sym->formal
(gfc_add_interface_mapping): Copy the pointer to the formal
arglist, rather than using copy_formal_args.

From-SVN: r141914

16 years agore PR ada/38127 (ACATS cd1c04e fails on sparc, hppa)
Eric Botcazou [Sun, 16 Nov 2008 10:05:22 +0000 (10:05 +0000)]
re PR ada/38127 (ACATS cd1c04e fails on sparc, hppa)

PR ada/38127
* gcc-interface/decl.c (make_type_from_size): Do not special-case
boolean types.
* gcc-interface/targtyps.c: Tweak comment.

From-SVN: r141913

16 years agore PR tree-optimization/37950 (failure in polyhedron benchmark when ftree-parallelize...
Zdenek Dvorak [Sun, 16 Nov 2008 04:48:25 +0000 (05:48 +0100)]
re PR tree-optimization/37950 (failure in polyhedron benchmark when ftree-parallelize-loops is enabled)

PR tree-optimization/37950
* tree-flow-inline.h (memory_partition): Return NULL when aliases were
not computed for the current function.

From-SVN: r141911