OSDN Git Service

pf3gnuchains/gcc-fork.git
14 years ago2009-12-04 Matthias Klose <doko@ubuntu.com>
doko [Fri, 4 Dec 2009 07:47:51 +0000 (07:47 +0000)]
2009-12-04  Matthias Klose  <doko@ubuntu.com>
            John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

        PR target/40134
        * config.gcc (hppa*-*-linux*): Use config/t-slibgcc-libgcc.
        * config/pa/pa-linux.h (LIB_SPEC): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154973 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix PR c++/42218
dodji [Fri, 4 Dec 2009 07:38:42 +0000 (07:38 +0000)]
Fix PR c++/42218

gcc/cp/ChangeLog:
PR c++/42218
* cxx-pretty-print.c (pp_cxx_unqualified_id): Print only innermost
template arguments.

gcc/testsuite/ChangeLog:
PR c++/42218
* g++.dg/other/error33.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154972 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix nits
ebotcazou [Fri, 4 Dec 2009 07:28:53 +0000 (07:28 +0000)]
Fix nits

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154971 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix FMA4 and XOP insns.
spop [Fri, 4 Dec 2009 05:27:39 +0000 (05:27 +0000)]
Fix FMA4 and XOP insns.

2009-12-02  Sebastian Pop  <sebastian.pop@amd.com>
    Richard Henderson  <rth@redhat.com>

* config/i386/i386-protos.h (ix86_fma4_valid_op_p): Removed.
* config/i386/i386.c (ix86_fma4_valid_op_p): Removed.
* config/i386/i386.md: Do not use ix86_fma4_valid_op_p.
* config/i386/sse.md (fma4_*): Remove alternative with operand 1
matching a memory access.  Do not use ix86_fma4_valid_op_p.
(xop_*): Same.
Do not use ix86_fma4_valid_op_p in FMA4 and XOP splitters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154970 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFor FMA4, force all operands into registers.
spop [Fri, 4 Dec 2009 05:27:02 +0000 (05:27 +0000)]
For FMA4, force all operands into registers.

2009-12-02  Richard Henderson  <rth@redhat.com>

* config/i386/i386.c (ix86_fixup_binary_operands): For FMA4, force
all operands into registers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154969 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoRemove unused operand.
spop [Fri, 4 Dec 2009 05:26:27 +0000 (05:26 +0000)]
Remove unused operand.

2009-12-02  Sebastian Pop  <sebastian.pop@amd.com>

* config/i386/i386.c (ix86_expand_fma4_multiple_memory): Remove unused
parameter.
* config/i386/i386-protos.h (ix86_expand_fma4_multiple_memory): Same.
* config/i386/sse.md: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154968 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
dje [Fri, 4 Dec 2009 03:43:40 +0000 (03:43 +0000)]
    * src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
        fparg_count twice for long double.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154967 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * g++.dg/abi/guard2.C: Run on *-*-linux* rather than x86-*-*
jason [Fri, 4 Dec 2009 03:09:43 +0000 (03:09 +0000)]
* g++.dg/abi/guard2.C: Run on *-*-linux* rather than x86-*-*

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154966 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/41611
jason [Fri, 4 Dec 2009 00:26:35 +0000 (00:26 +0000)]
PR c++/41611
* decl2.c (get_guard): Don't use the same comdat group as the decl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154965 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/42266
jason [Fri, 4 Dec 2009 00:26:27 +0000 (00:26 +0000)]
PR c++/42266
* cvt.c (convert_from_reference): Do nothing if TREE_TYPE is null.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154964 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Fri, 4 Dec 2009 00:16:47 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154963 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.pot: Regenerate.
jsm28 [Thu, 3 Dec 2009 21:30:23 +0000 (21:30 +0000)]
* gcc.pot: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154958 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR libffi/42243
dje [Thu, 3 Dec 2009 19:09:29 +0000 (19:09 +0000)]
    PR libffi/42243
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154956 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-03 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 3 Dec 2009 16:06:03 +0000 (16:06 +0000)]
2009-12-03  Richard Guenther  <rguenther@suse.de>

* cgraphunit.c (assemble_thunk): Use DECL_ASSEMBLER_NAME
instead of DECL_NAME for the entry point.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154954 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR middle-end/42049
jakub [Thu, 3 Dec 2009 15:34:56 +0000 (15:34 +0000)]
PR middle-end/42049
* builtins.c (expand_builtin_strcpy_args): Handle COMPOUND_EXPRs
potentially returned from folding strcpy.

