platform/upstream/gcc.git
14 years ago20100302_0.C: Skip on darwin.
Jack Howarth [Thu, 27 May 2010 15:19:55 +0000 (15:19 +0000)]
20100302_0.C: Skip on darwin.

2010-05-27  Jack Howarth  <howarth@bromo.med.uc.edu>

* g++.dg/lto/20100302_0.C: Skip on darwin.

From-SVN: r159924

14 years agosched-ebb.c: Rename struct deps to struct deps_desc.
Jan Hubicka [Thu, 27 May 2010 15:08:00 +0000 (15:08 +0000)]
sched-ebb.c: Rename struct deps to struct deps_desc.

* sched-ebb.c: Rename struct deps to struct deps_desc.
* ddg.c: Likewise.
* sel-sched-ir.c: Likewise.
* sched-deps.c: Likewise.
* sched-int.h: Likewise.
* sched-rgn.c: Likewise.

From-SVN: r159923

14 years agoPR 43726 * config/lm32/lm32.h: Remove definition of GO_IF_MODE_DEPENDENT_ADDRESS.
Jon Beniston [Thu, 27 May 2010 15:05:48 +0000 (15:05 +0000)]
PR 43726 * config/lm32/lm32.h: Remove definition of GO_IF_MODE_DEPENDENT_ADDRESS.

From-SVN: r159922

14 years agore PR lto/44230 (Do not create need for multiple EH personalities)
Eric Botcazou [Thu, 27 May 2010 14:11:35 +0000 (14:11 +0000)]
re PR lto/44230 (Do not create need for multiple EH personalities)

PR lto/44230
* dwarf2out.c (dwarf2out_begin_prologue): Fix nits in sorry message.
lto/
* lto.h (lto_eh_personality): New prototype.
* lto.c: Include debug.h.
(first_personality_decl): New static variable.
(lto_materialize_function): Set it to DECL_FUNCTION_PERSONALITY of the
first function for which it is non-null.
(lto_eh_personality_decl): New static variable.
(lto_eh_personality): New function.
* lto-lang.c (LANG_HOOKS_EH_PERSONALITY): Redefine to above function.
* Make-lang.in (lto/lto.o): Add dependency on debug.h.

From-SVN: r159921

14 years agore PR tree-optimization/44284 (vectorization does not work for short variable)
Richard Guenther [Thu, 27 May 2010 13:23:45 +0000 (13:23 +0000)]
re PR tree-optimization/44284 (vectorization does not work for short variable)

2010-05-27  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/44284
* tree-vect-stmts.c (vectorizable_assignment): Handle
sign-changing conversions as simple copy.

* gcc.dg/vect/vect-118.c: New testcase.
* gcc.dg/vect/bb-slp-20.c: Adjust.
* gcc.dg/vect/no-section-anchors-vect-36.c: Likewise.
* gcc.dg/vect/slp-9.c: Likewise.
* gcc.dg/vect/slp-reduc-4.c: Likewise.
* gcc.dg/vect/vect-10.c: Likewise.
* gcc.dg/vect/vect-109.c: Likewise.
* gcc.dg/vect/vect-12.c: Likewise.
* gcc.dg/vect/vect-36.c: Likewise.
* gcc.dg/vect/vect-7.c: Likewise.
* gcc.dg/vect/vect-iv-8.c: Likewise.
* gcc.dg/vect/vect-multitypes-10.c: Likewise.
* gcc.dg/vect/vect-multitypes-13.c: Likewise.
* gcc.dg/vect/vect-multitypes-14.c: Likewise.
* gcc.dg/vect/vect-multitypes-15.c: Likewise.
* gcc.dg/vect/vect-multitypes-7.c: Likewise.
* gcc.dg/vect/vect-multitypes-8.c: Likewise.
* gcc.dg/vect/vect-multitypes-9.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise.
* gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise.
* gcc.dg/vect/vect-strided-u32-mult.c: Likewise.
* gcc.dg/vect/vect-widen-mult-s16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-s8.c: Likewise.
* gcc.dg/vect/vect-widen-mult-sum.c: Likewise.
* gcc.dg/vect/vect-widen-mult-u16.c: Likewise.

From-SVN: r159920

14 years agogthr-posix.h (pthread_cancel): Don't declare if compiling against Bionic C library.
Maxim Kuvyrkov [Thu, 27 May 2010 12:08:51 +0000 (12:08 +0000)]
gthr-posix.h (pthread_cancel): Don't declare if compiling against Bionic C library.

* gthr-posix.h (pthread_cancel): Don't declare if compiling against
Bionic C library.
(__gthread_active_p): Check for pthread_create if compiling against
Bionic C library.

From-SVN: r159919

14 years agoSupport compilation for Android platform. Reimplement -mandroid.
Maxim Kuvyrkov [Thu, 27 May 2010 12:06:58 +0000 (12:06 +0000)]
Support compilation for Android platform.  Reimplement -mandroid.

* config.gcc (*linux*): Include linux-android.h and linux-android.opt.
(*android*): Set ANDROID_DEFAULT.
(arm*-*-linux*): Include linux-android.h.
(arm*-*-eabi*): Don't include previous -mandroid implementation.
* config/arm/eabi.h: Remove, move Android-specific parts ...
* config/linux-android.h: ... here.  New file.
* config/arm/eabi.opt: Rename to ...
* config/linux-android.opt: ... this.
(mandroid): Allow -mno-android option.  Initialize based on
ANDROID_DEFAULT.
* config/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, CC1_SPEC, LIB_SPEC):
Move logic to corresponding LINUX_TARGET_* macros.
(TARGET_OS_CPP_BUILTINS): Define __ANDROID__, when appropriate.
* config/linux-eabi.h (LINK_SPEC, CC1_SPEC, CC1PLUS_SPEC, LIB_SPEC,)
(STARTFILE_SPEC, ENDFILE_SPEC): Define to choose between Linux and
Android definitions.
(LINUX_TARGET_OS_CPP_BUILTINS): Define __ANDROID__ if TARGET_ANDROID.
* doc/invoke.texi (-mandroid, -tno-android-cc, -tno-android-ld):
Document.

From-SVN: r159918

14 years agoAdd support for Bionic C library
Maxim Kuvyrkov [Thu, 27 May 2010 11:54:48 +0000 (11:54 +0000)]
Add support for Bionic C library

Add support for Bionic C library
gcc/
* config.gcc (LIBC_GLIBC, LIBC_BIONIC, LIBC_UCLIBC): New tm_define
macro.
(DEFAULT_LIBC): New tm_define macro set to one of LIBC_*.
(bfin*-uclinux, moxie-*-uclinux*, m68k-*-uclinux*): Update.

* config/linux.h (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC): Define.
(LINUX_TARGET_OS_CPP_BUILTINS): Define __gnu_linux__ only for GLIBC.
(CHOOSE_DYNAMIC_LINKER1, CHOOSE_DYNAMIC_LINKER): Make it easier
to support multiple C libraries.  Handle Bionic.
(BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,)
(BIONIC_DYNAMIC_LINKER64): Define.
(LINUX_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64):
Update.
(TARGET_HAS_SINCOS): Enable for Bionic.

* config/linux.opt: Rewrite to handle more than 2 C libraries.  Make
the last option specified on command line take effect.
(linux_uclibc): Rename to linux_libc, initialize using DEFAULT_LIBC.
(mbionic): New.
(mglibc, muclibc): Update.

* config/alpha/linux-elf.h, config/rs6000/linux64.h,
* config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Update to use
DEFAULT_LIBC.

* doc/invoke.texi (-mglibc, -muclibc): Update.
(-mbionic): Document.

gcc/testsuite/
* gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: Remove, no longer
necessary.

From-SVN: r159917

14 years agoc-common.h (c_register_addr_space): Add prototype.
Ulrich Weigand [Thu, 27 May 2010 11:46:06 +0000 (11:46 +0000)]
c-common.h (c_register_addr_space): Add prototype.

* c-common.h (c_register_addr_space): Add prototype.
(ADDR_SPACE_KEYWORD): Remove.
* c-common.c (c_register_addr_space): New function.
(c_addr_space_name): Reimplement.
(c_common_reswords): Do not include TARGET_ADDR_SPACE_KEYWORDS.

* config/spu/spu.h (TARGET_ADDR_SPACE_KEYWORDS): Remove.
(REGISTER_TARGET_PRAGMAS): Call c_register_addr_space.

* doc/tm.texi (Named Address Spaces): Mention c_register_addr_space.
Remove TARGET_ADDR_SPACE_KEYWORDS.

From-SVN: r159916

