Nicola Pero [Mon, 29 Nov 2010 20:45:49 +0000 (20:45 +0000)]
In gcc/objc/: 2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (start_class): When a class is reimplemented,
generate an error and avoid adding the class to the list of
implemented classes again, but do not return error_mark_node.
In gcc/testsuite/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/duplicate-class-1.m: New.
* obj-c++.dg/duplicate-class-1.mm: New.
From-SVN: r167270
Nicola Pero [Mon, 29 Nov 2010 20:43:35 +0000 (20:43 +0000)]
In gcc/objc/: 2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_maybe_build_component_ref): Removed TODO.
In gcc/testsuite/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/property/dotsyntax-21.m
* obj-c++.dg/property/dotsyntax-21.mm
From-SVN: r167269
Alexandre Oliva [Mon, 29 Nov 2010 19:18:24 +0000 (19:18 +0000)]
re PR debug/46338 (-fcompare-debug failure (length) with -O -fprofile-generate)
PR debug/46338
* g++.dg/debug/pr46338.C: New.
From-SVN: r167263
Kai Tietz [Mon, 29 Nov 2010 17:52:24 +0000 (17:52 +0000)]
configure: Regenerated.
2010-11-29 Kai Tietz <kai.tietz@onevision.com>
* configure: Regenerated.
* Makefile.in: Regenerated.
* configure.ac (ACX_NONCANONICAL_TARGET): Call it.
(target_alias): Use AC_SUBST for it.
(GCC_NO_EXECUTABLES): Call it.
(AC_PROG_CC): Improve multilib handling.
Check that gcc is used for compilation.
Use pattern from libssp for symbol versioning checking.
* Makefile.am (LTLDFLAGS): Removed.
(libquadmath_la_LDFLAGS): Add -no-undefined.
(libquadmath_la_LINK): Commented out.
(libquadmath_la_DEPENDENCIES): Add libquadmath_la_LIBADD.
(AM_MAKEFLAGS): Add hack for argument passing by top-level.
(MAKEOVERRIDES): New.
* aclocal.m4: Regenerated.
From-SVN: r167259
Uros Bizjak [Mon, 29 Nov 2010 17:08:16 +0000 (18:08 +0100)]
[multiple changes]
2010-11-29 Zdenek Dvorak <rakdver@kam.uniff.cz>
PR tree-optimization/46675
* tree-ssa-loop-niter.c (split_to_var_and_offset): Avoid overflow
in offset calculation.
testsuite/ChangeLog:
2010-11-29 Richard Guenther <rguenther@suse.de>
Zdenek Dvorak <rakdver@kam.uniff.cz>
PR tree-optimization/46675
* gcc.dg/pr46675.c: New test.
From-SVN: r167256
Jan Hubicka [Mon, 29 Nov 2010 16:58:59 +0000 (17:58 +0100)]
* collect2.c (main): Do not imply verbose output with LTO and linker plugin.
From-SVN: r167255
Iain Sandoe [Mon, 29 Nov 2010 16:52:41 +0000 (16:52 +0000)]
strings-1.m: Move to...
gcc/testsuite:
* gcc/testsuite/objc.dg/strings-1.m: Move to...
* gcc/testsuite/objc.dg/strings/strings-1.m: ... here. Update paths.
* gcc/testsuite/objc.dg/strings-2.m: Move to ...
* gcc/testsuite/objc.dg/strings/strings-2.m ... here, provide a
constructor and class reference for NeXT runtime. Update paths.
* gcc/testsuite/obj-c++.dg/strings-1.m: Move to...
* gcc/testsuite/obj-c++.dg/strings/strings-1.m: ... here. Update paths.
* gcc/testsuite/obj-c++.dg/strings-2.m: Move to ...
* gcc/testsuite/obj-c__.dg/strings/strings-2.m ... here, provide a
constructor and class reference for NeXT runtime. Update paths.
From-SVN: r167253
Richard Henderson [Mon, 29 Nov 2010 16:43:24 +0000 (08:43 -0800)]
sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r167251
Dodji Seketeli [Mon, 29 Nov 2010 16:31:40 +0000 (16:31 +0000)]
Fix PR c++/42260 and ensure PR c++/45383 is fixed
gcc/cp/
c++/42260
* call.c (add_builtin_candidate): At this point the resulting type
of an indirection operator should be complete.
gcc/testsuite/
c++/42260
c++/45383
* g++.dg/conversion/cast2.C: New test.
* g++.dg/conversion/cond4/C: Likewise. Ensures we don't regress on
PR c++/45383
From-SVN: r167250
Dodji Seketeli [Mon, 29 Nov 2010 16:30:54 +0000 (16:30 +0000)]
re PR c++/45383 (Implicit conversion to pointer does no longer automatically generate operator== and operator!=.)
Fix PR c++/45383
Reverting the fix for PR c++/42260 fixes c++/45383.
This reverts commit r155415.
gcc/cp/
Reverted patch for PR c++/42260
* cp-tree.h (lookup_conversions): Reverted "Add new bool parameter to
declarationE."
* search.c (lookup_conversion): Reverted "Use new bool parameter in
definition".
* call.c (add_builtin_candidates): Reverted "Don't lookup template
conversion"
(convert_class_to_reference, build_user_type_conversion_1,
build_op_call): Reverted "Adjust".
* cvt.c (build_expr_type_conversion): Reverted "Likewise".
gcc/testsuite/
Reverted patch for PR c++/42260
* conversion/cast2.C: Reverted New test.
From-SVN: r167248
Dodji Seketeli [Mon, 29 Nov 2010 16:29:41 +0000 (16:29 +0000)]
Add addresses of DIEs to debug_dwarf_die
gcc/
* dwarf2out.c (print_die): Print the address of the current DIE or
of any DIE referenced by the current one.
From-SVN: r167247
Dodji Seketeli [Mon, 29 Nov 2010 16:29:05 +0000 (16:29 +0000)]
re PR debug/46101 (ICE: in build_abbrev_table, at dwarf2out.c:10333 with -feliminate-dwarf2-dups -g)
Fix PR debug/46101
gcc/
* dwarf2out.c (lookup_type_die_strip_naming_typedef): New
function.
(scope_die_for, gen_type_die_for_member): Replace uses of
lookup_type_die with use of lookup_type_die_strip_naming_typedef.
gcc/testsuite/
* g++.dg/debug/dwarf2/typedef5.C: New test
From-SVN: r167246
Iain Sandoe [Mon, 29 Nov 2010 15:49:41 +0000 (15:49 +0000)]
correct typographical errors.
gcc:
* config/darwin.c (darwin_mergeable_string_section): Remove blank line.
(darwin_asm_declare_object_name): Correct spelling.
(darwin_output_aligned_bss): Likewise.
From-SVN: r167244
Iain Sandoe [Mon, 29 Nov 2010 14:58:16 +0000 (14:58 +0000)]
re PR target/26427 (with -fsection-anchors with zero sized structs)
PR target/26427
PR target/33120
PR testsuite/35710
gcc:
* config/i386/darwin.h (ASM_OUTPUT_COMMON): Remove
(ASM_OUTPUT_LOCAL): Likewise.
* config/darwin-protos.h (darwin_asm_declare_object_name): New.
(darwin_output_aligned_bss): Likewise.
(darwin_asm_output_aligned_decl_local): Likewise.
(darwin_asm_output_aligned_decl_common): Likewise.
(darwin_use_anchors_for_symbol_p): Likewise.
* config/rs6000/darwin.h (ASM_OUTPUT_COMMON): Remove.
(TARGET_ASM_OUTPUT_ANCHOR): Define.
(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Define.
(DARWIN_SECTION_ANCHORS): Set to 1.
* config/darwin.c (emit_aligned_common): New var.
(darwin_init_sections): Check that the Darwin private zero-size section
marker is in range.
(darwin_text_section): Check for zero-sized objects.
(darwin_mergeable_string_section): Likewise.
(darwin_mergeable_constant_section): Likewise.
(machopic_select_section): Adjust to check for zero-sized objects.
Assert that OBJC meta data are non-zero sized.
(darwin_asm_declare_object_name): New.
(darwin_asm_declare_constant_name): Adjust for zero-sized
object sections.
(BYTES_ZFILL): Define.
(darwin_emit_weak_or_comdat): New.
(darwin_emit_local_bss): New.
(darwin_emit_common): New.
(darwin_output_aligned_bss): New.
(darwin_asm_output_aligned_decl_common): New.
(darwin_asm_output_aligned_decl_local): New.
(darwin_file_end): Disable subsections_via_symbols when section
anchoring is active.
(darwin_asm_output_anchor): Re-enable.
(darwin_use_anchors_for_symbol_p): New.
(darwin_override_options): Check for versions that can emit
aligned common. Update usage of flags to current.
* config/darwin-sections.def: Update comments and flags for
non-anchor sections. zobj_const_section, zobj_data_section,
zobj_bss_section, zobj_const_data_section: New.
* config/darwin.h (ASM_DECLARE_OBJECT_NAME): Redefine.
(ASM_OUTPUT_ALIGN): Make whitespace output consistent.
(L2_MAX_OFILE_ALIGNMENT): Define.
(ASM_OUTPUT_ALIGNED_BSS): Define.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Define.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): Define.
(SECTION_NO_ANCHOR): Define.
(TARGET_ASM_OUTPUT_ANCHOR) Define with a default of NULL.
(DARWIN_SECTION_ANCHORS): Define with a default of 0.
boehm-gc:
* dyn_load.c (GC_register_dynamic_libraries/DARWIN): Add new writable
data section names.
(GC_dyld_name_for_hdr): Adjust layout.
(GC_dyld_image_add): Adjust layout, add new Darwin sections, adjust
debug to name the sections.
(GC_dyld_image_remove): Adjust layout, remove new Darwin sections,
adjust debug to name the sections.
(GC_register_dynamic_libraries): Adjust layout.
(GC_init_dyld): Likewise.
(GC_register_main_static_data): Likewise.
gcc/testsuite:
* gcc.target/powerpc/darwin-abi-12.c: Adjust for new allocators.
* gcc.dg/pr26427.c: Remove redundant warning for powerpc.
* gcc.dg/darwin-comm.c: Adjust for new allocators.
* gcc.dg/darwin-sections.c: New test.
* g++.dg/ext/instantiate2.C: Adjust for new allocators.
Co-Authored-By: Mike Stump <mrs@gcc.gnu.org>
From-SVN: r167242
Joseph Myers [Mon, 29 Nov 2010 14:09:41 +0000 (14:09 +0000)]
system.h: Include "safe-ctype.h" instead of <safe-ctype.h>.
* system.h: Include "safe-ctype.h" instead of <safe-ctype.h>.
Include <signal.h>, <sys/mman.h>, <sys/resource.h> and
<sys/times.h>.
(O_BINARY, SIGCHLD, MAP_FAILED, MAP_ANONYMOUS, kill):
Conditionally define.
(GET_ENVIRONMENT): Poison.
* configure.ac: Don't test for mincore.
* configure: Regenerate.
* config.in: Regenerate.
* collect2-aix.c: Don't include <sys/mman.h>.
* collect2.c: Don't include <signal.h>.
(SIGCHLD): Don't define.
(prefix_from_env): Use getenv instead of GET_ENVIRONMENT.
* config/alpha/alpha.c: Include "splay-tree.h" instead of
<splay-tree.h>.
* config/arm/arm.c (arm_target_help): Use getenv instead of
GET_ENVIRONMENT.
* config/avr/driver-avr.c: Don't include <stdlib.h>.
* config/frv/frv.c: Don't include <ctype.h>.
* config/host-darwin.c: Don't include <sys/mman.h>.
* config/host-hpux.c: Don't include <sys/mman.h> or <unistd.h>.
(MAP_FAILED): Don't define.
* config/host-linux.c: Don't include <sys/mman.h> or <limits.h>.
* config/host-solaris.c: Don't include <sys/mman.h>.
* config/i386/cygming.h: Don't include <stdio.h>.
* config/i386/driver-i386.c: Don't include <stdlib.h>.
* config/i386/host-cygwin.c: Don't include <sys/mman.h>.
* config/iq2000/iq2000.c: Don't include <signal.h>.
* config/m32c/m32c-pragma.c: Don't include <stdio.h>.
* config/m68hc11/m68hc11.c: Don't include <stdio.h>.
* config/mep/mep-pragma.c: Don't include <stdio.h>.
* config/microblaze/microblaze.c: Don't include <signal.h>.
* config/mips/mips.c: Don't include <signal.h>.
* config/rs6000/host-darwin.c: Don't include <signal.h>.
* cppdefault.c (cpp_relocated): Use getenv instead of
GET_ENVIRONMENT.
* defaults.h (GET_ENVIRONMENT): Don't define.
* et-forest.h: Don't include <ansidecl.h> or <stddef.h>.
* gcc.c: Don't include <signal.h>, <sys/mman.h> or <sys/types.h>.
(SIGCHLD, MAP_FAILED, kill): Don't define.
(process_command): Use getenv instead of GET_ENVIRONMENT.
* genhooks.c: Don't include <string.h>.
* ggc-common.c: Don't include <sys/resource.h>, <sys/mman.h> or
<sys/types.h>.
(MAP_FAILED): Don't define.
* ggc-page.c Don't include <sys/mman.h>.
(MAP_ANONYMOUS, MAP_FAILED): Don't define.
* ggc-zone.c: Don't include <sys/mman.h>.
(MAP_ANONYMOUS, MAP_FAILED): Don't define.
* graph.c: Include "config.h" instead of <config.h>.
* incpath.c (add_env_var_paths): Use getenv instead of
GET_ENVIRONMENT.
* lto-wrapper.c: Don't include <errno.h>, <signal.h> or
"libiberty.h".
(SIGCHLD, kill): Don't define.
* mips-tfile.c: Don't include <signal.h>.
* opts.c: Don't include <signal.h> or <sys/resource.h>.
(print_specific_help): Use getenv instead of GET_ENVIRONMENT.
* passes.c: Don't include <signal.h>, <sys/resource.h> or
<sys/times.h>.
* sparseset.h: Don't include <assert.h>.
* timevar.c: Don't include <sys/times.h> or <sys/resource.h>.
* tlink.c: Don't include "libiberty.h".
* toplev.c: Don't include <signal.h> or <sys/times.h>.
* tree-mudflap.c: Include "demangle.h" instead of <demangle.h>.
* tree-switch-conversion.c: Don't include <signal.h>.
* vmsdbgout.c: Don't include <errno.h> or <string.h>.
c-family:
* c-opts.c (check_deps_environment_vars): Use getenv instead of
GET_ENVIRONMENT.
* c-pch.c (O_BINARY): Don't define here.
* c-pragma.h: Include "cpplib.h" instead of <cpplib.h>.
fortran:
* gfortran.h (alloca): Don't include definitions.
(NULL): Don't define.
java:
* boehm.c: Include "config.h" instead of <config.h>.
* builtins.c: Don't include <stdarg.h>.
* class.c: Don't include "stdio.h".
(O_BINARY): Don't define here.
* jcf-depend.c: Don't include <assert.h>.
(jcf_dependency_set_dep_file, jcf_dependency_init,
jcf_dependency_write): Use gcc_assert.
* jcf-io.c (O_BINARY): Don't define here.
* jcf-path.c: Don't include "tm.h".
(jcf_path_init): Use getenv instead of GET_ENVIRONMENT.
* resource.c: Don't include "stdio.h".
(O_BINARY): Don't define here.
* verify-impl.c: Don't include <stdio.h>.
lto:
* lto-endian.h: Delete.
* lto-object.c: Don't include "libiberty.h".
(O_BINARY): Don't define.
* lto.c: Don't include "libiberty.h" or <sys/mman.h>.
(O_BINARY): Don't define.
From-SVN: r167241
Andreas Schwab [Mon, 29 Nov 2010 10:53:25 +0000 (10:53 +0000)]
configure.ac: Move comment to remove extra space in last argument of GCC_TARGET_TOOL.
* configure.ac: Move comment to remove extra space in last argument
of GCC_TARGET_TOOL.
From-SVN: r167237
Rainer Orth [Mon, 29 Nov 2010 10:18:05 +0000 (10:18 +0000)]
* setproctitle.c [HAVE_SYS_PRCTL_H]: Include <sys/types.h>.
From-SVN: r167236
Joern Rennecke [Mon, 29 Nov 2010 04:38:21 +0000 (04:38 +0000)]
re PR bootstrap/44756 ([meta-bug] --enable-werror-always issues)
PR bootstrap/44756
* cppbuiltin.c: Include target.h .
(define_builtin_macros_for_type_sizes):
Use targetm.float_words_big_endian.
From-SVN: r167234
Nicola Pero [Mon, 29 Nov 2010 03:15:40 +0000 (03:15 +0000)]
In gcc/objc/: 2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_eh_runtime_type): Avoid ICE if error_mark_node
is passed as argument.
(objc_begin_catch_clause): Added code to deal with an
error_mark_node or NULL_TREE argument. Improved checks for
invalid arguments. Added code to traverse typedefs.
In gcc/testsuite/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/exceptions-1.m: New.
* objc.dg/exceptions-2.m: New.
* objc.dg/exceptions-3.m: New.
* objc.dg/exceptions-4.m: New.
* objc.dg/exceptions-5.m: New.
* obj-c++.dg/exceptions-1.mm: New.
* obj-c++.dg/exceptions-2.mm: New.
* obj-c++.dg/exceptions-3.mm: New.
* obj-c++.dg/exceptions-4.mm: New.
* obj-c++.dg/exceptions-5.mm: New.
In gcc/cp/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* parser.c (cp_parser_objc_try_catch_finally_statement): Parse
@catch(...) and pass NULL_TREE to objc_begin_catch_clause() in
that case. Improved error recovery. Reorganized code to be
almost identical to c_parser_objc_try_catch_finally_statement.
In gcc/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* c-parser.c (c_parser_objc_try_catch_statement): Renamed to
c_parser_objc_try_catch_finally_statement for consistency with the
C++ parser. Parse @catch(...) and pass NULL_TREE to
objc_begin_catch_clause() in that case. Improved error recovery.
Reorganized code to be almost identical to
cp_parser_objc_try_catch_finally_statement.
From-SVN: r167233
Nicola Pero [Mon, 29 Nov 2010 02:40:04 +0000 (02:40 +0000)]
In gcc/testsuite/: 2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* obj-c++.dg/property/at-property-1.mm: Fixed testcase.
* obj-c++.dg/property/at-property-16.mm: Fixed testcase.
* obj-c++.dg/property/at-property-20.mm: Fixed testcase.
From-SVN: r167232
Nicola Pero [Mon, 29 Nov 2010 02:17:24 +0000 (02:17 +0000)]
In gcc/objc/: 2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-29 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_demangle): Return immediately if the string is
too short. Detect names that do not need demangling, and return
them unchanged.
From-SVN: r167231
Joern Rennecke [Mon, 29 Nov 2010 00:50:04 +0000 (00:50 +0000)]
re PR tree-optimization/46621 (gimple.h includes tm.h)
PR tree-optimization/46621
* gimple.h: Don't include tm.h or hard-reg-set.h .
* Makefile.in (GIMPLE_H): Remove $(TM_H).
From-SVN: r167230
GCC Administrator [Mon, 29 Nov 2010 00:20:09 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r167229
Janus Weil [Sun, 28 Nov 2010 20:22:29 +0000 (21:22 +0100)]
re PR fortran/46662 ([OOP] gfortran accepts "CALL polymorphic%abstract_type%ppc()")
2010-11-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/46662
* resolve.c (update_ppc_arglist): Add check for abstract passed object.
2010-11-28 Janus Weil <janus@gcc.gnu.org>
PR fortran/46662
* gfortran.dg/proc_ptr_comp_pass_7.f90: New.
From-SVN: r167225
Eric Botcazou [Sun, 28 Nov 2010 17:34:32 +0000 (17:34 +0000)]
aliasing2.adb (dg-final): Robustify pattern matching.
* gnat.dg/aliasing2.adb (dg-final): Robustify pattern matching.
* gnat.dg/pack9.adb (dg-final): Likewise.
From-SVN: r167222
Joseph Myers [Sun, 28 Nov 2010 17:32:27 +0000 (17:32 +0000)]
* sv.po: Update.
From-SVN: r167221
Paul Thomas [Sun, 28 Nov 2010 13:47:26 +0000 (13:47 +0000)]
re PR fortran/35810 ([TR 15581 / F2003] Automatic reallocation on assignment to allocatable variables)
2010-11-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35810
* trans-array.c (gfc_trans_array_constructor): If the loop->to
is a VAR_DECL, assume this is dynamic. In this case, use the
counter to obtain the value and set loop->to appropriately.
(gfc_conv_ss_descriptor): Always save the offset of a variable
in info.saved_offset.
(gfc_conv_ss_startstride): Do not attempt bound checking of the
lhs of an assignment, if allocatable and f2003 is allowed.
(gfc_conv_loop_setup): If possible, do not use an allocatable
lhs variable for the loopspec.
(gfc_is_reallocatable_lhs): New function.
(get_std_lbound): New function.
(gfc_alloc_allocatable_for_assignment): New function.
* gfortran.h : Add flag_realloc_lhs to the options structure.
* lang.opt : Add option f(no-)realloc-lhs.
* invoke.texi : Document option f(no-)realloc-lhs.
* options.c (gfc_init_options, gfc_post_options,
gfc_handle_option): Incorporate f(no-)realloc-lhs with default
to frealloc_lhs for -std > f95.
* trans-array.h : Add primitive for previous.
* trans-expr.c (gfc_conv_string_length): Return if character
length is a variable and the expression is NULL.
(gfc_conv_procedure_call): If the call is of the kind x = f(...)
and the lhs is allocatable and reallocation on assignment OK,
call gfc_alloc_allocatable_for_assignment. Do not generate the
function call unless direct by reference.
(realloc_lhs_loop_for_fcn_call): New function.
(realloc_lhs_bounds_for_intrinsic_call): New function.
(gfc_trans_arrayfunc_assign): Reallocation assignments need
a loopinfo and for the loop bounds to be set. With intrinsic
functions, free the lhs data and let the library allocate the
data array. Done by the new functions above.
(gfc_trans_assignment_1): If the lhs is allocatable and
reallocation on assignment is allowed, mark the lhs and use
gfc_alloc_allocatable_for_assignment to make the reallocation.
* trans.h : Add is_alloc_lhs bitfield to gfc_ss structure.
2010-11-28 Paul Thomas <pault@gcc.gnu.org
PR fortran/35810
* gfortran.dg/realloc_on_assign_1.f03: New test.
* gfortran.dg/realloc_on_assign_2.f03: New test.
* gfortran.dg/transpose_2.f90: dg-option -fno-realloc-lhs.
* gfortran.dg/unpack_bounds_1.f90: The same.
* gfortran.dg/cshift_bounds_2.f90: The same.
* gfortran.dg/matmul_bounds_2.f90: The same.
* gfortran.dg/matmul_bounds_3.f90: The same.
* gfortran.dg/matmul_bounds_4.f90: The same.
* gfortran.dg/matmul_bounds_5.f90: The same.
From-SVN: r167220
Paolo Carlini [Sun, 28 Nov 2010 10:22:55 +0000 (10:22 +0000)]
re PR libstdc++/46683 (FAIL: ext/profile/all.cc)
2010-11-28 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/46683
* testsuite/ext/profile/mh.cc: Move dg-require* directives to the end.
* testsuite/ext/profile/all.cc: Likewise.
From-SVN: r167219
Tobias Burnus [Sun, 28 Nov 2010 07:42:56 +0000 (08:42 +0100)]
re PR fortran/46678 (Wrong code with strings)
2010-11-27 Tobias Burnus <burnus@net-b.de>
Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/46678
trans-decl.c (gfc_trans_auto_character_variable): Use gfc_init_block
instead of gfc_start_block.
Co-Authored-By: Jerry DeLisle <jvdelisle@gcc.gnu.org>
From-SVN: r167218
Jonathan Wakely [Sun, 28 Nov 2010 01:32:57 +0000 (01:32 +0000)]
re PR libstdc++/46689 (FAIL: 20_util/shared_ptr/comparison/cmp.cc)
2010-11-28 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/46689
* testsuite/20_util/shared_ptr/comparison/cmp.cc: Remove tests for
invalid comparisons.
From-SVN: r167217
GCC Administrator [Sun, 28 Nov 2010 00:19:33 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r167216
Jerry DeLisle [Sat, 27 Nov 2010 22:12:46 +0000 (22:12 +0000)]
re PR fortran/46301 (Missing diagnosis for "len=:")
2010-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/46301
trans-expr.c (gfc_trans_assignment): Add error message for not
implemented assignment to deferred-length character variable.
From-SVN: r167212
Tobias Burnus [Sat, 27 Nov 2010 21:22:00 +0000 (22:22 +0100)]
re PR fortran/46638 (Wrong result with TRANSFER from string to DT)
2010-11-27 Tobias Burnus <burnus@net-b.de>
PR fortran/46638
PR fortran/46668
* gfortran.dg/transfer_simplify_10.f90: Fix endian issue.
From-SVN: r167209
Jan Hubicka [Sat, 27 Nov 2010 19:37:00 +0000 (20:37 +0100)]
dwarf2out.c (dwarf2out_begin_function): Set cold_text_section and output cold_text_section_label.
* dwarf2out.c (dwarf2out_begin_function): Set cold_text_section
and output cold_text_section_label.
(dwarf2out_init): Don't do that there.
(dwarf2out_finish): Handle cold section end label only if cold
section was used.
From-SVN: r167208
Eric Botcazou [Sat, 27 Nov 2010 19:07:08 +0000 (19:07 +0000)]
re PR ada/46574 (ada bootstrap fails with --enable-build-with-cxx.)
PR ada/46574
* gcc-interface/utils2.c (compare_elmt_bitpos): Fix typos.
From-SVN: r167207
Eric Botcazou [Sat, 27 Nov 2010 18:46:49 +0000 (18:46 +0000)]
re PR ada/40777 (compile error on gcc-interface/targtyps.c)
PR ada/40777
* gcc-interface/targtyps.c (get_target_double_scalar_alignment): Guard
use of TARGET_64BIT macro.
From-SVN: r167205
Eric Botcazou [Sat, 27 Nov 2010 18:34:52 +0000 (18:34 +0000)]
s-osinte-linux.ads (sigset_t): Use unsigned_char subtype directly.
* s-osinte-linux.ads (sigset_t): Use unsigned_char subtype directly.
(unsigned_long_long_t): New modular type.
(pthread_cond_t): Add alignment clause.
From-SVN: r167204
Jonathan Wakely [Sat, 27 Nov 2010 18:32:08 +0000 (18:32 +0000)]
shared_ptr_base.h (operator>, [...]): Remove comparisons not specified in the C++0x draft.
2010-11-27 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr_base.h (operator>, operator>=, operator<=):
Remove comparisons not specified in the C++0x draft.
From-SVN: r167203
Nicola Pero [Sat, 27 Nov 2010 18:17:14 +0000 (18:17 +0000)]
In gcc/cp/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/cp/:
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/46222
* decl.c (grokdeclarator): Replaced an assert (for a case that can
never happen in C++, but could happen in ObjC++ for invalid code)
with a check that prints an error message and returns
error_mark_node.
In gcc/testsuite/:
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/46222
* obj-c++.dg/property/at-property-2.mm: Uncommented testcase.
From-SVN: r167202
Eric Botcazou [Sat, 27 Nov 2010 15:53:23 +0000 (15:53 +0000)]
bootstrap-lto.mk (BOOT_ADAFLAGS): Delete.
config/
* bootstrap-lto.mk (BOOT_ADAFLAGS): Delete.
gcc/
* tree-nested.c (remap_vla_decls): Fully expand value expressions of
VLA variables.
gcc/ada/
* gnatvsn.adb (Version_String): Change type to C-like array of chars.
(Gnat_Version_String): Adjust to above change.
From-SVN: r167201
Richard Guenther [Sat, 27 Nov 2010 14:32:47 +0000 (14:32 +0000)]
gimple.c (gimple_assign_copy_p): Use gimple_assign_single_p.
2010-11-27 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_assign_copy_p): Use gimple_assign_single_p.
(gimple_assign_ssa_name_copy_p): Likewise.
(gimple_assign_unary_nop_p): Use is_gimple_assign.
(is_gimple_cast): Remove.
(gimple_assign_single_p): Move ...
* gimple.h (gimple_assign_single_p): ... here.
(is_gimple_cast): Remove.
(gimple_assign_rhs_code): Simplify.
* gimple-fold.c (gimple_fold_builtin): Use CONVERT_EXPR_P
instead of is_gimple_cast.
* ipa-type-escape.c (look_for_casts): Likewise.
From-SVN: r167200
François Dumont [Sat, 27 Nov 2010 13:09:47 +0000 (14:09 +0100)]
unordered_map (unordered_multimap<>::erase): Fix to erase all elements associated to the key.
2010-11-27 François Dumont <francois.cppdevs@free.fr>
* include/debug/unordered_map (unordered_multimap<>::erase): Fix to
erase all elements associated to the key.
* include/debug/unordered_set (unordered_multiset<>::erase): Likewise.
* testsuite/23_containers/unordered_multimap/erase/1.cc: Modify to
check for multiple erase.
* testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
From-SVN: r167199
François Dumont [Sat, 27 Nov 2010 12:51:58 +0000 (13:51 +0100)]
2010-11-27 François Dumont <francois.cppdevs@free.fr>
* include/debug/unordered_map, unordered_set (unordered_map<>::insert,
unordered_multimap<>::insert, unordered_set<>::insert,
unordered_multiset<>::insert) Debug check iterator hint and pass it to
normal implementation.
From-SVN: r167198
Nicola Pero [Sat, 27 Nov 2010 10:06:59 +0000 (10:06 +0000)]
In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
Implemented optional properties.
* objc-act.h (PROPERTY_OPTIONAL): New.
* objc-act.c (objc_add_property_declaration): Set
PROPERTY_OPTIONAL if appropriate.
(finish_class): When generating definitions of setter and getter
methods associated with a property for a protocol, mark them as
optional if the property is optional.
(maybe_make_artificial_property_decl): Added 'getter_name'
argument. Set PROPERTY_OPTIONAL.
(objc_maybe_build_component_ref): Updated calls to
maybe_make_artificial_property_decl. Added code for optional,
readonly properties.
(objc_build_class_component_ref): Updated call to
maybe_make_artificial_property_decl.
In gcc/testsuite/:
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/property/at-property-24.m: New.
* objc.dg/property/at-property-25.m: New.
* obj-c++.dg/property/at-property-24.mm: New.
* obj-c++.dg/property/at-property-25.mm: New.
From-SVN: r167197
François Dumont [Sat, 27 Nov 2010 10:04:19 +0000 (11:04 +0100)]
bitset (bitset<>::reference): Clean code, use normal reference type in experimental mode.
2010-11-27 François Dumont <francois.cppdevs@free.fr>
* include/debug/bitset (bitset<>::reference): Clean code, use normal
reference type in experimental mode.
* testsuite/23_containers/bitset/debug/invalid/1.cc: Fix for
experimental mode.
From-SVN: r167196
Nicola Pero [Sat, 27 Nov 2010 09:53:43 +0000 (09:53 +0000)]
In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_build_struct): Fixed loops that save and
restore TYPE_OBJC_INFO to iterate over all variants of the type; a
special case for the current type is then no longer required.
Duplicate TYPE_LANG_SPECIFIC for each type before restoring
TYPE_OBJC_INFO.
(objc_get_protocol_qualified_type): Updated comments.
In gcc/testsuite/:
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/protocol-qualifier-1.m: New.
* objc.dg/protocol-qualifier-2.m: New.
* obj-c++.dg/protocol-qualifier-1.mm: New.
* obj-c++.dg/protocol-qualifier-2.mm: New.
From-SVN: r167195
GCC Administrator [Sat, 27 Nov 2010 00:19:51 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r167194
Joseph Myers [Fri, 26 Nov 2010 23:18:28 +0000 (23:18 +0000)]
options.texi (Enum, EnumValue): Document new record types.
* doc/options.texi (Enum, EnumValue): Document new record types.
(Enum): Document new option flag.
* opt-functions.awk
* optc-gen.awk: Handle enumerated option arguments.
* opth-gen.awk: Handle enumerated option arguments.
* opts-common.c (enum_arg_ok_for_language, enum_arg_to_value,
enum_value_to_arg): New.
(decode_cmdline_option): Handle enumerated arguments.
(read_cmdline_option): Handle CL_ERR_ENUM_ARG.
(set_option, option_enabled, get_option_state): Handle CLVC_ENUM.
* opts.c (print_filtered_help, print_specific_help): Take
lang_mask arguments.
(print_filtered_help): Handle printing values of enumerated
options. Print possible arguments for enumerated options.
(print_specific_help): Update call to print_filtered_help.
(common_handle_option): Update calls to print_specific_help. Use
value rather than arg for OPT_fdiagnostics_show_location_. Don't
handle OPT_ffp_contract_, OPT_fexcess_precision_,
OPT_fvisibility_, OPT_ftls_model_, OPT_fira_algorithm_ or
OPT_fira_region_ here.
* opts.h (enum cl_var_type): Add CLVC_ENUM.
(struct cl_option): Add var_enum.
(CL_ENUM_CANONICAL, CL_ENUM_DRIVER_ONLY, struct cl_enum_arg,
struct cl_enum, cl_enums, cl_enums_count): New.
(CL_ERR_ENUM_ARG): Define.
(CL_ERR_NEGATIVE): Update value.
(enum_value_to_arg): Declare.
* common.opt (flag_ira_algorithm, flag_ira_region,
flag_fp_contract_mode, flag_excess_precision_cmdline,
default_visibility, flag_tls_default): Remove Variable entries.
(help_enum_printed): New Variable.
(fdiagnostics-show-location=): Use Enum. Add associated
SourceInclude, Enum and EnumValue entries.
(fexcess-precision=, ffp-contract=, fira-algorithm=, fira-region=,
ftls-model=, fvisibility=): Use Enum, Var and Init. Add
associated Enum and EnumValue entries.
po:
* exgettext: Handle UnknownError.
From-SVN: r167190
Paolo Carlini [Fri, 26 Nov 2010 23:03:36 +0000 (23:03 +0000)]
2010-11-27 Paolo Carlini <paolo.carlini@oracle.com>
* Tweak last ChangeLog entry.
From-SVN: r167189
François Dumont [Fri, 26 Nov 2010 20:29:01 +0000 (21:29 +0100)]
libstdc++.exp [...]: Use remote_file delete for generated exe.
2010-11-26 François Dumont <francois.cppdevs@free.fr>
* testsuite/lib/libstdc++.exp [check_v3_target_debug_mode]: Use
remote_file delete for generated exe. [check_v3_target_profile_mode]
Add.
* testsuite/lib/dg-options.exp [dg-require-profile-mode]: Add
* testsuite/ext/profile/mh.cc, profiler_algos.cc, all.cc: Use
dg-require-profile-mode, remove explicit _GLIBCXX_PROFILE definition.
From-SVN: r167188
Joern Rennecke [Fri, 26 Nov 2010 17:38:20 +0000 (17:38 +0000)]
re PR target/46623 (microblaze --enable-werror-always build fails)
PR target/46623
* config/microblaze/microblaze.c (microblaze_block_move_straight):
Use XALLOCAVEC.
(microblaze_option_override): Don't use C++ style comments.
(save_restore_insns): Remove unused variable base_offset.
(microblaze_expand_prologue): Remove unused variable insn.
(microblaze_secondary_reload): Adjust type to match target.h .
(microblaze_elf_in_small_data_p): Move declarations to start of block.
(microblaze_expand_move): Likewise.
* config/microblaze/microblaze.h (LARGE_INT):
Avoid signed / unsigned comparisons.
(ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
(ASM_FORMAT_PRIVATE_NAME): Make format specifier match printed data.
(ASM_FINISH_DECLARE_OBJECT): Likewise. Constify name.
From-SVN: r167186
Rainer Orth [Fri, 26 Nov 2010 17:36:42 +0000 (17:36 +0000)]
gnat.exp: Load gcc.exp.
* lib/gnat.exp: Load gcc.exp.
(gnat_target_compile): Use gcc_target_compile for *.c sources.
* gnat.dg/sse_nolib.adb: Use dg-require-effective-target sse_runtime.
From-SVN: r167185
Michael Matz [Fri, 26 Nov 2010 16:51:39 +0000 (16:51 +0000)]
tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.
* tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.
* passes.c (init_optimization_passes): Remove superfluous
copy-prop pass.
From-SVN: r167184
Richard Guenther [Fri, 26 Nov 2010 16:12:49 +0000 (16:12 +0000)]
re PR lto/46648 (type mismatch in array reference; verify_stmts failed)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR lto/46648
* gimple.c (gtc_visit): Do not return true for members of an
SCC still being processed but the current lattice value of
the member. Treat SCC members comparison state as lattice,
starting at equal, eventually dropping to unequal.
(gimple_types_compatible_p_1): Likewise.
* gcc.dg/lto/
20101125-1_0.c: New testcase.
* gcc.dg/lto/
20101125-1_1.c: Likewise.
From-SVN: r167183
Bud Davis [Fri, 26 Nov 2010 16:11:14 +0000 (16:11 +0000)]
arith_divide_no_check.f [...]: new tests.
2010-11-22 Bud Davis <jmdavis@link.com>
* arith_divide_no_check.f ,arith_divide.f,old_style_init.f90: new
tests.
From-SVN: r167182
Richard Guenther [Fri, 26 Nov 2010 16:01:26 +0000 (16:01 +0000)]
re PR middle-end/46559 (libstdc++ link FAILs with -flto)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR middle-end/46559
* dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root
for location list processing.
From-SVN: r167181
H.J. Lu [Fri, 26 Nov 2010 15:14:20 +0000 (15:14 +0000)]
Add a testcase for PR tree-optimization/46665.
2010-11-26 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/46665
* gfortran.dg/pr46665.f90: New.
From-SVN: r167179
Richard Guenther [Fri, 26 Nov 2010 14:39:25 +0000 (14:39 +0000)]
re PR tree-optimization/46560 (libstdc++ execute FAILs with -flto)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR lto/46560
* cgraph.c (cgraph_clone_edge): Clone call_stmt dependent
flags manually.
From-SVN: r167178
Andreas Krebbel [Fri, 26 Nov 2010 14:07:16 +0000 (14:07 +0000)]
s390.c (print_operand_address): Replace assert with error message.
2010-11-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (print_operand_address): Replace assert with
error message.
(print_operand): Replace assertions, gcc_unreachable and
fatal_insn with error messages.
From-SVN: r167177
Richard Guenther [Fri, 26 Nov 2010 14:04:50 +0000 (14:04 +0000)]
re PR rtl-optimization/46665 (two gfortran tests fail with -O[2s] -fipa-pta -fno-tree-ccp -fno-tree-forwprop)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46665
* tree-ssa-structalias.c (pt_solution_set_var): Use DECL_PT_UID.
From-SVN: r167176
Ian Bolton [Fri, 26 Nov 2010 13:21:32 +0000 (13:21 +0000)]
arm.c (arm_option_override): enable loop array prefetching at -O3 for suitable targets, and configure params.
2010-11-26 Ian Bolton <ian.bolton@arm.com>
* config/arm/arm.c (arm_option_override): enable loop array
prefetching at -O3 for suitable targets, and configure params.
* config/arm/arm-protos.h (struct tune_params): Add fields for
configuring loop array prefetching.
From-SVN: r167175
Christian Borntraeger [Fri, 26 Nov 2010 13:16:28 +0000 (13:16 +0000)]
2817.md (z196_crack): Add z196_g3 as possible slot.
2010-11-26 Christian Borntraeger <borntraeger@de.ibm.com>
* config/s390/2817.md (z196_crack): Add z196_g3 as possible slot.
From-SVN: r167174
Richard Guenther [Fri, 26 Nov 2010 12:42:41 +0000 (12:42 +0000)]
re PR lto/46664 (Failed to build 481.wrf in SPEC CPU 2006 with LTO)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46664
* tree-affine.c (aff_combination_to_tree): Add rest last.
From-SVN: r167173
Michael Haubenwallner [Fri, 26 Nov 2010 09:53:24 +0000 (10:53 +0100)]
re PR target/33637 ("checking for nm: test: too many arguments" causes "Undefined symbol: __gxx_personality_v0")
PR target/33637
* configure.ac: Accept extra arguments for AS_FOR_TARGET,
LD_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET.
* configure: Regenerated.
* exec-tool.in: Not quoting command, may have extra arguments.
From-SVN: r167172
Richard Guenther [Fri, 26 Nov 2010 09:49:47 +0000 (09:49 +0000)]
re PR bootstrap/46528 (profiledbootstrap failure)
2010-11-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46528
PR debug/46338
* profile.c (branch_prob): Do not split blocks based on locations
from debug statements.
From-SVN: r167171
Jakub Jelinek [Fri, 26 Nov 2010 09:38:54 +0000 (10:38 +0100)]
re PR middle-end/46647 (Can't inline memset with -1)
PR middle-end/46647
* builtins.c (fold_builtin_memset): Check c is INTEGER_CST instead
of host_integerp check. Use TREE_INT_CST_LOW instead of tree_low_cst.
* gcc.dg/pr46647.c: New test.
From-SVN: r167170
Jakub Jelinek [Fri, 26 Nov 2010 09:36:29 +0000 (10:36 +0100)]
re PR bootstrap/45700 (--enable-checking=fold bootstrap failures)
PR bootstrap/45700
* tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines.
(build1_loc, build2_loc, build3_loc, build4_loc, build5_loc,
build6_loc): Define.
* fold-const.c (protected_set_expr_location_unshare): New inline.
(fold_convert_loc, pedantic_non_lvalue_loc): Use it.
(negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc,
pedantic_omit_one_operand_loc, omit_two_operands_loc,
fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref,
optimize_bit_field_compare, make_range, fold_range_test, fold_truthop,
build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc,
fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc
instead of buildN followed by SET_EXPR_LOCATION or
protected_set_expr_location.
(fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc):
Use buildN_stat_loc instead of buildN_stat followed by
SET_EXPR_LOCATION.
* trans.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
build4_stat_loc): Removed.
(build1_loc, build2_loc, build3_loc, build4_loc): Removed.
From-SVN: r167169
Jakub Jelinek [Fri, 26 Nov 2010 09:35:35 +0000 (10:35 +0100)]
re PR bootstrap/45700 (--enable-checking=fold bootstrap failures)
PR bootstrap/45700
* tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines.
(build1_loc, build2_loc, build3_loc, build4_loc, build5_loc,
build6_loc): Define.
* fold-const.c (protected_set_expr_location_unshare): New inline.
(fold_convert_loc, pedantic_non_lvalue_loc): Use it.
(negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc,
pedantic_omit_one_operand_loc, omit_two_operands_loc,
fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref,
optimize_bit_field_compare, make_range, fold_range_test, fold_truthop,
build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc,
fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc
instead of buildN followed by SET_EXPR_LOCATION or
protected_set_expr_location.
(fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc):
Use buildN_stat_loc instead of buildN_stat followed by
SET_EXPR_LOCATION.
* trans.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
build4_stat_loc): Removed.
(build1_loc, build2_loc, build3_loc, build4_loc): Removed.
From-SVN: r167168
Basile Starynkevitch [Fri, 26 Nov 2010 07:14:15 +0000 (07:14 +0000)]
Makefile.in (s-tm-texi): Remove spurous tab.
2010-11-26 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in (s-tm-texi): Remove spurous tab.
From-SVN: r167167
Alexandre Oliva [Fri, 26 Nov 2010 04:27:24 +0000 (04:27 +0000)]
re PR debug/46258 (gcc.dg/tree-ssa/pr23820.c: -fcompare-debug failure with -O3 -ffloat-store)
PR debug/46258
* tree-cfg.c (replace_uses_by): Don't mark BBs as altered on
debug stmts.
From-SVN: r167162
Alexandre Oliva [Fri, 26 Nov 2010 04:27:04 +0000 (04:27 +0000)]
toplev.c (finalize): Add no_backend parameter.
* toplev.c (finalize): Add no_backend parameter. Don't finish
passes when preprocessing only. Adjust...
(do_compile): ... caller.
From-SVN: r167161
Alexandre Oliva [Fri, 26 Nov 2010 04:25:32 +0000 (04:25 +0000)]
re PR fortran/46020 (Improve error string for BIND(C) diagnostic for len>1 character return type)
PR other/46020
* configure.ac (CXX_FOR_TARGET): Add -funconfigured-libstdc++-v3.
* Makefile.def (CXX_FOR_TARGET): Removed from flags_to_pass.
* Makefile.tpl (CXX_FOR_TARGET_FLAG_TO_PASS): New.
(BASE_FLAGS_TO_PASS): Use it.
* configure: Rebuilt.
* Makefile.in: Rebuilt.
From-SVN: r167160
John David Anglin [Fri, 26 Nov 2010 04:09:25 +0000 (04:09 +0000)]
pa.md (negdf2): Condition on !flag_signed_zeros instead of flag_unsafe_math_optimizations.
* config/pa/pa.md (negdf2): Condition on !flag_signed_zeros instead of
flag_unsafe_math_optimizations.
(negsf2): Likewise.
Move fnegabs related patterns together. Only use fmpynfadd instruction
to negate a multiply if !flag_signed_zeros is true.
From-SVN: r167159
GCC Administrator [Fri, 26 Nov 2010 00:20:18 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r167158
Janus Weil [Thu, 25 Nov 2010 22:04:59 +0000 (23:04 +0100)]
re PR fortran/46581 ([OOP] segfault in SELECT TYPE with associate-name)
2010-11-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/46581
* trans.h (gfc_process_block_locals): Removed second argument.
* trans-decl.c (trans_associate_var): Moved to trans-stmt.c.
(gfc_trans_deferred_vars): Skip ASSOCIATE variables.
(gfc_process_block_locals): Don't mark associate names to be
initialized.
* trans-stmt.c (trans_associate_var): Moved here from trans-decl.c.
(gfc_trans_block_construct): Call 'trans_associate_var' from here
to make sure SELECT TYPE with associate-name is treated correctly.
2010-11-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/46581
* gfortran.dg/select_type_19.f03: New.
From-SVN: r167154
Uros Bizjak [Thu, 25 Nov 2010 21:50:53 +0000 (22:50 +0100)]
gengtype-state.c (read_state_structures): Initialize "previous".
* gengtype-state.c (read_state_structures): Initialize "previous".
From-SVN: r167153
François Dumont [Thu, 25 Nov 2010 20:53:39 +0000 (21:53 +0100)]
debug.cc: Introduce a mutex pool in get_safe_base_mutex.
2010-11-25 François Dumont <francois.cppdevs@free.fr>
* src/debug.cc: Introduce a mutex pool in get_safe_base_mutex.
Move code used to manipulate sequence safe iterators from safe
iterator methods to safe sequence ones. Remove usage of safe iterator
mutex, keep _Safe_iterator_base::_M_get_mutex for library backward
binary compatibility.
* src/Makefile.am: Build debug.cc in gnu++0x mode for _Hash_impl usage.
* src/Makefile.in: Regenerate
* include/debug/safe_base.h: Add _Safe_iterator_base _M_invalidate
and _M_reset. Add _Safe_sequence_base _M_attach, _M_attach_single,
_M_detach and _M_detach_single.
* include/debug.safe_iterator.h, safe_iterator.tcc: Remove
_Safe_iterator _M_invalidate and _M_invalidate_single. Implement all
methods in terms of normal iterators rather than safe ones.
* include/debug/safe_sequence.h: Replace _Safe_sequence
_M_transfe_iter with _M_transfer_from_if taking the source sequence
and a predicate signaling when a safe iterator shall be transfered.
Add _Equal_to predicate.
* include/debug/safe_sequence.tcc: New.
* include/Makefile.am: Adjust.
* include/Makefile.in: Regenerate.
* include/debug/forward_list: Swap safe iterators in move constructor.
Do not invalidate before begin in _M_invalidate_all method.
Reimplement safe methods using normal iterators rather than safe ones.
* include/debug/set.h, unordered_map, multiset.h, vector,
unordered_set, deque, map.h, list, multimap.h: Reimplement safe method
using normal iterators rather than safe ones.
* testsuite/23_containers/forward_list/debug/clear.cc, swap.cc,
move_constructor.cc, splice_after.cc, splice_after1.cc,
splice_after2.cc, splice_after3.cc, splice_after4.cc: New.
* testsuite/23_containers/vector/debug/multithreaded_swap.cc: New.
From-SVN: r167152
Nicola Pero [Thu, 25 Nov 2010 19:50:13 +0000 (19:50 +0000)]
In gcc/objc/: 2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_build_struct): Install TYPE_OBJC_INTERFACE
after finish_struct, not before, otherwise it may be wiped out by
it. This fixes spurious warnings when a class has more than 15
instance variables.
In gcc/testsuite/:
2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/ivar-problem-1.m: New.
* obj-c++.dg/ivar-problem-1.mm: New.
From-SVN: r167151
Basile Starynkevitch [Thu, 25 Nov 2010 19:03:27 +0000 (19:03 +0000)]
gentype-state.c: Add new file.
2010-11-25 Basile Starynkevitch <basile@starynkevitch.net>
Jeremie Salvucci <jeremie.salvucci@free.fr>
* gentype-state.c: Add new file.
* gengtype.c (type count): New variable.
(new_structure, find_param_structure, create_pointer)
(create_array): Use it to set state_number in types.
(dump_everything): Improve comment.
(main): Call read_state and write_state. Print type_count.
* gengtype.h (type_lineloc): New function.
(read_state, write_state): New declarations.
* Makefile.in (GENGTYPE_FLAGS): New variable.
(s-gtype): Run gengtype twice and generate gtype.state.
(build/gengtype-state.o): New rule.
(build/gengtype$(build_exeext)): Link gengtype-state.o.
(mostlyclean): Update comment. Remove gtype.state.
Co-Authored-By: Jeremie Salvucci <jeremie.salvucci@free.fr>
From-SVN: r167150
Rainer Orth [Thu, 25 Nov 2010 18:16:57 +0000 (18:16 +0000)]
make_sunver.pl: Use elfdump -s to extract symbols if possible, readelf -s otherwise.
* make_sunver.pl: Use elfdump -s to extract symbols if possible,
readelf -s otherwise.
From-SVN: r167149
Jakub Jelinek [Thu, 25 Nov 2010 18:00:47 +0000 (19:00 +0100)]
re PR middle-end/46637 (SIGSEGV in if_then_else_cond - too deep recursion)
PR middle-end/46637
* combine.c (try_combine): When substing i2dest for i2src, pass
1 as last argument even if
i0_feeds_i1_n && i1_feeds_i2_n && i0dest_in_i0src.
* gcc.c-torture/compile/pr46637.c: New test.
From-SVN: r167148
H.J. Lu [Thu, 25 Nov 2010 13:57:51 +0000 (13:57 +0000)]
Add -mtune=generic to gfortran.dg/pr46519-1.f.
2010-11-25 H.J. Lu <hongjiu.lu@intel.com>
* gfortran.dg/pr46519-1.f: Add -mtune=generic.
From-SVN: r167147
H.J. Lu [Thu, 25 Nov 2010 13:47:42 +0000 (13:47 +0000)]
Properly cast integer constant char.
gcc/
2010-11-25 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/46647
* builtins.c (target_char_cast): Check INTEGER_CST instead of
host_integerp. Replace tree_low_cst with TREE_INT_CST_LOW.
gcc/testsuite/
2010-11-25 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/46647
* gcc.target/i386/pr46647.c: New.
From-SVN: r167146
Joseph Myers [Thu, 25 Nov 2010 13:16:03 +0000 (13:16 +0000)]
target.def (supports_split_stack, [...]): Take gcc_options parameters.
* target.def (supports_split_stack, except_unwind_info): Take
gcc_options parameters.
* targhooks.c (default_except_unwind_info,
dwarf2_except_unwind_info, sjlj_except_unwind_info): Take
gcc_options parameters.
* targhooks.h (default_except_unwind_info,
dwarf2_except_unwind_info, sjlj_except_unwind_info): Update
prototypes.
* doc/tm.texi.in (TARGET_IRA_COVER_CLASSES,
TARGET_HAVE_NAMED_SECTIONS, TARGET_UNWIND_TABLES_DEFAULT):
Document that hooks must not be modified.
(TARGET_EXCEPT_UNWIND_INFO): Refer to opts argument.
* doc/tm.texi: Regenerate.
* defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Pass
&global_options to targetm.except_unwind_info.
* dwarf2out.c (dwarf2out_do_frame, dwarf2out_do_cfi_asm,
dwarf2out_begin_prologue, dwarf2out_frame_init,
dwarf2out_frame_finish, dwarf2out_assembly_start): Pass
&global_options to targetm.except_unwind_info.
* except.c (init_eh, finish_eh_generation,
gate_convert_to_eh_region_ranges,
output_one_function_exception_table): Pass &global_options to
targetm.except_unwind_info.
* expr.c (build_personality_function): Pass &global_options to
targetm.except_unwind_info.
* function.c (expand_function_end): Pass &global_options to
targetm.except_unwind_info.
* hooks.c (hook_bool_bool_gcc_optionsp_false): New.
* hooks.h (hook_bool_bool_gcc_optionsp_false): Declare.
* opts.c (finish_options): Pass opts to targetm.except_unwind_info
and targetm.supports_split_stack. Remove assertions about opts
and opts_set.
(common_handle_option): Remove assertions about opts, opts_set and
dc.
* tree-tailcall.c (suitable_for_tail_call_opt_p): Pass
&global_options to targetm.except_unwind_info.
* tree.c (build_common_builtin_nodes: Pass &global_options to
targetm.except_unwind_info.
* config/arm/arm.c (arm_except_unwind_info): Add gcc_options
parameter.
(arm_compute_func_type, arm_expand_prologue, thumb_pushpop,
thumb1_expand_prologue, thumb1_output_function_prologue,
arm_unwind_emit, arm_output_fn_unwind): Update calls to
arm_except_unwind_info.
* config/i386/i386.c (ix86_supports_split_stack): Add gcc_options
parameter.
* config/ia64/ia64.c (ia64_except_unwind_info): Add gcc_options
parameter.
(ia64_output_function_prologue, ia64_add_bundle_selector_before,
ia64_reorg, ia64_asm_unwind_emit): Update calls to
ia64_except_unwind_info.
* config/pa/pa.c (pa_option_override): Pass &global_options to
targetm.except_unwind_info.
* config/picochip/picochip-protos.h (picochip_except_unwind_info):
Remove prototype.
c-family:
* c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
targetm.except_unwind_info.
From-SVN: r167145
Kai Tietz [Thu, 25 Nov 2010 12:30:07 +0000 (12:30 +0000)]
cgraphunit.c (process_function_and_variable_attributes): Mark dllexport-ed function/variables as needed.
2010-11-25 Kai Tietz <kai.tietz@onevision.com>
* cgraphunit.c (process_function_and_variable_attributes):
Mark dllexport-ed function/variables as needed.
* ipa.c (cgraph_externally_visible_p): Make dllexport-ed
as externally visible.
2010-11-25 Kai Tietz <kai.tietz@onevision.com>
* gcc.dg/dll-8.c: New.
From-SVN: r167144
Eric Botcazou [Thu, 25 Nov 2010 11:53:04 +0000 (11:53 +0000)]
loop_optimization7.adb: Remove dg-require-effective-target.
* gnat.dg/loop_optimization7.adb: Remove dg-require-effective-target.
* gnat.dg/sse_nolib.adb: Likewise.
From-SVN: r167143
Alexander Monakov [Thu, 25 Nov 2010 10:05:00 +0000 (13:05 +0300)]
re PR rtl-optimization/46585 (ICE: SIGSEGV in vinsn_create (sel-sched-ir.c:1189) with -fno-dce -fschedule-insns -fselective-scheduling)
PR rtl-optimization/46585
* sel-sched-ir.c (return_regset_to_pool): Verify that RS is not NULL.
(vinsn_init): Skip initialization of dependencies for local NOPs.
(vinsn_delete): Don't try to free regsets for local NOPs.
(setup_nop_and_exit_insns): Change definition of nop_pattern.
testsuite:
* gcc.dg/pr46585.c: New.
From-SVN: r167141
Alexander Monakov [Thu, 25 Nov 2010 09:59:03 +0000 (12:59 +0300)]
re PR rtl-optimization/46602 (gcc.dg/pr42245-2.c ICE on ia64)
PR rtl-optimization/46602
* sel-sched-ir.c (maybe_tidy_empty_bb): Move checking ...
(tidy_control_flow): Here.
From-SVN: r167140
Joern Rennecke [Thu, 25 Nov 2010 08:02:13 +0000 (08:02 +0000)]
re PR bootstrap/45888 (tm.texi generation is not portable, rule is broken)
2010-11-25 Joern Rennecke <amylaar@spamcop.net>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR bootstrap/45888
* Makefile.in (s-tm-texi): Remove \r occurences from tmp-tm.texi.
Fix target.def pathname in timestamp comparison.
Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r167137
Richard Henderson [Thu, 25 Nov 2010 01:16:20 +0000 (17:16 -0800)]
predicates.md (pmpyshr_operand): New.
* config/ia64/predicates.md (pmpyshr_operand): New.
* config/ia64/ia64.c (ia64_expand_unpack): New.
(ia64_expand_widen_mul_v4hi): New.
(ia64_expand_widen_sum): Update for pattern renames.
(ia64_expand_dot_prod_v8qi): Likewise.
* config/ia64/ia64-protos.h: Update.
* config/ia64/vect.md (vecwider): New mode attribute.
(vec_widen_umult_lo_v8qi, vec_widen_umult_hi_v8qi): New.
(vec_widen_smult_lo_v8qi, vec_widen_smult_hi_v8qi): New.
(pmpyshr2, pmpyshr2_u): New.
(vec_widen_smult_lo_v4hi, vec_widen_smult_hi_v4hi): New.
(vec_widen_umult_lo_v4hi, vec_widen_umult_hi_v4hi): New.
(mulv2si3): New.
(vec_pack_ssat_v4hi): Rename from pack2_sss.
(vec_pack_usat_v4hi): Rename from *pack2_uss.
(vec_pack_ssat_v2si): Rename from pack4_sss.
(vec_interleave_lowv8qi): Rename from unpack1_l, use the correct
vec_select operation.
(vec_interleave_highv8qi): Similarly.
(mux1_alt): Rename from *mux1_alt.
(vec_extract_evenv8qi, vec_extract_oddv8qi): New.
(vec_interleave_lowv4hi): Rename from unpack2_l.
(vec_interleave_highv4hi): Rename from unpack2_h.
(mix2_r): Rename from *mix2_r.
(mix2_l): Similarly.
(vec_extract_evenodd_helper): New.
(vec_extract_evenv4hi, vec_extract_oddv4hi): New.
(vec_interleave_lowv2si): Rename from *unpack4_l.
(vec_interleave_highv2si): Rename from *unpack4_h.
(vec_extract_evenv2si, vec_extract_oddv2si): New.
(vec_interleave_lowv2sf): Rename from fmix_r.
(vec_interleave_highv2sf): Rename from *fmix_l.
(vec_extract_evenv2sf, vec_extract_oddv2sf): New.
(vec_unpacku_lo_<VECINT12>, vec_unpacku_hi_<VECINT12>): New.
(vec_unpacks_lo_<VECINT12>, vec_unpacks_hi_<VECINT12>): New.
(vec_pack_trunc_v4hi, vec_pack_trunc_v2si): New.
testsuite:
* lib/target-supports.exp (vect_widen_sum_hi_to_si_pattern,
vect_widen_mult_hi_to_si, vect_sdot_qi, vect_udot_qi, vect_sdot_hi,
vect_unpack, vect_int_mult, vect_extract_even_odd,
vect_extract_even_odd_wide, vect_interleave): Enable for ia64.
From-SVN: r167136
GCC Administrator [Thu, 25 Nov 2010 00:18:39 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r167135
Nathan Froyd [Wed, 24 Nov 2010 23:37:33 +0000 (23:37 +0000)]
targhooks.c (default_except_unwind_info): Remove MUST_USE_SJLJ_EXCEPTIONS case.
* targhooks.c (default_except_unwind_info): Remove
MUST_USE_SJLJ_EXCEPTIONS case.
* config/h8300/h8300.h (MUST_USE_SJLJ_EXCEPTIONS): Delete.
* config/h8300/h8300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
* doc/tm.texi.in (MUST_USE_SJLJ_EXCEPTIONS): Delete.
* doc/tm.texi: Regenerate.
* system.h (MUST_USE_SJLJ_EXCEPTIONS): Poison.
From-SVN: r167131
Nathan Froyd [Wed, 24 Nov 2010 23:32:29 +0000 (23:32 +0000)]
revert accidentally committed changes
From-SVN: r167130
Nathan Froyd [Wed, 24 Nov 2010 23:29:41 +0000 (23:29 +0000)]
cppbuiltin.c (define_builtin_macros_for_type_sizes): Define __FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN.
gcc/
* cppbuiltin.c (define_builtin_macros_for_type_sizes): Define
__FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN.
* config/dfp-bit.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete.
* doc/cpp.texi (__FLOAT_WORD_ORDER__): Document.
* system.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Poison.
libgcc/
* config/libbid/bid_conf.h (BID_BIG_ENDIAN): Define in terms of
__FLOAT_WORD_ORDER__.
* config/libbid/bid_gcc_intrinsics.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN):
Delete.
libdecnumber/
* dconfig.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete.
(WORDS_BIG_ENDIAN): Define based on value of __FLOAT_WORD_ORDER__.
From-SVN: r167129
Iain Sandoe [Wed, 24 Nov 2010 19:26:27 +0000 (19:26 +0000)]
fortran.exp: Add paths for libquadmath.
libgomp:
* testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
From-SVN: r167127
H.J. Lu [Wed, 24 Nov 2010 19:16:40 +0000 (19:16 +0000)]
Don't check TREE_THIS_VOLATILE in ix86_expand_call.
gcc/
2010-11-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/46519
* config/i386/i386.c (ix86_expand_call): Don't check
TREE_THIS_VOLATILE.
gcc/testsuite/
2010-11-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/46519
* gfortran.dg/pr46519-1.f: New.
From-SVN: r167126
H.J. Lu [Wed, 24 Nov 2010 18:24:39 +0000 (18:24 +0000)]
Improve vzeroupper optimization.
gcc/
2010-11-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/46519
* config/i386/i386.c (upper_128bits_state): New.
(block_info_def): Remove upper_128bits_set and done. Add state,
referenced, count, processed and rescanned.
(check_avx256_stores): Updated.
(move_or_delete_vzeroupper_2): Updated. Handle deleted BB_END.
Call note_stores only if needed. Set referenced and count.
(move_or_delete_vzeroupper_1): Updated. Set rescan_vzeroupper_p.
(rescan_move_or_delete_vzeroupper): New.
(move_or_delete_vzeroupper): Process and rescan all all basic
blocks instead of predecessor blocks of all exit points.
(ix86_option_override_internal): Enable vzeroupper optimization
only for -fexpensive-optimizations and not optimizing for size.
(use_avx256_p): Removed.
(init_cumulative_args): Don't set use_avx256_p.
(ix86_function_arg): Likewise.
(ix86_expand_move): Likewise.
(ix86_expand_vector_move_misalign): Likewise.
(ix86_local_alignment): Likewise.
(ix86_minimum_alignment): Likewise.
(ix86_expand_epilogue): Don't check use_avx256_p when generating
vzeroupper.
(ix86_expand_call): Likewise.
* config/i386/i386.h (machine_function): Remove use_vzeroupper_p
and use_avx256_p. Add rescan_vzeroupper_p.
gcc/testsuite/
2010-11-24 H.J. Lu <hongjiu.lu@intel.com>
PR target/46519
* gcc.target/i386/avx-vzeroupper-10.c: Expect no avx_vzeroupper.
* gcc.target/i386/avx-vzeroupper-11.c: Likewise.
* gcc.target/i386/avx-vzeroupper-14.c: Replace -O0 with -O2.
* gcc.target/i386/avx-vzeroupper-15.c: Likewise.
* gcc.target/i386/avx-vzeroupper-16.c: Likewise.
* gcc.target/i386/avx-vzeroupper-17.c: Likewise.
* gcc.target/i386/avx-vzeroupper-20.c: New.
* gcc.target/i386/avx-vzeroupper-21.c: Likewise.
* gcc.target/i386/avx-vzeroupper-22.c: Likewise.
* gcc.target/i386/avx-vzeroupper-23.c: Likewise.
* gcc.target/i386/avx-vzeroupper-24.c: Likewise.
* gcc.target/i386/avx-vzeroupper-25.c: Likewise.
* gcc.target/i386/avx-vzeroupper-26.c: Likewise.
From-SVN: r167124
Joseph Myers [Wed, 24 Nov 2010 17:46:21 +0000 (17:46 +0000)]
* toplev.c: Include <signal.h>.
From-SVN: r167123
Richard Guenther [Wed, 24 Nov 2010 17:06:41 +0000 (17:06 +0000)]
re PR lto/43218 ([LTO] Conflicting function types cause ICE)
2010-11-24 Richard Guenther <rguenther@suse.de>
PR lto/43218
* lto-symtab.c (lto_cgraph_replace_node): Mark edges with
conflicting function signatures as non-inlineable.
* gcc.dg/lto/
20100423-1_0.c: Enable for all LTO modes.
From-SVN: r167122
Jakub Jelinek [Wed, 24 Nov 2010 16:56:44 +0000 (17:56 +0100)]
re PR rtl-optimization/46614 (gcc.dg/vect/vect-strided-u8-i8-gap4.c FAILs with -fno-rename-registers -fsched2-use-superblocks)
PR rtl-optimization/46614
* sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP_P): Define.
(deps_analyze_insn): Mark JUMP_INSNs in
last_pending_memory_flush that weren't added through
flush_pending_lists with NON_FLUSH_JUMP_KIND.
(sched_analyze_2, sched_analyze_insn): Check NON_FLUSH_JUMP_P
on INSN_LIST instead of JUMP_P check on its operand.
* sched-rgn.c (concat_INSN_LIST): Copy over REG_NOTE_KIND.
* gcc.dg/pr46614.c: New test.
From-SVN: r167121