* gcc.c-torture/compile/pr42049.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154952 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * exp_util.adb (Make_CW_Equivalent_Type): Set the
ebotcazou [Thu, 3 Dec 2009 15:10:58 +0000 (15:10 +0000)]
* exp_util.adb (Make_CW_Equivalent_Type): Set the
Is_Class_Wide_Equivalent_Type flag here in lieu of...
(Make_Subtype_From_Expr): ...here.
* exp_ch3.adb (Expand_Freeze_Record_Type): Do not set
Has_Controlled_Component on class-wide equivalent types.
* freeze.adb (Freeze_Record_Type): Likewise.
* sem_ch3.adb (Record_Type_Definition): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154950 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * arm/linux-atomic.c (SYNC_LOCK_RELEASE): Place memory barrier
rearnsha [Thu, 3 Dec 2009 14:26:46 +0000 (14:26 +0000)]
* arm/linux-atomic.c (SYNC_LOCK_RELEASE): Place memory barrier
before the lock release.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154949 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-03 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 3 Dec 2009 14:20:56 +0000 (14:20 +0000)]
2009-12-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/42261
* include/bits/basic_string.h (_S_construct_aux(_Integer, _Integer,
const _Alloc&, __true_type)): Cast the second argument to value_type.
* include/ext/sso_string_base.h (_M_construct_aux(_Integer, _Integer,
std::__true_type)): Likewise.
* include/ext/rc_string_base.h (_S_construct_aux(_Integer, _Integer,
const _Alloc&, std::__true_type)): Likewise.
* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154948 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
uros [Thu, 3 Dec 2009 14:02:10 +0000 (14:02 +0000)]
* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
Remove xfails for x86 linux targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154946 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR middle-end/38474
matz [Thu, 3 Dec 2009 13:36:32 +0000 (13:36 +0000)]
PR middle-end/38474
* cfgexpand.c (struct stack_var): Add conflicts member.
(stack_vars_conflict, stack_vars_conflict_alloc,
n_stack_vars_conflict): Remove.
(add_stack_var): Initialize conflicts member.
(triangular_index, resize_stack_vars_conflict): Remove.
(add_stack_var_conflict, stack_var_conflict_p): Rewrite in
terms of new member.
(union_stack_vars): Only run over the conflicts.
(partition_stack_vars): Remove special case.
(expand_used_vars_for_block): Don't call resize_stack_vars_conflict,
don't create self-conflicts.
(account_used_vars_for_block): Don't create any conflicts.
(fini_vars_expansion): Free bitmaps, don't free or clear removed
globals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154945 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR middle-end/42202
bernds [Thu, 3 Dec 2009 12:58:30 +0000 (12:58 +0000)]
PR middle-end/42202
* regrename.c (live_in_chains): New variable.
(verify_reg_tracked): New static function.
(scan_rtx_reg): Update live_in_chains.
(scan_rtx): Only promote sets in COND_EXEC to OP_INOUT if
we're already tracking the reg.
(build_def_use): Likewise.  Initialize live_in_chains.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154944 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-03 Ken Werner <ken.werner@de.ibm.com>
krebbel [Thu, 3 Dec 2009 11:47:11 +0000 (11:47 +0000)]
2009-12-03  Ken Werner  <ken.werner@de.ibm.com>

        * config/spu/spu-elf.h (STARTFILE_SPEC): Add support for gprof
        startup files.
        * config/spu/spu-protos.h (spu_function_profiler): Add prototype.
        * config/spu/spu.c (spu_function_profiler): New function.
        * config/spu/spu.h (FUNCTION_PROFILER): Invoke
        spu_function_profiler.
        (NO_PROFILE_COUNTERS): Define.
        (PROFILE_BEFORE_PROLOGUE): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154942 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
uros [Thu, 3 Dec 2009 10:35:31 +0000 (10:35 +0000)]
* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154941 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-03 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 3 Dec 2009 10:18:04 +0000 (10:18 +0000)]
2009-12-03  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/20_util/bind/ref.cc: Add.
* testsuite/20_util/bind/all_bound.cc: Likewise.
* testsuite/20_util/bind/nested.cc: Likewise.
* testsuite/20_util/bind/placeholders.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154939 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix PR c++/42217
dodji [Thu, 3 Dec 2009 08:33:03 +0000 (08:33 +0000)]
Fix PR c++/42217

gcc/cp/ChangeLog
PR c++/42217
* class.c (remove_zero_width_bit_fields): The width of the bit field is
in DECL_SIZE, not in DECL_INITIAL.

gcc/testsuite/ChangeLog
PR c++/42217
* g++.dg/other/bitfield4.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154938 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/42256
jakub [Thu, 3 Dec 2009 08:03:36 +0000 (08:03 +0000)]
PR c++/42256
* optimize.c (maybe_clone_body): Call emit_associated_thunks
after expand_or_defer_fn_1.

* g++.dg/inherit/thunk11.C: New test.
* g++.dg/inherit/thunk11.h: New file.
* g++.dg/inherit/thunk11-aux.cc: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154937 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * testsuite/ext/profile/mutex_extensions.cc: Adjust dg-error line
hp [Thu, 3 Dec 2009 06:43:51 +0000 (06:43 +0000)]
* testsuite/ext/profile/mutex_extensions.cc: Adjust dg-error line
number.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154936 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * ggc-page.c (struct free_object): Pull definition out ...
davek [Thu, 3 Dec 2009 02:04:16 +0000 (02:04 +0000)]
* ggc-page.c (struct free_object): Pull definition out ...
(struct globals): .. from here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154933 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64
dje [Thu, 3 Dec 2009 01:32:21 +0000 (01:32 +0000)]
    * src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64
        case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154932 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Thu, 3 Dec 2009 00:16:36 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154931 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 2 Dec 2009 22:49:43 +0000 (22:49 +0000)]
2009-12-02  Richard Guenther  <rguenther@suse.de>

* fold-const.c (div_if_zero_remainder): Honor that sizetypes
are sign-extending.  Simplify.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154926 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR tree-opt/42215
rth [Wed, 2 Dec 2009 22:35:21 +0000 (22:35 +0000)]
    PR tree-opt/42215
        * tree-loop-distribution.c (build_size_arg_loc): Tidy.
        (generate_memset_zero): Convert to sizetype properly.  Tidy.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154925 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 2 Dec 2009 20:33:25 +0000 (20:33 +0000)]
2009-12-02  Richard Guenther  <rguenther@suse.de>

* g++.dg/ipa/iinline-1.C: Adjust.
* g++.dg/template/cond2.C: Likewise.
* g++.dg/template/pr35240.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154924 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 2 Dec 2009 19:35:37 +0000 (19:35 +0000)]
2009-12-02  Richard Guenther  <rguenther@suse.de>

* lto-streamer-out.c (pack_ts_decl_common_value_fields):
Do not pretend we have value exprs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154921 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 2 Dec 2009 18:15:17 +0000 (18:15 +0000)]
2009-12-02  Richard Guenther  <rguenther@suse.de>

PR middle-end/41491
* fold-const.c (try_move_mult_to_index): Do not leak
domain types into the IL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154920 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * parser.c (cp_parser_class_specifier): Back out my previous change.
tglek [Wed, 2 Dec 2009 17:50:41 +0000 (17:50 +0000)]
* parser.c (cp_parser_class_specifier): Back out my previous change.
* semantics.c (begin_class_definition): Back out my previous change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154919 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 2 Dec 2009 17:13:51 +0000 (17:13 +0000)]
2009-12-02  Richard Guenther  <rguenther@suse.de>

PR middle-end/42088
* tree.c (free_lang_data): Disable if not using LTO.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154918 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 2 Dec 2009 15:53:39 +0000 (15:53 +0000)]
2009-12-02  Paolo Carlini  <paolo.carlini@oracle.com>

* Adjust last ChangeLog entry, mention Make-lang.in.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154916 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Paolo Bonzini <bonzini@gnu.org>
paolo [Wed, 2 Dec 2009 15:49:20 +0000 (15:49 +0000)]
2009-12-02  Paolo Bonzini  <bonzini@gnu.org>
    Shujing Zhao  <pearly.zhao@oracle.com>