14 years agoChangeLog: Fix whitespace.
Uros Bizjak [Thu, 27 May 2010 11:36:26 +0000 (13:36 +0200)]
ChangeLog: Fix whitespace.

* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.

From-SVN: r159915

14 years agoinput.c: New file.
Joseph Myers [Thu, 27 May 2010 11:33:27 +0000 (12:33 +0100)]
input.c: New file.

* input.c: New file.
* input.h (main_input_filename): Move declaration to toplev.h.
* toplev.c (input_location, line_table): Move to input.c
* toplev.h (main_input_filename): Move declaration from input.h.
* tree.c (expand_location): Move to input.c.
* Makefile.in (OBJS-common): Add input.o.
(input.o): Add dependencies.

From-SVN: r159914

14 years agolto-wrapper.c (maybe_unlink_file): Ignore unlink failure for non-existant files.
Richard Guenther [Thu, 27 May 2010 10:33:08 +0000 (10:33 +0000)]
lto-wrapper.c (maybe_unlink_file): Ignore unlink failure for non-existant files.

2010-05-27  Richard Guenther  <rguenther@suse.de>

* lto-wrapper.c (maybe_unlink_file): Ignore unlink failure
for non-existant files.
(fork_execute): Mark args_name file as deleted.

From-SVN: r159913

14 years agore PR bootstrap/44287 (Failed to bootstrap)
Kai Tietz [Thu, 27 May 2010 08:13:58 +0000 (08:13 +0000)]
re PR bootstrap/44287 (Failed to bootstrap)

gcc/cp/
2010-05-27  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrap/44287
        * rtti.c (emit_support_tinfos): Check for NULL_TREE.
        * class.c (layout_class_type): Likewise.
        * decl.c (finish_enum): Likewise.
        * mangle.c (write_builitin_type): Likewise.

gcc/
2010-05-27  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrp/44287
        * c-lex.c (narrowest_unsigned_type): Check for NULL_TREE.
        (narrow_signed_type): Likewise.

From-SVN: r159912

14 years agomaterialize-1_0.c: New file.
Jan Hubicka [Thu, 27 May 2010 08:01:10 +0000 (10:01 +0200)]
materialize-1_0.c: New file.

* gcc.dg/lto/materialize-1_0.c: New file.
* gcc.dg/lto/materialize-1_1.c: New file.

From-SVN: r159911

14 years agocgraphunit.c (verify_cgraph_node): Do checking that DECL match edge only when checkin...
Jan Hubicka [Thu, 27 May 2010 02:07:01 +0000 (04:07 +0200)]
cgraphunit.c (verify_cgraph_node): Do checking that DECL match edge only when checking is enabled...

* cgraphunit.c (verify_cgraph_node): Do checking that DECL match
edge only when checking is enabled; check using former_clone_of;
check inline clones too.
(cgraph_materialize_clone): Record former_clone_of pointer.
(cgraph_redirect_edge_call_stmt_to_callee): Assert that we are not
combining redirections; dump args_to_skip bitmap
(cgraph_materialize_all_clones): Do no redirection here.
* ipa-inline.c (inline_transform): Do redirection here.
* cgraph.h (struct cgraph_node): Add former_clone_of filed (enabled
cheking only).

From-SVN: r159907