PR c++/29917
* call.c (op_error): Accept a boolean to indicate no match/ambiguous
match, instead of a string. Callers adjusted.

PR c++/34836
* cp-tree.h (readonly_error_kind): New type.
(readonly_error): Adjust prototype with new argument.
* typeck2.c (readonly_error): Accept readonly_error_kind as argument
and add macro ERROR_FOR_ASSIGNMENT to emit diagnostics.
* semantics.c (finish_asm_stmt): Adjust readonly_error call.
* typeck.c (cp_build_unary_op, cp_build_modify_expr): Likewise.

* decl.c (grokparms, grok_op_properties): Put the diagnostics in full
sentences for easy translation and wrap the diagnostics into G_() when
needed.
(create_array_type_for_decl): Likewise.
* pt.c (tsubst): Likewise.
* typeck2.c (cp_build_unary_op): Wrap diagnostic into _().
* rtti.c (build_dynamic_cast_1): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154915 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-02 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 2 Dec 2009 15:22:01 +0000 (15:22 +0000)]
2009-12-02  Richard Guenther  <rguenther@suse.de>

PR middle-end/42229
* cfgloopmanip.c (remove_path): Avoid cancelling loops
twice.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154914 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.pot: Regenerate.
jsm28 [Wed, 2 Dec 2009 14:25:46 +0000 (14:25 +0000)]
* gcc.pot: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154911 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * cpplib.pot: Regenerate.
jsm28 [Wed, 2 Dec 2009 14:24:09 +0000 (14:24 +0000)]
* cpplib.pot: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154910 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoForgot to add file with last commit.
uweigand [Wed, 2 Dec 2009 13:58:02 +0000 (13:58 +0000)]
Forgot to add file with last commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154909 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
uweigand [Wed, 2 Dec 2009 13:50:52 +0000 (13:50 +0000)]
gcc/
PR middle-end/42224
* tree.h (int_or_pointer_precision): Remove.
* tree.c (int_or_pointer_precision): Remove.
(integer_pow2p): Use TYPE_PRECISION instead.
(tree_log2): Likewise.
(tree_floor_log2): Likewise.
(signed_or_unsigned_type_for): Likewise.
* fold-const.c (fit_double_type): Likewise.
* varasm.c (initializer_constant_valid_p): Likewise.

gcc/testsuite/
PR middle-end/42224
* gcc.target/s390/pr42224.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154908 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * doc/invoke.texi (-fdump-tree-slp): Document.
irar [Wed, 2 Dec 2009 13:36:47 +0000 (13:36 +0000)]
* doc/invoke.texi (-fdump-tree-slp): Document.
(-ftree-vectorizer-verbose): Update.
(-ftree-slp-vectorize): Document.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154907 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoOops - omitted this part of xstormy16 patch to use __clzhi2() instead of __stormy16_c...
nickc [Wed, 2 Dec 2009 11:15:50 +0000 (11:15 +0000)]
Oops - omitted this part of xstormy16 patch to use __clzhi2() instead of __stormy16_count_leading_zeros.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154905 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/rx/rx.c (rx_conditional_register_usage): Do not warn if
nickc [Wed, 2 Dec 2009 10:59:04 +0000 (10:59 +0000)]
    * config/rx/rx.c (rx_conditional_register_usage): Do not warn if
        no fixed registers are available for interrupt handlers.  Do not
        fix normal registers.
        (MUST_SAVE_ACC_REGISTER): New macro.
        (rx_get_stack_layout): Create a stack frame for fast interrupt
        handlers, if necessary.  Push extra registers if needed in order
        to save the accumulator.
        (rx_expand_prologue): Create a stack frame for fast interrupt
        handlers, if necessary.
        (rx_expand_builtin_mvfc): Handle the case where there is no
        target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154903 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoTypo in ChangeLog entry for PR fortran/42131
jb [Wed, 2 Dec 2009 09:22:50 +0000 (09:22 +0000)]
Typo in ChangeLog entry for PR fortran/42131

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154900 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * g++spec.c (lang_specific_driver): Remove unused saw_verbose_flag
jakub [Wed, 2 Dec 2009 08:39:10 +0000 (08:39 +0000)]
* g++spec.c (lang_specific_driver): Remove unused saw_verbose_flag
variable.
* pt.c (tsubst_pack_expansion): Remove unused first_arg_pack variable.
* init.c (build_vec_init): Remove unused size variable.
* typeck2.c (check_narrowing): Remove unused was_decl variable.
* decl.c (poplevel): Remove unused tmp and real_functionbody
variables.
(decls_match): Remove unused tree_name variable.
(start_decl): Remove unused type variable.
* parser.c (cp_parser_type_parameter): Remove unused parameter_list
variable.
(cp_parser_template_id, cp_parser_explicit_instantiation,
cp_parser_declarator): Remove unused token variable.
(cp_parser_simple_type_specifier): Remove unused id variable.
(cp_parser_parameter_declaration): Remove unused
greater_than_is_operator_p variable.
(cp_parser_check_declarator_template_parameters): Remove unused
member variable.
(c_parse_file): Remove unused error_occurred variable.
* cp-gimplify.c (cp_gimplify_init_expr): Remove unused slot variable.
* typeck.c (cp_build_function_call_vec): Remove unused name variable.
* class.c (resolve_address_of_overloaded_function): Remove unused
is_reference variable.
(build_rtti_vtbl_entries): Remove unused basetype variable.
* mangle.c (write_template_param): Remove unused parm_level and
parm_type variables.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154899 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agolzcount intrinsics.
spop [Wed, 2 Dec 2009 05:49:34 +0000 (05:49 +0000)]
lzcount intrinsics.

* config/i386/abmintrin.h (__lzcnt16): New.
(__lzcnt): New.
(__lzcnt64): New.
* config/i386/i386-builtin-types.def (UINT16_FTYPE_UINT16): New.
* config/i386/i386.c (IX86_BUILTIN_CLZS): New.
(bdesc_special_args): Add __builtin_clzs.
(ix86_expand_args_builtin): Handle UINT16_FTYPE_UINT16.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154895 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoABM popcount intrinsics.
spop [Wed, 2 Dec 2009 05:48:18 +0000 (05:48 +0000)]
ABM popcount intrinsics.

* config/i386/abmintrin.h (_mm_popcnt_u32): New.
(_mm_popcnt_u64): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154894 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoABM intrinsics file.
spop [Wed, 2 Dec 2009 05:47:26 +0000 (05:47 +0000)]
ABM intrinsics file.

 * config/i386/abmintrin.h: New.
 * config/i386/i386-c.c (ix86_target_macros_internal): Defined __ABM__.
 * config/i386/x86intrin.h: Include abmintrin.h when __ABM__ is defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154893 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * src/powerpc/aix.S (ffi_call_AIX): Convert to more standard
dje [Wed, 2 Dec 2009 04:21:08 +0000 (04:21 +0000)]
    * src/powerpc/aix.S (ffi_call_AIX): Convert to more standard
        register usage.  Call ffi_prep_args directly.  Add long double
        return value support.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Double arg increment
        applies to FFI_TYPE_DOUBLE.  Correct fpr_base increment typo.
        Separate FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases.
        (ffi_prep_cif_machdep): Only 16 byte stack alignment in 64 bit
        mode.
        (ffi_closure_helper_DARWIN): Remove nf and ng counters.  Move temp
        into case.
        * src/powerpc/aix_closure.S: Maintain 16 byte stack alignment.
        Allocate result area between params and FPRs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154892 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago* parser.c (cp_parser_class_specifier): Set class location to that of IDENTIFIER_NODE...
tglek [Wed, 2 Dec 2009 01:00:39 +0000 (01:00 +0000)]
* parser.c (cp_parser_class_specifier): Set class location to that of IDENTIFIER_NODE instead of '{' when possible.\n* semantics.c (begin_class_definition): Do not overide locations with less precise ones.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154890 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Wed, 2 Dec 2009 00:16:40 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154889 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * java/net/natVMURLConnection.cc (guessContentTypeFromBuffer):
bje [Tue, 1 Dec 2009 22:05:25 +0000 (22:05 +0000)]
* java/net/natVMURLConnection.cc (guessContentTypeFromBuffer):
Mark `bytes' and `valid' parameters as potentially unused.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154886 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/41611
jason [Tue, 1 Dec 2009 21:58:04 +0000 (21:58 +0000)]
PR c++/41611
* decl2.c (get_guard): Copy DECL_COMDAT.
(comdat_linkage): Set DECL_COMDAT unconditionally.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154885 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.target/i386/vperm-v4sf-1.c (dg-options): Use -msse.
uros [Tue, 1 Dec 2009 21:56:40 +0000 (21:56 +0000)]
* gcc.target/i386/vperm-v4sf-1.c (dg-options): Use -msse.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154884 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/i386/i386.md (SWI124): Rename from CRC32MODE.
uros [Tue, 1 Dec 2009 21:23:55 +0000 (21:23 +0000)]
* config/i386/i386.md (SWI124): Rename from CRC32MODE.
(crc32modesuffix): Remove.
(crc32modeconstraint): Ditto.
(sse4_2_crc32<mode>): Update for renamed mode iterator.  Use
imodesuffix instead of crc32modesuffix and <r>m instead of
crc32modeconstraint.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154882 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/3187
jakub [Tue, 1 Dec 2009 20:09:37 +0000 (20:09 +0000)]
PR c++/3187
* optimize.c (cdtor_comdat_group): New function.
(maybe_clone_body): Also optimize DECL_COMDAT base/complete cdtors
and in that case put also the deleting dtor in the same comdat group
as base and complete dtor if dtor is virtual.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154880 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/42234
jakub [Tue, 1 Dec 2009 19:41:52 +0000 (19:41 +0000)]
PR c++/42234
* tree-cfgcleanup.c (cleanup_omp_return): Don't ICE if control_bb
contains no statements.

* g++.dg/gomp/pr42234.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154878 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Grigori Fursin <grigori.fursin@inria.fr>
amylaar [Tue, 1 Dec 2009 19:12:29 +0000 (19:12 +0000)]
2009-12-01  Grigori Fursin  <grigori.fursin@inria.fr>
            Joern Rennecke  <amylaar@spamcop.net>

        * cgraphunit.c (plugin.h): Include.
        (ipa_passes): Invoke PLUGIN_ALL_IPA_PASSES_START /
        PLUGIN_ALL_IPA_PASSES_END at start / end of processing.
        * gcc-plugin.h (highlev-plugin-common.h, hashtab.h): Include.
        (enum plugin_event): Define by including plugin.def.
        Last enumerator is now called PLUGIN_EVENT_FIRST_DYNAMIC.
        (plugin_event_name): Change type to const char **.
        (get_event_last, get_named_event_id, unregister_callback): Declare.
        (register_callback): Change type of event argument to int.
        (highlev-plugin-common.h): New file.
        * Makefile.in (GCC_PLUGIN_H): Add highlev-plugin-common.h and
        $(HASHTAB_H)
        (tree-optimize.o passes.o): Depend on $(PLUGIN_H).
        (PLUGIN_HEADERS): Add opts.h, $(PARAMS_H) and plugin.def.
        (s-header-vars): New rule.
        (install-plugin): Depend on s-header-vars.  Install b-header-vars.
        * params.c (get_num_compiler_params): New function.
        * params.h (get_num_compiler_params): Declare.
        * passes.c (plugin.h): Include.
        (make_pass_instance): Invoke PLUGIN_NEW_PASS.
        (do_per_function_toporder, pass_init_dump_file): No longer static.
        (pass_fini_dump_file): Likewise.
        (execute_one_pass): Likewise.  Invoke PLUGIN_OVERRIDE_GATE and
        PLUGIN_PASS_EXECUTION.
        (execute_ipa_pass_list): Invoke PLUGIN_EARLY_GIMPLE_PASSES_START and
        PLUGIN_EARLY_GIMPLE_PASSES_END.
        * plugin.c (plugin_event_name_init): New array, defined by
        including plugin.def.
        (FMT_FOR_PLUGIN_EVENT): Update.
        (plugin_event_name): Change type to const char ** and initialize
        to plugin_event_name_init.
        (event_tab, event_last, event_horizon): New variable.
        (get_event_last): New function.
        (plugin_callbacks_init): New array.
        (plugin_callbacks: Change type to struct callback_info **.
        Initialize to plugin_callbacks_init.
        (htab_event_eq, get_named_event_id, unregister_callback): New function.
        (invoke_plugin_va_callbacks): Likewise.
        (register_callback): Change type of event argument to int.
        Handle new events.  Allow dynamic events.
        (invoke_plugin_callbacks): Likewise.  Return success status.
        (plugins_active_p): Allow dynamic callbacks.
        * plugin.def: New file.
        * plugin.h (invoke_plugin_callbacks): Update prototype.
        (invoke_plugin_va_callbacks): Declare.
        * tree-optimize.c (plugin.h): Include.
        (tree_rest_of_compilation): Invoke PLUGIN_ALL_PASSES_START and
        PLUGIN_ALL_PASSES_END.
        * tree-pass.h (execute_one_pass, pass_init_dump_file): Declare.
        (pass_fini_dump_file, do_per_function_toporder): Likewise.
        * doc/plugin.texi: Document new event types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154877 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoPR fortran/42131 Sign test using ternary operator
jb [Tue, 1 Dec 2009 18:32:37 +0000 (18:32 +0000)]
PR fortran/42131 Sign test using ternary operator

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154876 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 1 Dec 2009 17:39:44 +0000 (17:39 +0000)]
2009-12-01  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/42237
* tree-sra.c (sra_ipa_modify_assign): Split gimple_reg_type assignments
in between references into two.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154874 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 1 Dec 2009 14:22:50 +0000 (14:22 +0000)]
2009-12-01  Richard Guenther  <rguenther@suse.de>