14 years agoDaily bump.
GCC Administrator [Thu, 27 May 2010 00:17:42 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159906

14 years agoavr-c.c: Do not include regs.h.
Steven Bosscher [Wed, 26 May 2010 22:45:08 +0000 (22:45 +0000)]
avr-c.c: Do not include regs.h.

* config/avr/avr-c.c: Do not include regs.h.
Include cpplib.h for cpp_define and tree.h for c-common.h.
* config/avr/avr-devices.c (avr_mcu_types): Fix initializer.
* config/avr/t-avr: Fix dependencies for avr-c.o.

From-SVN: r159901

14 years agoexplow.c (set_stack_check_libfunc): Adjust to accept name as a string instead of...
Steven Bosscher [Wed, 26 May 2010 21:46:22 +0000 (21:46 +0000)]
explow.c (set_stack_check_libfunc): Adjust to accept name as a string instead of SYMBOL_REF rtx.

gcc/ChangeLog:
* explow.c (set_stack_check_libfunc): Adjust to accept name as a
string instead of SYMBOL_REF rtx.
* rtl.h (set_stack_check_libfunc): Move prototype from here...
* libfuncs.h: ...to here.  Adjust for explow.c change.

ada/ChangeLog:
* gcc-interface/trans.c: Do not include rtl.h, insclude libfuncs.h.
(gigi): Adjust call to set_stack_check_libfunc.

From-SVN: r159900

14 years agojava-tree.h (struct lang_decl_func): Change type of throws_list field to a VEC.
Nathan Froyd [Wed, 26 May 2010 19:27:58 +0000 (19:27 +0000)]
java-tree.h (struct lang_decl_func): Change type of throws_list field to a VEC.

* java-tree.h (struct lang_decl_func): Change type of throws_list
field to a VEC.
* jcf-parse.c (HANDLE_EXCEPTIONS_ATTRIBUTE): Adjust for changed type
of DECL_FUNCTION_THROWS.
* class.c (make_method_value): Likewise.

From-SVN: r159899

14 years agopretty-print.c: Don't include ggc.h.
Joseph Myers [Wed, 26 May 2010 18:55:51 +0000 (19:55 +0100)]
pretty-print.c: Don't include ggc.h.

* pretty-print.c: Don't include ggc.h.
(identifier_to_locale_alloc, identifier_to_locale_free): Define.
(identifier_to_locale): Use them for allocation.
* pretty-print.h (identifier_to_locale_alloc,
identifier_to_locale_free): Declare.
* toplev.c (alloc_for_identifier_to_locale): New.
(general_init): Set identifier_to_locale_alloc and
identifier_to_locale_free.
* Makefile.in (pretty-print.o): Update dependencies.

From-SVN: r159898

14 years agoMove cplusplus parts into cp/ChangeLog and remove them from gcc's.
Kai Tietz [Wed, 26 May 2010 18:09:29 +0000 (20:09 +0200)]
Move cplusplus parts into cp/ChangeLog and remove them from gcc's.

From-SVN: r159897

14 years agogimple.c (gimple_types_compatible_p): Return 0 for aggregate and pointer types if...
Eric Botcazou [Wed, 26 May 2010 17:57:30 +0000 (17:57 +0000)]
gimple.c (gimple_types_compatible_p): Return 0 for aggregate and pointer types if they have different alignment or mode.

* gimple.c (gimple_types_compatible_p): Return 0 for aggregate and
pointer types if they have different alignment or mode.

From-SVN: r159896

14 years agoMAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.
Sterling Augustine [Wed, 26 May 2010 17:36:37 +0000 (17:36 +0000)]
MAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.

2010-05-25  Sterling Augustine <sterling@tensilica.com>

        * MAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.

From-SVN: r159894

14 years agosparc.h (FUNCTION_VALUE, [...]): Remove macros.
Anatoly Sokolov [Wed, 26 May 2010 17:12:20 +0000 (21:12 +0400)]
sparc.h (FUNCTION_VALUE, [...]): Remove macros.

* config/sparc/sparc.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
* config/sparc/sparc-protos.h (function_value): Remove declaration.
* config/sparc/sparc.c (sparc_function_value, sparc_libcall_value,
sparc_function_value_regno_p): New functions.
(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
TARGET_FUNCTION_VALUE_REGNO_P): Define.
(function_value): Rename to...
(sparc_function_value_1): ... this. Make static. Change 'incoming_p'
argument to 'outgoing'.
(function_arg_record_value, function_arg_union_value,
function_arg_vector_value): Update comment.

From-SVN: r159890

14 years agodwarf2out.c (struct dw_fde_struct): Reorder flags.
Eric Botcazou [Wed, 26 May 2010 16:55:35 +0000 (16:55 +0000)]
dwarf2out.c (struct dw_fde_struct): Reorder flags.

* dwarf2out.c (struct dw_fde_struct): Reorder flags.
(fde_needed_for_eh_p): New predicate.
(output_call_frame_info): Use it throughout to decide whether FDEs
are needed for EH purpose.
(dwarf2out_begin_prologue): Reorder assignments.

From-SVN: r159889

14 years agoDo not check the if-convertibility of statements that are not predicated.
Sebastian Pop [Wed, 26 May 2010 16:47:08 +0000 (16:47 +0000)]
Do not check the if-convertibility of statements that are not predicated.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (if_convertible_gimple_assign_stmt_p): Do not
special case loop->header.
(is_predicated): New.
(if_convertible_loop_p): Call it.

From-SVN: r159887

14 years agoReorganize the analysis of basic block predication.
Sebastian Pop [Wed, 26 May 2010 16:46:59 +0000 (16:46 +0000)]
Reorganize the analysis of basic block predication.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (add_to_dst_predicate_list): Do not pass a statemet
iterator in parameter.  Do not generate code during the analysis.
(tree_if_convert_cond_stmt): Removed.
(tree_if_convert_stmt): Removed.
(predicate_bbs): New.
(if_convertible_loop_p): Call predicate_bbs.
(tree_if_conversion): Simplify the top-level logic as predicate_bbs
now contains all the analysis part.

From-SVN: r159886

14 years agoRemove conditions in the code generation of if-conversion.
Sebastian Pop [Wed, 26 May 2010 16:46:49 +0000 (16:46 +0000)]
Remove conditions in the code generation of if-conversion.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (tree_if_convert_cond_stmt): Do not remove
statements in the analysis part.
(tree_if_convert_stmt): Update comment.
(remove_conditions_and_labels): New.
(combine_blocks): Call remove_conditions_and_labels.
(tree_if_conversion): Update comment.

From-SVN: r159885

14 years agoDon't handle BBs with more than 2 preds or succs.
Sebastian Pop [Wed, 26 May 2010 16:46:39 +0000 (16:46 +0000)]
Don't handle BBs with more than 2 preds or succs.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (if_convertible_bb_p): Don't handle BBs with more
than 2 predecessors or more than 2 successors.

From-SVN: r159884

14 years agoAvoid if-conversion of loops in which the data dependence analysis fails.
Sebastian Pop [Wed, 26 May 2010 16:46:25 +0000 (16:46 +0000)]
Avoid if-conversion of loops in which the data dependence analysis fails.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (if_convertible_loop_p): Avoid if-conversion
of loops in which the data dependence analysis fails.

From-SVN: r159883

14 years agoDo not compute/free CDI_POST_DOMINATORS.
Sebastian Pop [Wed, 26 May 2010 16:46:12 +0000 (16:46 +0000)]
Do not compute/free CDI_POST_DOMINATORS.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (if_convertible_loop_p): Do not compute/free
CDI_POST_DOMINATORS.
(tree_if_conversion): Same.

From-SVN: r159882

14 years agoMake tree_if_conversion not return a bool.
Sebastian Pop [Wed, 26 May 2010 16:45:56 +0000 (16:45 +0000)]
Make tree_if_conversion not return a bool.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c (tree_if_conversion): Do not return a bool.

From-SVN: r159881

14 years agoFix comments.
Sebastian Pop [Wed, 26 May 2010 16:45:47 +0000 (16:45 +0000)]
Fix comments.

2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

* tree-if-conv.c: Update copyright years.  Fix comments.
Fix indentation.

From-SVN: r159880

14 years agodemangle-expected: Add tests for __int128 and unsigned __int128 types.
Kai Tietz [Wed, 26 May 2010 16:13:55 +0000 (16:13 +0000)]
demangle-expected: Add tests for __int128 and unsigned __int128 types.

libiberty/

2010-05-26  Kai Tietz  <kai.tietz@onevision.com>

        * testsuite/demangle-expected: Add tests for __int128
        and unsigned __int128 types.

gcc/testsuite
2010-05-26  Kai Tietz  <kai.tietz@onevision.com>

* lib/target-supports.exp (check_effective_target_int128): New
function to check if __int128 types are available for target.
* testsuite/c-c++-common/int128-types-1.c: New.
* testsuite/c-c++-common/int128-1.c: New.
* testsuite/c-c++-common/int128-2.c: New.
* g++.dg/abi/mangle43.C: New.
* g++.dg/init/enum1.C: Handle __int128 case and add -Wno-overflow.
* g++.dg/cpp0x/nullptr04.C: Use __SIZE_TYPE__ for getting
pointer-wide scalar.
* g++.dg/other/pr25632.C: Likewise.
* g++.dg/other/large-size-array.C (DIM): Use ULLONG_MAX for win64 case.
* g++.dg/warn/pr13358-2.C: Add llp64 for check of special
overflow warnings.
* g++.dg/warn/pr13358-4.C: Likewise.
* g++.dg/warn/Wconversion-null-2.C:  Add 'long long' case.
* g++.dg/warn/Wconversion-null.C: Likewise.

gcc/
2010-05-26  Kai Tietz  <kai.tietz@onevision.com>

* builtin-types.def (BT_INT128): New primitive type.
(BT_UINT128): Likewise.
* c-common.c (c_common_r): Add __int128 keyword.
(c_common_type_for_size): Handle __int128.
(c_common_type_for_mode): Likewise.
(c_common_signed_or_unsigned_type): Likewise.
(c_common_nodes_and_builtins): Add builtin type
if target supports 128-bit integer scalar.
* c-common.h (enum rid): Add RID_INT128.
* c-cppbuiltin.c (c_cpp_builtins): Define __SIZEOF_INT128__
if target supports 128-bit integer scalar.
* c-decl.c (declspecs_add_type): Handle new keyword
__int128.
(finish_declspecs): Likewise.
* c-parser.c (c_token_starts_typename): Handle RID_INT128.
(c_token_starts_declspecs): Likewise.
(c_parser_declspecs): Likewise.
(c_parser_attributes): Likewise.
(c_parser_objc_selector): Likewise.
* c-pretty-print.c (pp_c_integer_constant): Handle __int128.
* c-tree.h (enum c_typespec_keyword): Add cts_int128.
* gimple.c (gimple_signed_or_unsigned_type): Handle int128 types.
* tree.c (make_or_reuse_type): Likewise.
(make_unsigned_type): Likewise.
(build_common_tree_nodes_2): Likewise.
* tree.h (enum integer_type_kind): Add itk_int128 and
itk_unsigned_int128.
(int128_integer_type_node): New define..
(int128_unsigned_type_node): New define.
* cp/cp-tree.h (cp_decl_specifier_seq): Add new bifield
explicit_int128_p.
* cp/decl.c (grokdeclarator): Handle __int128.
* cp/parser.c (cp_lexer_next_token_is_decl_specifier_ke): Likewise.
(cp_parser_simple_type_specifier): Likewise.
* cp/rtti.c (emit_support_tinfos): Add int128 nodes for rtti.
* cp/typeck.c (cp_common_type): Handle __int128.
* cp/mangle.c (integer_type_codes): Add itk_int128 and
itk_unsigned_int128.
* doc/extend.texi: Add documentation about __int128 type.

From-SVN: r159879

14 years agotree-ssa-sccvn.c (copy_nary): Adjust.
Richard Guenther [Wed, 26 May 2010 15:35:03 +0000 (15:35 +0000)]
tree-ssa-sccvn.c (copy_nary): Adjust.

2010-05-26  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (copy_nary): Adjust.
(copy_phis): Rename to ...
(copy_phi): ... this.  Adjust.
(copy_references): Rename to ...
(copy_reference): ... this.  Adjust.
(process_scc): Use HTAB_FOR_EACH_ELEMENT to insert the
result into the valid table.

From-SVN: r159877

14 years agospu-c.c: Do not include function.h...
Steven Bosscher [Wed, 26 May 2010 15:23:00 +0000 (15:23 +0000)]
spu-c.c: Do not include function.h...

* config/spu/spu-c.c: Do not include function.h, rtl.h, expr.h,
insn-config.h, insn-codes.h, recog.h, and optabs.h.

From-SVN: r159876

14 years agoggc.h (ggc_min_expand_heuristic, [...]): Remove.
Laurynas Biveinis [Wed, 26 May 2010 15:08:28 +0000 (15:08 +0000)]
ggc.h (ggc_min_expand_heuristic, [...]): Remove.

2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic):
Remove.

From-SVN: r159874

14 years agore PR c++/43382 ([C++0x] ICE with auto return type and variadic templates)
Jason Merrill [Wed, 26 May 2010 15:00:02 +0000 (11:00 -0400)]
re PR c++/43382 ([C++0x] ICE with auto return type and variadic templates)

PR c++/43382
* pt.c (fn_type_unification): Don't get confused by recursive
unification.

From-SVN: r159873

14 years agoopts.c (common_handle_option): Handle OPT_Ofast.
Richard Guenther [Wed, 26 May 2010 14:41:45 +0000 (14:41 +0000)]
opts.c (common_handle_option): Handle OPT_Ofast.

2010-05-26  Richard Guenther  <rguenther@suse.de>

* opts.c (common_handle_option): Handle OPT_Ofast.

From-SVN: r159871

14 years agoclass.c (utf8_decl_list): Delete.
Nathan Froyd [Wed, 26 May 2010 13:55:30 +0000 (13:55 +0000)]
class.c (utf8_decl_list): Delete.

* class.c (utf8_decl_list): Delete.
(build_utf8_ref): Remove references to it.
* java-tree.h (all_class_list): Delete.
(predef_filenames): Delete.
(enum java_tree_index) [JTI ALL_CLASS_LIST,JTI_PREDEF_FILENAMES]:
Delete.
* jcf-parse.c (parse_roots): Decrease size to 2.
(current_file_list): Convert to a VEC.
(all_class_list): Declare.
(jcf_parse): Adjust for new type of all_class_list.
(java_layout_seen_class_methods): Likewise.
(predefined_filenames): Declare.
(add_predefined_file): Use it.
(predefined_filename_p): Likewise.
(java_parse_file): Adjust for new type of current_file_list.                                                                                                                                                     *

From-SVN: r159870

14 years agodiagnostic.c: Don't include opts.h.
Joseph Myers [Wed, 26 May 2010 13:40:53 +0000 (14:40 +0100)]
diagnostic.c: Don't include opts.h.

* diagnostic.c: Don't include opts.h.
(permissive_error_option): Define.
(diagnostic_initialize): Take n_opts parameter.  Allocate memory
for classify_diagnostic.  Don't use memset for
classify_diagnostic.  Initialize new and recently added fields.
(diagnostic_classify_diagnostic): Use context->n_opts instead of
N_OPTS.
(diagnostic_report_diagnostic): Pass context parameter to
diagnostic_report_warnings_p.  Use option_enabled and option_name
hooks from context.
(emit_diagnostic): Use permissive_error_option.
(permerror): Likewise.
* diagnostic.h: Don't include options.h.
(struct diagnostic_context): Add n_opts, opt_permissive,
inhibit_warnings, warn_system_headers, option_enabled and
option_name fields.  Change classify_diagnostic to a pointer.
* opts-diagnostic.h: New file.
* opts.c: Include opts-diagnostic.h.
(common_handle_option): Set global_dc fields for -Wfatal-errors,
-Wsystem-headers, -fshow-column, -pedantic-errors and -w.
(option_name): New function.
* c-opts.c (c_common_init_options): Set global_dc->opt_permissive.
(c_common_handle_option): Set global_dc->permissive for
-fpermissive.
* c-common.c (c_cpp_error): Save and restore
global_dc->warn_system_headers, not variable warn_system_headers.
* toplev.c: Include opts-diagnostic.h.
(general_init): Update call to diagnostic_initialize.  Set
global_dc->show_column, global_dc->option_enabled and
global_dc->option_name.
(process_options): Don't set global_dc fields here.
* Makefile.in (DIAGNOSTIC_H): Remove options.h.
(diagnostic.o, opts.o, toplev.o): Update dependencies.

fortran:
* cpp.c (cb_cpp_error): Save and restore
global_dc->warn_system_headers, not variable warn_system_headers.

From-SVN: r159869

14 years agopicochip.md (movsi): Split a movsi from a const after reload.
Hariharan Sandanagobalane [Wed, 26 May 2010 12:20:31 +0000 (12:20 +0000)]
picochip.md (movsi): Split a movsi from a const after reload.

* config/picochip/picochip.md (movsi): Split a movsi from a
const after reload.

From-SVN: r159867

14 years agoggc-zone.c: Update copyright year.
Laurynas Biveinis [Wed, 26 May 2010 11:24:42 +0000 (11:24 +0000)]
ggc-zone.c: Update copyright year.

2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* ggc-zone.c: Update copyright year.
(poison_region): Mark memory for Valgrind as undefined before
memset () call and inaccessible afterwards.
(ggc_pch_total_size): Change type of i to int.

2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* ggc-common.c (ggc_free_overhead): Allow empty slot.

2010-05-26  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* ggc-common.c: Update copyright year.
(ggc_rlimit_bound): Remove prototype.  Compile only if
!ENABLE_GC_CHECKING && !ENABLE_GC_ALWAYS_COLLECT.
(ggc_min_heapsize_heuristic): Compile only if !ENABLE_GC_CHECKING
&& !ENABLE_GC_ALWAYS_COLLECT.  Make static.
(ggc_min_heapsize_heuristic): Likewise.

From-SVN: r159863

14 years ago* lto-lang.c: Do not include expr.h.
Steven Bosscher [Wed, 26 May 2010 10:34:40 +0000 (10:34 +0000)]
* lto-lang.c: Do not include expr.h.

From-SVN: r159862

14 years agore PR rtl-optimization/44164 (Aliasing bug triggered by Boost.Bind/Boost.Function)
Richard Guenther [Wed, 26 May 2010 10:30:31 +0000 (10:30 +0000)]
re PR rtl-optimization/44164 (Aliasing bug triggered by Boost.Bind/Boost.Function)

2010-05-26  Richard Guenther  <rguenther@suse.de>

PR rtl-optimization/44164
* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
no-common access-path disambiguation.
(indirect_ref_may_alias_decl_p): Adjust.
(indirect_refs_may_alias_p): Likewise.
(refs_may_alias_p_1): Likewise.

* gcc.c-torture/execute/pr44164.c: New testcase.
* g++.dg/tree-ssa/pr13146.C: Adjust.

From-SVN: r159861

14 years ago* c-typeck.c: Do not include expr.h.
Steven Bosscher [Wed, 26 May 2010 09:53:37 +0000 (09:53 +0000)]
* c-typeck.c: Do not include expr.h.

From-SVN: r159860

14 years ago* cp-lang.c: Do not include expr.h.
Steven Bosscher [Wed, 26 May 2010 09:52:56 +0000 (09:52 +0000)]
* cp-lang.c: Do not include expr.h.

From-SVN: r159859

14 years ago* fortran/f95-lang.c: Do not include libfuncs.h, expr.h, and except.h.
Steven Bosscher [Wed, 26 May 2010 09:52:03 +0000 (09:52 +0000)]
* fortran/f95-lang.c: Do not include libfuncs.h, expr.h, and except.h.

From-SVN: r159858

14 years agortl.h (decl_default_tls_model): Move prototype from here...
Steven Bosscher [Wed, 26 May 2010 08:36:49 +0000 (08:36 +0000)]
rtl.h (decl_default_tls_model): Move prototype from here...

gcc/ChangeLog:
* rtl.h (decl_default_tls_model): Move prototype from here...
* output.h: ...to here.
* c-decl.c: Do not include rtl.h.
* c-pragma.c: Likewise.
* c-parser.c: Likewise.
* c-gimplify.c: Likewise.  And also not hard-reg-set.
* c-common.c: Do not include rtl.h.  Include tm_p.h and add a
FIXME note for it.  Add a FIXME note for expr.h.
* config/i386/i386-protos.h (ix86_enum_va_list, ix86_fn_abi_va_list,
ix86_canonical_va_list_type): Make visible even if RTX_CODE is not
defined.

cp/ChangeLog:
* decl.c: Do not include rtl.h
* semantics.c: Likewise.

ada/ChangeLog:
* gcc-interface/utils.c: Do not include rtl.h.

fortran/ChangeLog:
* trans-common.c: Do not include rtl.h, include output.h instead.
* trans-decl.c: Likewise.

From-SVN: r159856

14 years agore PR target/44199 (ppc64 glibc miscompilation)
Jakub Jelinek [Wed, 26 May 2010 06:00:44 +0000 (08:00 +0200)]
re PR target/44199 (ppc64 glibc miscompilation)

PR target/44199
* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
or total_size is larger than red zone size for non-V4 ABI, emit a
stack_tie resp. frame_tie insn before stack pointer restore.
* config/rs6000/rs6000.md (frame_tie): New insn.

From-SVN: r159853

14 years agore PR fortran/40011 (Problems with -fwhole-file)
Paul Thomas [Wed, 26 May 2010 05:11:04 +0000 (05:11 +0000)]
re PR fortran/40011 (Problems with -fwhole-file)

2010-05-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40011
* resolve.c (resolve_global_procedure): Resolve the gsymbol's
namespace before trying to reorder the gsymbols.

2010-05-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40011
* gfortran.dg/whole_file_19.f90 : New test.

From-SVN: r159852