* tree-inline.c (copy_tree_body_r): Do not set TREE_BLOCK
to the block of the call when remapping a type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154873 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 1 Dec 2009 10:51:07 +0000 (10:51 +0000)]
2009-12-01  Martin Jambor  <mjambor@suse.cz>

        * cgraph.h (struct cgraph_edge): Reorder fields.  Make loop_nest
unsigned short int.
* ipa-prop.h (struct ipa_param_call_note): Likewise.
* ipa-prop.c (ipa_note_param_call): Initialize note->loop_nest.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154872 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Pascal Obry <obry@adacore.com>
charlet [Tue, 1 Dec 2009 10:29:57 +0000 (10:29 +0000)]
2009-12-01  Pascal Obry  <obry@adacore.com>

* s-osprim-mingw.adb (Get_Base_Time): Make sure that the base time is
taken at a clock tick boundary.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154871 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Thomas Quinot <quinot@adacore.com>
charlet [Tue, 1 Dec 2009 10:24:39 +0000 (10:24 +0000)]
2009-12-01  Thomas Quinot  <quinot@adacore.com>

* g-sechas.ads (GNAT.Secure_Hashes.H."=" on Context): Make abstract.

2009-12-01  Matthew Gingell  <gingell@adacore.com>

* adadecode.c: Allow compilation when building the run time in the gnat
runtime.
(__gnat_decode): Strip the .nnnn suffix from names of nested functions.

* gcc-interface/Makefile.in: Ada adadecode to LIBGNAT_SRCS and
LIBGNAT_OBJS.

2009-12-01  Vincent Celier  <celier@adacore.com>

* gnatcmd.adb (Check_Files): Quote the path names as they may include
spaces.

2009-12-01  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): If the defining identifier
has already been declared, it may have been rewritten as a renaming
declaration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154870 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 1 Dec 2009 10:02:24 +0000 (10:02 +0000)]
2009-12-01  Richard Guenther  <rguenther@suse.de>

* final.c (rest_of_clean_state): If -fcompare-debug is
given dump final insns without UIDs.
* tree-ssa-live.c (remove_unused_scope_block_p): Remove
after_inlining checks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154869 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 1 Dec 2009 09:52:51 +0000 (09:52 +0000)]
2009-12-01  Ed Schonberg  <schonberg@adacore.com>

* einfo.ads: Clarify use of Is_Private_Primitive.
* sem_ch6.adb (Analyze_Subprogram_Declaration): An operation is a
private primitive operation only if it is declared in the scope of the
private controlling type.
* exp_ch9.adb (Build_Wrapper_Spec): Build wrappers for private
protected operations as well.

2009-12-01  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Disable front-end
optimizations in CodePeer mode, to keep the tree as close to the source
code as possible, and also to avoid inconsistencies between trees when
using different optimization switches.

2009-12-01  Thomas Quinot  <quinot@adacore.com>

* scos.ads: Updated specification of source coverage obligation
information.

2009-12-01  Thomas Quinot  <quinot@adacore.com>

* g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb,
a-ststio.adb, s-commun.adb, s-commun.ads, g-socket.adb,
g-socket.ads (System.Communications.Last_Index): For the case where no
element has been transferred and Item'First =
Stream_Element_Offset'First, raise CONSTRAINT_ERROR.

2009-12-01  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Install_Siblings): A private with_clause on some child
unit U in an ancestor of the current unit must be ignored if the
current unit has a regular with_clause on U.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154868 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-12-01 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 1 Dec 2009 09:19:47 +0000 (09:19 +0000)]
2009-12-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/42057
* g++.dg/parse/crash54.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154865 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Chao-ying Fu <fu@mips.com>
chaoyingfu [Tue, 1 Dec 2009 01:40:28 +0000 (01:40 +0000)]
2009-11-30  Chao-ying Fu  <fu@mips.com>

* gcc.target/mips/dsp-lhx.c: New test.
* gcc.target/mips/dsp-no-lhx.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154862 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Chao-ying Fu <fu@mips.com>
chaoyingfu [Tue, 1 Dec 2009 01:37:52 +0000 (01:37 +0000)]
2009-11-30  Chao-ying Fu  <fu@mips.com>