14 years agoDaily bump.
GCC Administrator [Wed, 26 May 2010 00:17:44 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159851

14 years agofunction.h (struct function): Add can_throw_non_call_exceptions bit.
Eric Botcazou [Tue, 25 May 2010 22:34:36 +0000 (22:34 +0000)]
function.h (struct function): Add can_throw_non_call_exceptions bit.

* function.h (struct function): Add can_throw_non_call_exceptions bit.
* lto-streamer-in.c (input_function): Stream it in.
* lto-streamer-out.c (output_function): Stream it out.
* function.c (allocate_struct_function): Set it.
(expand_function_end): Substitute cfun->can_throw_non_call_exceptions
for flag_non_call_exceptions.
* cfgbuild.c (control_flow_insn_p): Likewise.
(make_edges): Likewise.
* cfgexpand.c (expand_stack_alignment): Likewise.
* combine.c (distribute_notes): Likewise.
* cse.c (cse_extended_basic_block): Likewise.
* except.c (insn_could_throw_p): Likewise.
* gcse.c (simple_mem): Likewise.
* ipa-pure-const.c (check_call): Likewise.
(check_stmt ): Likewise.
* lower-subreg.c (lower-subreg.c): Likewise.
* optabs.c (emit_libcall_block): Likewise.
(prepare_cmp_insn): Likewise.
* postreload-gcse.c (eliminate_partially_redundant_loads): Likewise.
* postreload.c (rest_of_handle_postreload): Likewise.
* reload1.c (reload_as_needed): Likewise.
(emit_input_reload_insns): Likewise.
(emit_output_reload_insns): Likewise.
(fixup_abnormal_edges): Likewise.
* sel-sched-ir.c (init_global_and_expr_for_insn): Likewise.
* store-motion.c (find_moveable_store): Likewise.
* tree-eh.c (stmt_could_throw_p): Likewise.
(tree_could_throw_p): Likewise.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
* config/arm/arm.c (arm_expand_prologue): Likewise.
(thumb1_expand_prologue): Likewise.
* config/rx/rx.md (cbranchsf4): Likewise.
(cmpsf): Likewise.
* config/s390/s390.c (s390_emit_prologue): Likewise.
* tree-inline.c (initialize_cfun): Copy can_throw_non_call_exceptions.
(inline_forbidden_into_p): New predicate.
(expand_call_inline): Use it to forbid inlining.
(tree_can_inline_p): Likewise.

From-SVN: r159847

14 years agoi386-c.c: Do not include rtl.h.
Steven Bosscher [Tue, 25 May 2010 22:33:00 +0000 (22:33 +0000)]
i386-c.c: Do not include rtl.h.

* config/i386/i386-c.c: Do not include rtl.h.
* config/i386/t-i386: Update dependencies.

From-SVN: r159846

14 years agoattribs.c: Do not include rtl.h.
Steven Bosscher [Tue, 25 May 2010 22:31:19 +0000 (22:31 +0000)]
attribs.c: Do not include rtl.h.

* attribs.c: Do not include rtl.h.
* Makefile.in: Update dependencies.

From-SVN: r159845

14 years agoutils.c: Do not include function.h, pointer-set.h, and gimple.h.
Steven Bosscher [Tue, 25 May 2010 21:07:40 +0000 (21:07 +0000)]
utils.c: Do not include function.h, pointer-set.h, and gimple.h.

* gcc-interface/utils.c: Do not include function.h, pointer-set.h,
and gimple.h.  Explain why rtl.h has to be included.
(handle_vector_size_attribute): Call reconstruct_complex_type directly.
* gcc-interface/targtyps.c: Do not include tm_p.h
* gcc-interface/utils2.c: Do not include flags.h.
* gcc-interface/trans.c: Do not include expr.h.  Include rtl.h instead,
and explain why it has to be included.
* gcc-interface/misc.c: Do not include expr.h, libfuncs.h, cgraph.h,
and optabs.h.
Include function.h and explain why.  Explain why except.h is included.
(enumerate_modes): Remove unused function.
* gcc-interface/gigi.h (enumerate_modes): Remove prototype.
* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r159844

14 years agodouble-int.h (double_int_and): New.
Anatoly Sokolov [Tue, 25 May 2010 19:48:40 +0000 (23:48 +0400)]
double-int.h (double_int_and): New.

* double-int.h (double_int_and): New.
* combine.c (try_combine): Clean up, use double_int_* and
immed_double_int_const functions.

From-SVN: r159842

14 years agoconfigure.ac: Redirect grep stdout, stderr to /dev/null instead of grep -q.
Rainer Orth [Tue, 25 May 2010 18:50:01 +0000 (18:50 +0000)]
configure.ac: Redirect grep stdout, stderr to /dev/null instead of grep -q.

libjava:
* configure.ac: Redirect grep stdout, stderr to /dev/null instead
of grep -q.
Use -- instead of grep -e.
* configure: Regenerate.

gcc:
* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
stderr to /dev/null instead of grep -q.
* configure: Regenerate.

contrib:
* dg-extract-results.sh: Redirect grep output to /dev/null instead
of grep -q.

From-SVN: r159840

14 years agoMakefile.in (EXCEPT_H): Fix typo.
Steven Bosscher [Tue, 25 May 2010 18:14:23 +0000 (18:14 +0000)]
Makefile.in (EXCEPT_H): Fix typo.

gcc/ChangeLog:
* Makefile.in (EXCEPT_H): Fix typo.

objc/ChangeLog:
* objc-act.h: Do not include gimple.h.
* objc-act.c: Do not include rtl.h, expr.h, libfuncs.h, and tm_p.h.
Include gimple.h.  Explain why except.h has to be included.
* objc-lang.c: Do not include diagnostics.h.
* Make-lang.in: Update dependencies.

objcp/ChangeLog:
* objcp-decl.c: Do not include tm.h, rtl.h, expr.h, c-common.h,
flags.h, input.h, except.h, output.h, toplev.h, cpplib.h, debug.h,
and target.h.
* objcp-lang.c: Do not include tm.h, toplev.h, diagnostics.h,
and debug.h.  Explain why except.h has to be included.
* Make-lang.in: Update dependencies.

cp/ChangeLog:
* cp-tree.h: Do not include splay-tree.h.
(struct prtmem_cst): Remove unused field and false comment.
* typeck.c: Do not include rtl.h, expr.h, and tm_p.h.
* optimize.c: Do not inclde rtl.h, insn-config.h, and integrate.h.
* init.c: Do not include rtl.h and expr.h.
* class.c: Do not include rtl.h.  Include splay-tree.h.
(build_clone): Use plain NULL instead of NULL_RTX.
* decl.c: Do not include expr.h.  Explain why rtl.h has to be
included.  Include splay-tree.h.
* method.c: Do not include rtl.h and expr.h.
(use_thunk): Use plain NULL instead of NULL_RTX.
* except.c: Do not include rtl.h, expr.h, and libfuncs.h.
* tree.c: Do not include rtl.h, insn-config.h, integrate.h,
and target.h.  Include splay-tree.h.
* expr.c: Do not include rtl.h and expr.h.
* pt.c: Do not include obstack.h and rtl.h.
(tsubst_friend_function): Use plain NULL instead of NULL_RTX.
(tsubst_decl): Likewise.
(instantiate_decl): Likewise.
* semantics.c: Do not include exprt.h and debug.h.  Explain why
rtl.h has to be included.
* decl2.c: Do not include rtl.h and expr.h.  Include splay-tree.h.
* call.c: Do not include rtl.h and expr.h.
* search.c: Do not include obstack.h and rtl.h.
* friend.c: Do not include rtl.h and expr.h.
* Make-lang.in: Update dependencies.

From-SVN: r159839

14 years agore PR fortran/30668 (-fwhole-file should catch function of wrong type)
Daniel Franke [Tue, 25 May 2010 18:10:01 +0000 (14:10 -0400)]
re PR fortran/30668 (-fwhole-file should catch function of wrong type)

gcc/fortran/:
2010-05-25  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/30668
PR fortran/31346
PR fortran/34260
* resolve.c (resolve_global_procedure): Add check for global
procedures with implicit interfaces and assumed-shape or optional
dummy arguments. Verify that function return type, kind and string
lengths match.

gcc/testsuite/:
2010-05-25  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/30668
PR fortran/31346
PR fortran/34260
* gfortran.dg/pr40999.f: Fix function type.
* gfortran.dg/whole_file_5.f90: Likewise.
* gfortran.dg/whole_file_6.f90: Likewise.
* gfortran.dg/whole_file_16.f90: New.
* gfortran.dg/whole_file_17.f90: New.
* gfortran.dg/whole_file_18.f90: New.

From-SVN: r159838

14 years agomangle40.C: Adjust dg-require-alias syntax.
Jack Howarth [Tue, 25 May 2010 17:26:38 +0000 (17:26 +0000)]
mangle40.C: Adjust dg-require-alias syntax.

2010-05-25  Jack Howarth <howarth@bromo.med.uc.edu>
    Iain Sandoe  <iains@gcc.gnu.org>

* g++.dg/abi/mangle40.C: Adjust dg-require-alias syntax.
* gcc.c-torture/compile/pr44197.c: Require alias support.
* gcc.dg/lto/20081222_0.c: Ditto.

Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>
From-SVN: r159837

14 years agolang.c (java_classify_record): Return RECORD_IS_INTERFACE for interfaces.
Jakub Jelinek [Tue, 25 May 2010 17:12:39 +0000 (19:12 +0200)]
lang.c (java_classify_record): Return RECORD_IS_INTERFACE for interfaces.

* lang.c (java_classify_record): Return RECORD_IS_INTERFACE
for interfaces.

From-SVN: r159835

14 years agoobjc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance mismatch code for...
Nathan Froyd [Tue, 25 May 2010 16:59:56 +0000 (16:59 +0000)]
objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance mismatch code for VECs.

* objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance
mismatch code for VECs.

From-SVN: r159834

14 years agore PR libgcj/44216 (All libjava tests fail on IRIX 6.5: ld warns about -no-merge...
Rainer Orth [Tue, 25 May 2010 16:59:45 +0000 (16:59 +0000)]
re PR libgcj/44216 (All libjava tests fail on IRIX 6.5: ld warns about -no-merge-exidx-entries)

PR libgcj/44216
* configure.ac (libgcj_cv_exidx): Enable AC_LANG_WERROR.
Save and restore werror flag.
* configure: Regenerate.

From-SVN: r159833

14 years agoRename misnamed test.
Jakub Jelinek [Tue, 25 May 2010 16:30:56 +0000 (18:30 +0200)]
Rename misnamed test.

From-SVN: r159831

14 years agoira-build.c (update_conflict_hard_reg_costs): New.
Vladimir Makarov [Tue, 25 May 2010 16:29:38 +0000 (16:29 +0000)]
ira-build.c (update_conflict_hard_reg_costs): New.

        * ira-build.c (update_conflict_hard_reg_costs): New.
        (ira_build): Call update_conflict_hard_reg_costs.

From-SVN: r159830

14 years agore PR debug/41371 (var-tracking is slow and memory hungry)
Jakub Jelinek [Tue, 25 May 2010 16:27:03 +0000 (18:27 +0200)]
re PR debug/41371 (var-tracking is slow and memory hungry)

PR debug/41371
* var-tracking.c (find_loc_in_1pdv): Guard asserts with
ENABLE_CHECKING.
(intersect_loc_chains): Walk the s2var's loc_chain together
with s1node chain as long as the locations are equal, don't
call find_loc_in_1pdv in that case.

From-SVN: r159829

14 years agore PR debug/43260 (Java static class members lack DWARF location info)
Jakub Jelinek [Tue, 25 May 2010 16:19:11 +0000 (18:19 +0200)]
re PR debug/43260 (Java static class members lack DWARF location info)

PR debug/43260
* java-tree.h (pending_static_fields): New extern declaration.
(java_write_globals): New prototype.
* lang.c (LANG_HOOKS_WRITE_GLOBALS): Define.
* decl.c (java_mark_class_local): When clearing DECL_EXTERNAL
of a static field push it into pending_static_fields vector.
* class.c (pending_static_fields): New variable.
(add_field): If static field is not DECL_EXTERNAL, push it into
pending_static_fields vector.
(java_write_globals): New function.

From-SVN: r159828

14 years agore PR c++/18249 (C++ parser i18n problems)
Jakub Jelinek [Tue, 25 May 2010 16:17:32 +0000 (18:17 +0200)]
re PR c++/18249 (C++ parser i18n problems)

PR c++/18249
* parser.c (non_integral_constant): Add NIC_NONE.
(required_token): Add RT_NONE.
(cp_parser_unary_expression): Initialize non_constant_p
to NIC_NONE.
(cp_parser_asm_definition): Initialize missing to RT_NONE.
(cp_parser_primary_expression, cp_parser_postfix_expression,
cp_parser_cast_expression, cp_parser_binary_expression,
cp_parser_functional_cast): Fix formatting.

From-SVN: r159827

14 years agore PR debug/42801 (C VLAs should use DW_AT_allocated)
Jakub Jelinek [Tue, 25 May 2010 16:15:38 +0000 (18:15 +0200)]
re PR debug/42801 (C VLAs should use DW_AT_allocated)

PR debug/42801
* tree-inline.c (remap_decls): Remap DECL_VALUE_EXPR here...
(copy_bind_expr): ... instead of here.
(copy_tree_body_r): If id->remapping_type_depth clear TREE_BLOCK
if the block hasn't been remapped.
* dwarf2out.c (gen_formal_parameter_die, gen_variable_die): When
emitting concrete instance of abstract VLA, add DW_AT_type attribute.

* gcc.dg/guality/sra-2.c: New test.

From-SVN: r159826

14 years agore PR middle-end/44069 (optimization bug initializing from cast array)
Richard Guenther [Tue, 25 May 2010 15:49:34 +0000 (15:49 +0000)]
re PR middle-end/44069 (optimization bug initializing from cast array)

2010-05-25  Richard Guenther  <rguenther@suse.de>

PR middle-end/44069
* gimple-fold.c (maybe_fold_stmt_addition): Avoid generating
out-of-bounds array accesses.

* g++.dg/torture/pr44069.C: New testcase.

From-SVN: r159824

14 years agolto-wrapper.c (nr, [...]): Globalize.
Richard Guenther [Tue, 25 May 2010 15:47:28 +0000 (15:47 +0000)]
lto-wrapper.c (nr, [...]): Globalize.

2010-05-25  Richard Guenther  <rguenther@suse.de>

* lto-wrapper.c (nr, input_names, output_names, makefile): Globalize.
(lto_wrapper_exit): Unlink all LTRANS temporary files on error.
(run_gcc): Re-organize to make cleanup easier.

From-SVN: r159823

14 years agos390.c (optimization_options): Fix and move the flag_prefetch_loop_arrays override ...
Andreas Krebbel [Tue, 25 May 2010 15:19:55 +0000 (15:19 +0000)]
s390.c (optimization_options): Fix and move the flag_prefetch_loop_arrays override ...

2010-05-25  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (optimization_options): Fix and move the
flag_prefetch_loop_arrays override ...
(override_options): ... here.

From-SVN: r159822

14 years agoobjc-act.c (objc_build_constructor): Take a VEC instead of a tree.
Nathan Froyd [Tue, 25 May 2010 13:56:13 +0000 (13:56 +0000)]
objc-act.c (objc_build_constructor): Take a VEC instead of a tree.

* objc-act.c (objc_build_constructor): Take a VEC instead of a tree.
Use build_constructor instead of build_constructor_from_list.
(objc_build_string_object): Build a VEC argument for
objc_build_constructor.
(init_def_list): Likewise.
(init_objc_symtab): Likewise.
(init_module_descriptor): Likewise.
(generate_static_references): Likewise.
(build_selector_translation_table): Likewise.
(build_descriptor_table_initializer): Likewise.
(generate_descriptor_table): Likewise.
(build_protocol_initializer): Likewise.
(build_ivar_list_initializer): Likewise.
(generate_ivars_list): Likewise.
(build_dispatch_table_initializer): Likewise.
(generate_dispatch_table): Likewise.
(generate_protocol_list): Likewise.
(build_category_initializer): Likewise.
(build_shared_structure_initializer): Likewise.
(generate_objc_image_info): Likewise.

From-SVN: r159821

14 years agoconfig.sub: Update to version 2010-05-21.
Maxim Kuvyrkov [Tue, 25 May 2010 13:22:07 +0000 (13:22 +0000)]
config.sub: Update to version 2010-05-21.

* config.sub: Update to version 2010-05-21.
* config.guess: Update to version 2010-04-03.

Also, move a changelog entry to correct ChangeLog.

From-SVN: r159820

14 years agodiagnostic.c: Don't include plugin.h.
Joseph Myers [Tue, 25 May 2010 13:01:45 +0000 (14:01 +0100)]
diagnostic.c: Don't include plugin.h.

* diagnostic.c: Don't include plugin.h.
(diagnostic_report_diagnostic): Don't handle plugins specially
here.  Pass context to internal_error callback.
* diagnostic.h (struct diagnostic_context): Add context parameter
to internal_error callback.
* plugin.c (warn_if_plugins, plugins_internal_error_function):
New.
* plugin.h (struct diagnostic_context): Declare.
(warn_if_plugins, plugins_internal_error_function): Declare.
* toplev.c (general_init): Set global_dc->internal_error.
* Makefile.in (diagnostic.o): Update dependencies.

ada:
* gcc-interface/misc.c (internal_error_function): Add context
parameter.  Use it to access show_column flag and instead of using
global_dc.  Call warn_if_plugins.
* gcc-interface/Make-lang.in (ada/misc.o): Update dependencies.

From-SVN: r159819

14 years agosra-10.c: Do not dump esra details.
Richard Guenther [Tue, 25 May 2010 12:57:38 +0000 (12:57 +0000)]
sra-10.c: Do not dump esra details.

2010-05-25  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/sra-10.c: Do not dump esra details.

From-SVN: r159818

14 years agoenable multilibs on powerpc64-apple-darwin
Iain Sandoe [Tue, 25 May 2010 11:59:45 +0000 (11:59 +0000)]
enable multilibs on powerpc64-apple-darwin

* config/rs6000/darwin64.h: Update DARWIN_ARCH_SPEC.
* config/rs6000/t-darwin64: New.
* config.gcc (powerpc64-*-darwin*): Use darwin.opts, t-darwin64,
build crt2.

From-SVN: r159817

14 years agore PR middle-end/44203 (New prefetch test failures)
Christian Borntraeger [Tue, 25 May 2010 11:18:07 +0000 (11:18 +0000)]
re PR middle-end/44203 (New prefetch test failures)

2010-05-25  Christian Borntraeger  <borntraeger@de.ibm.com>

PR 44203
* tree-ssa-loop-prefetch.c: Fix logic for step calculation to
match the original (and intended) behaviour before r159557.  This
changeset changed a=a+b*c to a=(a+b)*b which was obviously wrong
in two ways.

From-SVN: r159816

14 years agoinvoke.texi: Document -Ofast.
Richard Guenther [Tue, 25 May 2010 09:43:59 +0000 (09:43 +0000)]
invoke.texi: Document -Ofast.

2010-05-25  Richard Guenther  <rguenther@suse.de>

* doc/invoke.texi: Document -Ofast.
* target.h (struct gcc_target): Add handle_ofast.
* target-def.h (TARGET_HANDLE_OFAST): Add.
(TARGET_INITIALIZER): Adjust.
* opts.c (decode_options): Handle -Ofast.  Enable
-ffast-math with it.
* common.opt (Ofast): Add.

From-SVN: r159815

14 years agotm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.
Paolo Bonzini [Tue, 25 May 2010 09:22:41 +0000 (09:22 +0000)]
tm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.

2010-05-25  Paolo Bonzini  <bonzini@gnu.org>

* doc/tm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.
* doc/md.texi (cstoreXX4): Update for cond-optab changes.

From-SVN: r159814

14 years agore PR target/43610 (ICE: in prepare_float_lib_cmp, at optabs.c:4392 with -fno-trappin...
Paolo Bonzini [Tue, 25 May 2010 09:19:37 +0000 (09:19 +0000)]
re PR target/43610 (ICE: in prepare_float_lib_cmp, at optabs.c:4392 with -fno-trapping-math and _Decimal64 comparison)

2010-05-09  Paolo Bonzini  <bonzini@gnu.org>

PR target/43610
* optabs.c (prepare_float_lib_cmp): Allow reversing the comparison
even if !FLOAT_LIB_COMPARE_RETURNS_BOOL.  Always compute true_rtx and
false_rtx.  Use false_rtx to compute the correct *ptest for reversed
comparisons for which !FLOAT_LIB_COMPARE_RETURNS_BOOL.

From-SVN: r159813

14 years agore PR objc/44140 (ObjC lto/whopr fails)
Iain Sandoe [Tue, 25 May 2010 09:10:52 +0000 (09:10 +0000)]
re PR objc/44140 (ObjC lto/whopr fails)

PR ObjC/44140
* objc.dg/torture/tls/thr-init-3.m: XFAIL lto/whopr for all.

From-SVN: r159812

14 years agoadd TLS checks to ObjC++
Iain Sandoe [Tue, 25 May 2010 08:28:44 +0000 (08:28 +0000)]
add TLS checks to ObjC++

* obj-c++.dg/torture/tls/trivial.mm: New.
* obj-c++.dg/torture/tls/thr-init-1.mm: New.
* obj-c++.dg/torture/tls/thr-init-2.mm: New.
* obj-c++.dg/torture/tls/thr-init-3.mm: New.
* obj-c++.dg/torture/tls/diag-1.mm: New.
* obj-c++.dg/torture/tls/tls.exp: New.
* obj-c++.dg/torture/trivial.mm: New.
* obj-c++.dg/torture/dg-torture.exp: New.
* obj-c++.dg/dg.exp: Gather tests explicitly from the source dir.
* obj-c++.dg/tls/trivial.m: New.
* obj-c++.dg/tls/init-1.mm: New.
* obj-c++.dg/tls/diag-1.mm: New.
* obj-c++.dg/tls/init-2.mm: New.
* obj-c++.dg/tls/diag-2.mm: New.
* obj-c++.dg/tls/diag-3.mm: New.
* obj-c++.dg/tls/diag-4.mm: New.
* obj-c++.dg/tls/static-1.mm: New.
* obj-c++.dg/tls/tls.exp: New.
* obj-c++.dg/tls/diag-5.mm: New.
* obj-c++.dg/tls/static-1a.mm: New.
* objc-obj-c++-shared/Object1.mm: New.
* lib/obj-c++-dg.exp (obj-c++-dg-runtest): New proc.

From-SVN: r159810

14 years agodwarf2out.c (loc_descr_plus_const): When offset is negative, use DW_OP_minus with...
Jakub Jelinek [Tue, 25 May 2010 07:49:16 +0000 (09:49 +0200)]
dwarf2out.c (loc_descr_plus_const): When offset is negative, use DW_OP_minus with negated offset instead of DW_OP_plus.

* dwarf2out.c (loc_descr_plus_const): When offset is negative, use
DW_OP_minus with negated offset instead of DW_OP_plus.
(loc_list_from_tree): Don't test whether second operand is
INTEGER_CST.

From-SVN: r159809

14 years agore PR c++/18249 (C++ parser i18n problems)
Shujing Zhao [Tue, 25 May 2010 06:26:07 +0000 (06:26 +0000)]
re PR c++/18249 (C++ parser i18n problems)

2010-05-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c++/18249
        * parser.c: Remove inclusion of dyn-string.h.
        (non_integral_constant): New enum.
        (name_lookup_error): New enum.
        (required_token): New enum.
        (cp_parser_required_error): New function.
        (cp_parser_require): Change the type of variable token_desc to
        required_token and use cp_parser_required_error.
        (cp_parser_require_keyword): Likewise.
        (cp_parser_error): Use gmsgid as parameter.
        (cp_parser_name_lookup_error): Change the type of variable desired to
        name_lookup_error and put the diagnostic in the full sentences. Change
        caller.
        (cp_parser_non_integral_constant_expression): Change the type of the
        variable thing to non_integral_constant and put the diagnostics in
        full sentences. Change caller.

From-SVN: r159808

14 years agothumb2.md (thumb2_tlobits_cbranch): Add constraint to tst instruction and a new alter...
Wei Guozhi [Tue, 25 May 2010 01:08:35 +0000 (01:08 +0000)]
thumb2.md (thumb2_tlobits_cbranch): Add constraint to tst instruction and a new alternative.

* config/arm/thumb2.md (thumb2_tlobits_cbranch): Add constraint to
tst instruction and a new alternative.
* config/arm/constraints.md (Pu): New constraint.

From-SVN: r159806

14 years agore PR objc++/43689 (const-str-5/6 fails)
Iain Sandoe [Tue, 25 May 2010 01:00:16 +0000 (01:00 +0000)]
re PR objc++/43689 (const-str-5/6 fails)

2010-05-24  Iain Sandoe  <iains@gcc.gnu.org>

PR ObjC++/43689
* obj-c++.dg/const-str-5.mm: Name pointer equivalence union.
* obj-c++.dg/const-str-6.mm: Ditto.

From-SVN: r159805

14 years agoDaily bump.
GCC Administrator [Tue, 25 May 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159804

14 years agore PR middle-end/44100 (ICE compiling g++.dg/init/struct2.C on Tru64 UNIX V5.1B)
Eric Botcazou [Mon, 24 May 2010 22:03:09 +0000 (22:03 +0000)]
re PR middle-end/44100 (ICE compiling g++.dg/init/struct2.C on Tru64 UNIX V5.1B)

PR middle-end/44100
* typeck.c (cp_build_unary_op): Fold offsetof-like computations.

From-SVN: r159800

14 years agore PR ada/38394 (clashing assembler symbols)
Eric Botcazou [Mon, 24 May 2010 21:43:31 +0000 (21:43 +0000)]
re PR ada/38394 (clashing assembler symbols)

PR ada/38394
* gnat.dg/array13.ad[sb]: New test.

From-SVN: r159798

14 years agoFix bootstrap at -O3.
Sebastian Pop [Mon, 24 May 2010 21:14:23 +0000 (21:14 +0000)]
Fix bootstrap at -O3.

2010-05-24  Sebastian Pop  <sebastian.pop@amd.com>

* function.c (assign_stack_local_1): Initialize variable
to avoid warning when bootstrapping at -O3.

From-SVN: r159797

14 years agoconfigure.ac (all_lang_makefiles): Remove everything related to it.
Steven Bosscher [Mon, 24 May 2010 20:18:00 +0000 (20:18 +0000)]
configure.ac (all_lang_makefiles): Remove everything related to it.

* configure.ac (all_lang_makefiles): Remove everything related to it.
* configure: Regenerate.
* Makefile.in: Fix reference to ada Make-lang.in.
Remove support for LANG_MAKEFILES.

From-SVN: r159795

14 years agoneon-testgen.ml: Use dg-add-options arm_neon.
Daniel Jacobowitz [Mon, 24 May 2010 19:36:31 +0000 (19:36 +0000)]
neon-testgen.ml: Use dg-add-options arm_neon.

2010-05-24  Daniel Jacobowitz  <dan@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/arm/neon-testgen.ml: Use dg-add-options arm_neon.
* doc/sourcebuild.texi (Effective-Target Keywords): Update arm_neon_ok
description.  Add arm_neon_fp16_ok.
(Add Options): Add arm_neon and arm_neon_fp16.

gcc/testsuite/
* gcc.target/arm/neon/: Regenerated test cases.

* gcc.target/arm/neon/polytypes.c,
gcc.target/arm/neon-vmla-1.c, gcc.target/arm/neon-vmls-1.c,
gcc.target/arm/neon-cond-1.c, gcc.target/arm/neon/vfp-shift-a2t2.c,
gcc.target/arm/neon-thumb2-move.c, gcc.dg/torture/arm-fp16-ops-8.c,
gcc.dg/torture/arm-fp16-ops-7.c, g++.dg/ext/arm-fp16/arm-fp16-ops-7.C,
g++.dg/ext/arm-fp16/arm-fp16-ops-8.C, g++.dg/abi/mangle-neon.C: Use
dg-add-options arm_neon.

* gcc.target/arm/fp16-compile-vcvt.c, gcc.dg/torture/arm-fp16-ops-5.c,
gcc.dg/torture/arm-fp16-ops-6.c, g++.dg/ext/arm-fp16/arm-fp16-ops-5.C,
g++.dg/ext/arm-fp16/arm-fp16-ops-6.C: Use dg-add-options arm_neon_fp16
and arm_neon_fp16_ok.

* gcc.dg/vect/vect.exp, g++.dg/vect/vect.exp,
gfortran.dg/vect/vect.exp: Use add_options_for_arm_neon.

* lib/target-supports.exp (add_options_for_arm_neon): New.
(check_effective_target_arm_neon_ok_nocache): New, from
check_effective_target_arm_neon_ok.  Check multiple possibilities.
(check_effective_target_arm_neon_ok): Use
check_effective_target_arm_neon_ok_nocache.
(add_options_for_arm_neon_fp16)
(check_effective_target_arm_neon_fp16_ok)
check_effective_target_arm_neon_fp16_ok_nocache): New.
(check_effective_target_arm_neon_hw): Use add_options_for_arm_neon.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r159794

14 years agodiagnostic.c: Don't include flags.h.
Joseph Myers [Mon, 24 May 2010 18:55:44 +0000 (19:55 +0100)]
diagnostic.c: Don't include flags.h.

* diagnostic.c: Don't include flags.h.
(pedantic_warning_kind, permissive_error_kind): Take diagnostic
context parameters.  Check flags in the context passed as a
parameter.
(diagnostic_build_prefix): Add context parameter.  Check
show_column flag in context.
(diagnostic_action_after_output): Check fatal_errors flag in
context.
(diagnostic_report_current_module): Check show_column flag in
context.
(default_diagnostic_starter): Update call to
diagnostic_build_prefix.
(diagnostic_report_diagnostic): Pass context to
pedantic_warning_kind.
(emit_diagnostic): Pass context to permissive_error_kind.
(permerror): Pass context to permissive_error_kind.
* diagnostic.h (struct diagnostic_context): Add show_column,
pedantic_errors, permissive and fatal_errors fields.
(diagnostic_build_prefix): Update prototype.
* langhooks.c
* toplev.c (process_options): Set flags in global_dc from
flag_show_column, flag_pedantic_errors, flag_permissive,
flag_fatal_errors.
* tree-diagnostic.c (default_tree_diagnostic_starter): Update call
to diagnostic_build_prefix.
* Makefile.in (diagnostic.o): Update dependencies.

cp:
* error.c (cp_diagnostic_starter): Update call to
diagnostic_build_prefix.
(cp_print_error_function,
print_instantiation_partial_context_line): Check show_column flag
in context.

From-SVN: r159793

14 years agore PR c++/41510 ([C++0x] std::complex vs. initialization lists)
Jason Merrill [Mon, 24 May 2010 18:38:16 +0000 (14:38 -0400)]
re PR c++/41510 ([C++0x] std::complex vs. initialization lists)

PR c++/41510
* decl.c (check_initializer): Don't wrap an init-list in a
TREE_LIST.
* init.c (build_aggr_init): Don't assume copy-initialization if
init has CONSTRUCTOR_IS_DIRECT_INIT.
* call.c (build_new_method_call): Sanity check.

From-SVN: r159792

14 years agortti.c (tinfo_base_init): Use build_constructor instead of build_constructor_from_list.
Nathan Froyd [Mon, 24 May 2010 17:17:57 +0000 (17:17 +0000)]
rtti.c (tinfo_base_init): Use build_constructor instead of build_constructor_from_list.

* rtti.c (tinfo_base_init): Use build_constructor instead of
build_constructor_from_list.  Don't cons a tree node for
returning.
(generic_initializer): Use build_constructor_single instead of
build_constructor_from_list.
(ptr_initializer): Use build_constructor instead of
build_constructor_from_list
(ptm_initializer): Likewise.
(class_initializer): Likewise.  Take varargs instead of TRAIL.
(get_pseudo_ti_init): Adjust calls to class_initializer.  Use
build_constructor instead of build_constructor_from_list.

From-SVN: r159788

14 years agoDefine __crc32q only if __SSE4_2__ is defined.
H.J. Lu [Mon, 24 May 2010 15:38:31 +0000 (15:38 +0000)]
Define __crc32q only if __SSE4_2__ is defined.

2010-05-24  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/ia32intrin.h (__crc32q): Define only if
__SSE4_2__ is defined.

From-SVN: r159783

14 years agoexpr.c (quick_stack): Change type to a VEC.
Nathan Froyd [Mon, 24 May 2010 14:46:54 +0000 (14:46 +0000)]
expr.c (quick_stack): Change type to a VEC.

* expr.c (quick_stack): Change type to a VEC.  Update comment.
(tree_list_free_list): Delete.
(flush_quick_stack): Update for quick_stack type change.
(push_value): Likewise.
(pop_value): Likewise.

From-SVN: r159782

14 years agore PR target/44132 (emutls is broken under a range of circumstances.)
Iain Sandoe [Mon, 24 May 2010 14:36:32 +0000 (14:36 +0000)]
re PR target/44132 (emutls is broken under a range of circumstances.)

2010-05-24  Iain Sandoe  <iains@gcc.gnu.org>

PR target/44132
PR middle-end/43602
* varasm.c (get_emutls_init_templ_addr): Copy DECL_PRESERVE_P,
DECL_VISIBILITY_SPECIFIED.
(emutls_decl): Set DECL_PRESERVE_P and copy
DECL_VISIBILITY_SPECIFIED, DECL_RESTRICTED_P.
(emutls_finalize_control_var): New callback.
(emutls_finish): Finalize emutls control variables.
* toplev.c (compile_file): Move the call to emutls_finish ()
before varpool_assemble_pending_decls ().

From-SVN: r159781