* config/mips/mips-dsp.md (mips_lhx_<mode>): Use sign_extend.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154861 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Tue, 1 Dec 2009 00:16:42 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154859 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
davek [Tue, 1 Dec 2009 00:09:30 +0000 (00:09 +0000)]
2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* testsuite/lib/libstdc++.exp (libstdc++_init): Add host-dependent
settings for LC_ALL and LANG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154856 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 David Edelsohn <edelsohn@gnu.org>
dje [Mon, 30 Nov 2009 23:34:33 +0000 (23:34 +0000)]
2009-11-30  David Edelsohn  <edelsohn@gnu.org>

        PR target/35484
        * src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and
        AIX64.
        * src/powerpc/aix.S: Implement AIX64 version.
        * src/powerpc/aix_closure.S: Implement AIX64 version.
        (ffi_closure_ASM): Use extsb, lha and displament addresses.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64
        support.
        (ffi_prep_cif_machdep): Same.
        (ffi_call): Same.
        (ffi_closure_helper_DARWIN): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154855 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agolibgomp/ChangeLog
davek [Mon, 30 Nov 2009 23:30:57 +0000 (23:30 +0000)]
libgomp/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
settings for LC_ALL and LANG.

gcc/testsuite/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* lib/g++.exp (g++_init): Add host-dependent settings for
LC_ALL and LANG.
* lib/gcc-dg.exp: Likewise.
* lib/options.exp: Likewise.
* lib/objc.exp (objc_init): Likewise.
* lib/gfortran.exp (gfortran_init): Likewise.

libjava/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* testsuite/lib/libjava.exp (libjava_init):  Add host-dependent
settings for LC_ALL and LANG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154854 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/ChangeLog:
davek [Mon, 30 Nov 2009 23:22:04 +0000 (23:22 +0000)]
gcc/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect
status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
* configure: Regenerate.
* config.in: Regenerate.

* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Define list of --wrap
options for Cygwin DLL libstdc++ support wrappers.
(CXX_WRAP_SPEC_OPT): Define spec to use wrappers or not by default
according to defined value of USE_CYGWIN_LIBSTDCXX_WRAPPERS.
(CXX_WRAP_SPEC): Define entire wrapper spec in or out according to
whether USE_CYGWIN_LIBSTDCXX_WRAPPERS is even defined or not.
(LINK_SPEC): Include CXX_WRAP_SPEC.
* gcc/config/i386/winnt.c (wrapper_strcmp): New qsort helper function.
(i386_find_on_wrapper_list): Check if a function is found on the list
of libstdc++ wrapper options.
(i386_pe_file_end): If we are importing a wrapped function, also emit
an external declaration for the real version.
* config/i386/cygming.opt (muse-libstdc-wrappers): New option for
Cygwin targets. Update copyright year.

libstdc++-v3/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* libstdc++-v3/acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Don't disable
on PE targets.
* libstdc++-v3/configure: Regenerate.
* libstdc++-v3/configure.host: Add libtool DLL options for Cygwin
and MinGW platforms.

* libstdc++-v3/include/bits/c++config (_GLIBCXX_VISIBILITY_ATTR): On
platforms that don't support visibility, allow them to declare a macro
_GLIBCXX_PSEUDO_VISIBILITY that is applied in place of visibility.
(_GLIBCXX_PSEUDO_VISIBILITY): Supply empty default if not declared by
CPU- or OS-specific headers.

* libstdc++-v3/config/os/newlib/os_defines.h
(_GLIBCXX_PSEUDO_VISIBILITY_default): New macro for dllimport.
(_GLIBCXX_PSEUDO_VISIBILITY_hidden): New empty macro.
(_GLIBCXX_PSEUDO_VISIBILITY): Evaluate to one of the above.
* libstdc++-v3/config/os/mingw32/os_defines.h
(_GLIBCXX_PSEUDO_VISIBILITY_default,
_GLIBCXX_PSEUDO_VISIBILITY_hidden,
_GLIBCXX_PSEUDO_VISIBILITY): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154853 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agocp/
paolo [Mon, 30 Nov 2009 22:45:06 +0000 (22:45 +0000)]
cp/
2009-11-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/40371
* call.c (add_template_candidate_real): Early return NULL if
the arglist length is smaller than skip_without_in_chrg; tidy.

testsuite/
2009-11-30  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/40371
* g++.dg/template/crash93.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154852 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoCorrect testcase
grosser [Mon, 30 Nov 2009 22:08:35 +0000 (22:08 +0000)]
Correct testcase

2009-11-29  Alexander Monakov <amonakov@gcc.gnu.org>

* testsuite/g++.dg/graphite/pr42130.C: Correct testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154851 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix comments.
grosser [Mon, 30 Nov 2009 22:08:16 +0000 (22:08 +0000)]
Fix comments.

2009-11-24  Tobias Grosser  <grosser@fim.uni-passau.de>

* graphite-clast-to-gimple.c (try_mark_loop_parallel,
graphite_create_new_loop_guard, translate_clast_for): Fix comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154850 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoProtect loops that might be executed zero times.
grosser [Mon, 30 Nov 2009 22:07:59 +0000 (22:07 +0000)]
Protect loops that might be executed zero times.

2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

PR middle-end/42130
* graphite-clast-to-gimple.c (graphite_create_new_loop_guard,
translate_clast_for_loop): New.
(translate_clast_for): Add a condition around the loop, to do not
execute loops with zero iterations.
* testsuite/g++.dg/graphite/pr42130.C: New.
* testsuite/gcc.dg/graphite/pr35356-2.c: Adapt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154849 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoRemove context_loop and level from translate_clast_* methods.
grosser [Mon, 30 Nov 2009 22:07:38 +0000 (22:07 +0000)]
Remove context_loop and level from translate_clast_* methods.

2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

* graphite-clast-to-gimple.c (try_mark_loop_parallel): New.
(translate_clast_for, translate_clast_guard, translate_clast, gloog):
Remove context_loop and level.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154848 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoSimplify translate_clast_* methods
grosser [Mon, 30 Nov 2009 22:07:18 +0000 (22:07 +0000)]
Simplify translate_clast_* methods

2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

* graphite-clast-to-gimple.c (translate_clast_user,
translate_clast_for, translate_clast_guard): Simplify and move common
elements to translate_clast().
(translate_clast): Simplify and get common elements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154847 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Steve Ellcey <sje@cup.hp.com>
sje [Mon, 30 Nov 2009 22:06:58 +0000 (22:06 +0000)]
2009-11-30  Steve Ellcey  <sje@cup.hp.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154846 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agosplit translate_clast into single methods
grosser [Mon, 30 Nov 2009 22:06:54 +0000 (22:06 +0000)]
split translate_clast into single methods

2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

* graphite-clast-to-gimple.c (translate_clast_user,
translate_clast_for, translate_clast_guard): Split out of
translate_clast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154845 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDo not abuse sese for codegeneration
grosser [Mon, 30 Nov 2009 22:06:27 +0000 (22:06 +0000)]
Do not abuse sese for codegeneration

CLooG automatically frees the names list, so sharing SESE_PARAMS_NAMES
between gloog() and debug_generated_program() leads to freeing them
twice. As both SESE_PARAM_NAMES and SESE_PARAMS_INDEX are code
generation data structures remove them and the functions working on them
from sese.h and put them in clast-to-gimple.

2009-11-21  Tobias Grosser  <grosser@fim.uni-passau.de>

* graphite-clast-to-gimple.c (clast_name_index, new_clast_name_index,
clast_name_to_index, save_clast_name_index, debug_clast_name_index,
debug_clast_name_indexes_1, debug_clast_name_indexes,
clast_name_index_elt_info, eq_clast_name_indexes): Moved from sese.h.
(clast_name_to_gcc, clast_to_gcc_expression,
clast_to_gcc_expression_red, gcc_type_for_clast_expr,
gcc_type_for_clast_eq, graphite_translate_clast_equation,
graphite_create_guard_cond_expr, graphite_create_new_loop,
translate_clast): Add params_index.
(initialize_cloog_names): Create parameter strings from scratch, do
not reference other strings.
(create_params_index): New.
(gloog): Initialize params_index.
* graphite-scop-detection (free_scops_1): Removed.
(limit_scops): Use normal free_scops.
* graphite-sese-to-poly.c (save_var_names): Removed.
(parameter_index_in_region): Do not initialize SESE_PARAM_NAMES
and SESE_PARAMS_INDEX.
* sese.c (new_sese, free_sese): Dito.
* sese.h (struct sese): Remove params_index, params_names.
(SESE_PARAMS_INDEX, SESE_PARAMS_NAMES): Removed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154844 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Steve Ellcey <sje@cup.hp.com>
sje [Mon, 30 Nov 2009 22:06:19 +0000 (22:06 +0000)]
2009-11-30  Steve Ellcey  <sje@cup.hp.com>
    Jakub Jelinek <jakub@redhat.com>

* function.c (instantiate_virtual_regs_in_insn): Copy to new reg
before forcing mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154843 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/sh/sh.c (sh_promote_prototypes): Make static.
aesok [Mon, 30 Nov 2009 21:38:46 +0000 (21:38 +0000)]
* config/sh/sh.c (sh_promote_prototypes): Make static.
(sh_function_value, sh_libcall_value, sh_function_value_regno_p): New
functions.
(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Declare.
* config/sh/sh.h: (FUNCTION_VALUE_REGNO_P): Redefine, use
sh_function_value_regno_p.
(FUNCTION_VALUE, LIBCALL_VALUE): Remove.
* config/sh/sh-protos.h (sh_function_value_regno_p): Declare.
(sh_promote_prototypes) : Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154842 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * s-oscons-tmplt.c [__mips && __sgi]: Only define _XOPEN5, IOV_MAX
ro [Mon, 30 Nov 2009 21:12:13 +0000 (21:12 +0000)]
* s-oscons-tmplt.c [__mips && __sgi]: Only define _XOPEN5, IOV_MAX
if _XOPEN_IOV_MAX is defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154841 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agomerge from fortran-dev branch:
janus [Mon, 30 Nov 2009 20:43:06 +0000 (20:43 +0000)]
merge from fortran-dev branch:

gcc/fortran/

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/42053
* resolve.c (resolve_select_type): Check for duplicate CLASS IS blocks.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/41631
* decl.c (gfc_match_derived_decl): Set extension level.
* gfortran.h (symbol_attribute): Expand 'extension' bit field to 8 bit.
* iresolve.c (gfc_resolve_extends_type_of): Return value of
'is_extension_of' has kind=4.
* match.c (select_type_set_tmp,gfc_match_class_is): Create temporary
for CLASS IS blocks.
* module.c (MOD_VERSION): Bump module version.
(ab_attribute,attr_bits): Remove AB_EXTENSION.
(mio_symbol_attribute): Handle expanded 'extension' field.
* resolve.c (resolve_select_type): Implement CLASS IS blocks.
(resolve_fl_variable_derived): Show correct type name.
* symbol.c (gfc_build_class_symbol): Set extension level.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

* intrinsic.h (gfc_resolve_extends_type_of): Add prototype.
* intrinsic.c (add_functions): Use 'gfc_resolve_extends_type_of'.
* iresolve.c (gfc_resolve_extends_type_of): New function, which
replaces the call to EXTENDS_TYPE_OF by the library function
'is_extension_of' and modifies the arguments.
* trans-intrinsic.c (gfc_conv_extends_type_of): Removed.
(gfc_conv_intrinsic_function): FOR EXTENDS_TYPE_OF, don't call
gfc_conv_extends_type_of but gfc_conv_intrinsic_funcall.

2009-11-30  Paul Thomas  <pault@gcc.gnu.org>
    Janus Weil  <janus@gcc.gnu.org>

* decl.c (encapsulate_class_symbol): Replaced by
'gfc_build_class_symbol'.
(build_sym,build_struct): Call 'gfc_build_class_symbol'.
(gfc_match_derived_decl): Replace vindex by hash_value.
* dump-parse-tree.c (show_symbol): Replace vindex by hash_value.
* gfortran.h (symbol_attribute): Add field 'vtab'.
(gfc_symbol): Replace vindex by hash_value.
(gfc_class_esym_list): Ditto.
(gfc_get_derived_type,gfc_build_class_symbol,gfc_find_derived_vtab):
New prototypes.
* module.c (mio_symbol): Replace vindex by hash_value.
* resolve.c (vindex_expr): Rename to 'hash_value_expr'.
(resolve_class_compcall,resolve_class_typebound_call): Renamed
'vindex_expr'.
(resolve_select_type): Replace $vindex by $vptr->$hash.
* symbol.c (gfc_add_save): Handle vtab symbols.
(gfc_type_compatible): Rewrite.
(gfc_build_class_symbol): New function which replaces
'encapsulate_class_symbol'.
(gfc_find_derived_vtab): New function to set up a vtab symbol for a
derived type.
* trans-decl.c (gfc_create_module_variable): Handle vtab symbols.
* trans-expr.c (select_class_proc): Replace vindex by hash_value.
(gfc_conv_derived_to_class): New function to construct a temporary
CLASS variable from a derived type expression.
(gfc_conv_procedure_call): Call 'gfc_conv_derived_to_class'.
(gfc_conv_structure): Initialize the $extends and $size fields of
vtab symbols.
(gfc_trans_class_assign): Replace $vindex by $vptr. Remove the $size
assignment.
* trans-intrinsic.c (gfc_conv_same_type_as): Replace $vindex by
$vptr->$hash, and replace vindex by hash_value.
* trans-stmt.c (gfc_trans_allocate): Insert $vptr references, replace
$vindex by $vptr. Remove the $size assignment.
* trans-types.c (gfc_get_derived_type): Make it non-static.

gcc/testsuite/

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/42053
* gfortran.dg/select_type_9.f03: New.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

PR fortran/41631
* gfortran.dg/extends_type_of_1.f03: Fix invalid test case.
* gfortran.dg/module_md5_1.f90: Adjusted MD5 sum.
* gfortran.dg/select_type_1.f03: Remove FIXMEs.
* gfortran.dg/select_type_2.f03: Ditto.
* gfortran.dg/select_type_8.f03: New test.

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

* gfortran.dg/extends_type_of_1.f03: New test.
* gfortran.dg/same_type_as_1.f03: Extended.

2009-11-30  Paul Thomas  <pault@gcc.gnu.org>

* gfortran.dg/class_4c.f03: Add dg-additional-sources.
* gfortran.dg/class_4d.f03: Rename module. Cleanup modules.

libgfortran/

2009-11-30  Janus Weil  <janus@gcc.gnu.org>

* gfortran.map: Add _gfortran_is_extension_of.
* Makefile.am: Add intrinsics/extends_type_of.c.
* Makefile.in: Regenerated.
* intrinsics/extends_type_of.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154840 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Mon, 30 Nov 2009 20:35:41 +0000 (20:35 +0000)]
2009-11-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/42131
* trans-stmt.c (gfc_trans_do):  Calculate loop count
without if statements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154839 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago gcc/
jules [Mon, 30 Nov 2009 19:40:28 +0000 (19:40 +0000)]
gcc/
* config/arm/arm.h (PREFERRED_RELOAD_CLASS): Don't restrict Thumb-2
reloads to LO_REGS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154838 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR testsuite/42212
janis [Mon, 30 Nov 2009 19:14:58 +0000 (19:14 +0000)]
PR testsuite/42212
* gcc.target/powerpc/regnames-1.c: Add missing brace dg-do.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154837 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoImplement vec_perm broadcast, and tidy lots of patterns to help.
rth [Mon, 30 Nov 2009 18:26:55 +0000 (18:26 +0000)]
Implement vec_perm broadcast, and tidy lots of patterns to help.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154836 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 30 Nov 2009 17:59:57 +0000 (17:59 +0000)]
2009-11-30  Martin Jambor  <mjambor@suse.cz>

PR middle-end/42196
* tree-sra.c (struct access): New field grp_different_types.
(dump_access): Dump grp_different_types.
(compare_access_positions): Prefer scalars and vectors over other
scalar types.
(sort_and_splice_var_accesses): Set grp_different_types if appropriate.
(sra_modify_expr): Use the original also when dealing with a complex
 or vector group accessed as multiple types.

* testsuite/gcc.c-torture/compile/pr42196-1.c: New test.
* testsuite/gcc.c-torture/compile/pr42196-2.c: New test.
* testsuite/gcc.c-torture/compile/pr42196-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154834 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/i386/i386.c (avx_vperm2f128_parallel): New.
rth [Mon, 30 Nov 2009 17:36:07 +0000 (17:36 +0000)]
    * config/i386/i386.c (avx_vperm2f128_parallel): New.
        * config/i386/i386-protos.h: Declare it.
        * config/i386/predicates.md (avx_vperm2f128_v8sf_operand,
        avx_vperm2f128_v8si_operand, avx_vperm2f128_v4df_operand): New.
        * config/i386/sse.md (avx_vperm2f128<mode>3): Change to expander.
        (*avx_vperm2f128<mode>_full): Renamed from avx_vperm2f128<mode>3.
        (*avx_vperm2f128<mode>_nozero): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154832 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/i386/i386-builtin-types.def (V4DF_FTYPE_V4DF_V4DF_V4DI): New.
rth [Mon, 30 Nov 2009 16:56:37 +0000 (16:56 +0000)]
* config/i386/i386-builtin-types.def (V4DF_FTYPE_V4DF_V4DF_V4DI): New.
(V8SF_FTYPE_V8SF_V8SF_V8SI): New.
* config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Support
V4DF and V8SF for AVX; relax constraint on V4SF to SSE1 from SSE2.
(IX86_BUILTIN_VEC_PERM_V4DF, IX86_BUILTIN_VEC_PERM_V8SF): New.
(bdesc_args): Add them.
(ix86_expand_builtin): Expand them.
(expand_vec_perm_pshufb2): Only operate on 16-byte vectors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154831 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * largefile.m4 (ACX_LARGEFILE): Require AC_CANONICAL_HOST and
jsm28 [Mon, 30 Nov 2009 16:38:14 +0000 (16:38 +0000)]
* largefile.m4 (ACX_LARGEFILE): Require AC_CANONICAL_HOST and
AC_CANONICAL_TARGET.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154830 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2009-11-30 Vasiliy Fofanov <fofanov@adacore.com>
charlet [Mon, 30 Nov 2009 16:31:31 +0000 (16:31 +0000)]
2009-11-30  Vasiliy Fofanov  <fofanov@adacore.com>

* vms_data.ads: Add new VMS qualifiers,
REVERSE_BIT_ORDER/NOREVERSE_BIT_ORDER, to support warnings on bit order
effects.

2009-11-30  Thomas Quinot  <quinot@adacore.com>

* exp_ch9.adb, exp_ch9.ads, sem_util.ads: Minor reformatting.

2009-11-30  Gary Dismukes  <dismukes@adacore.com>

* sem_prag.adb: Fix spelling error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154829 138bc75d-0d04-0410-961f-82ee72b054a4