Jonathan Wakely [Thu, 4 Sep 2008 22:33:10 +0000 (22:33 +0000)]
re PR libstdc++/36962 ([C++0x] Add constructors / assignment operators from unique_ptr to shared_ptr)
PR libstdc++/36962
* include/Makefile.am: Update headers.
* include/Makefile.in: Regenerate.
* include/std/memory: Update headers.
* include/tr1/memory: Likewise.
* include/tr1_impl/boost_shared_ptr.h: Remove, splitting into
separate implementations for std and tr1.
* include/bits/boost_sp_shared_count.h: Remove.
* include/tr1/boost_sp_shared_count.h: Remove.
* include/bits/shared_ptr.h: New. Combines boost_sp_shared_count.h
and boost_shared_ptr.h into one file.
(__shared_count,__shared_ptr,shared_ptr,swap): Add unique_ptr
and rvalue-reference support as per current WP.
* include/tr1/shared_ptr.h: New. Combines boost_sp_shared_count.h
and boost_shared_ptr.h into one file.
* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: New.
* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: New.
* testsuite/20_util/shared_ptr/cons/unique_ptr_deleter_ref.cc: New.
* testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: New.
* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue.cc: New.
* testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc: New.
* testsuite/20_util/shared_ptr/assign/unique_ptr_rvalue.cc: New.
* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: New.
* testsuite/20_util/shared_ptr/assign/auto_ptr_rvalue_neg.cc: Remove.
From-SVN: r140012
Adam Nemet [Thu, 4 Sep 2008 22:19:49 +0000 (22:19 +0000)]
mips.h (ISA_HAS_SEQ_SNE): New macro.
* config/mips/mips.h (ISA_HAS_SEQ_SNE): New macro.
* config/mips/mips.c (mips_expand_scc): Also expand seq and sne if
second operand is a reg_imm10_operand.
* config/mips/mips.md (*seq_<GPR:mode><GPR2:mode>_seq,
*sne_<GPR:mode><GPR2:mode>_sne): New patterns.
(*seq_<GPR:mode><GPR2:mode>): Rename to
*seq_zero_<GPR:mode><GPR2:mode>. Don't match if
ISA_HAS_SEQ_SNE.
(*seq_<GPR:mode><GPR2:mode>_mips16): Rename to
*seq_zero_<GPR:mode><GPR2:mode>_mip16. Don't match if
ISA_HAS_SEQ_SNE.
(*sne_<GPR:mode><GPR2:mode>): Rename to
*sne_zero_<GPR:mode><GPR2:mode>. Don't match if
ISA_HAS_SEQ_SNE.
testsuite/
* gcc.target/mips/seq-1.c: New test.
* gcc.target/mips/octeon-seq-1.c: New test.
* gcc.target/mips/octeon-seq-2.c: New test.
* gcc.target/mips/octeon-seq-3.c: New test.
* gcc.target/mips/octeon-seq-4.c: New test.
* gcc.target/mips/scc-2.c: Also pass on sltiu.
* gcc.target/mips/scc-3.c: Likewise.
From-SVN: r140010
Adam Nemet [Thu, 4 Sep 2008 21:24:31 +0000 (21:24 +0000)]
mips.h (ISA_HAS_EXTS): New macro.
* config/mips/mips.h (ISA_HAS_EXTS): New macro.
* config/mips/mips.md (*ashr_trunc<mode>): Name the pattern
combining an arithmetic right shift by more than 31 and a
trunction. Don't match for out-of-range shift amounts. Set
attribute mode to <MODE>.
(*lshr32_trunc<mode>): Name the pattern combining a logical right
shift by 32 and and a truncation. Set attribute mode to <MODE>.
(*<optab>_trunc<mode>_exts): New pattern for truncated right
shifts by less than 32.
(extv): Change predicate on first operand to accept registers.
Change predicate of the other operands from immediate_operand to
const_int_operand. Expand exts when source is a register.
(extzv): Change predicate of the constant operands from
immediate_operand to const_int_operand.
(extzv<mode>): Change predicate of the constant operands from
immediate_operand to const_int_operand and no constraint. Also
remove mode.
(*extzv_trunc<mode>_exts): New pattern.
testsuite/
* gcc.target/mips/truncate-2.c: New test.
* gcc.target/mips/octeon-exts-1.c: New test.
* gcc.target/mips/octeon-exts-2.c: New test.
* gcc.target/mips/octeon-exts-3.c: New test.
* gcc.target/mips/octeon-exts-4.c: New test.
From-SVN: r140009
Adam Nemet [Thu, 4 Sep 2008 21:02:30 +0000 (21:02 +0000)]
mips.h (ISA_HAS_CINS): New macro.
* config/mips/mips.h (ISA_HAS_CINS): New macro.
* config/mips/mips-protos.h (mask_low_and_shift_p,
mask_low_and_shift_len): Declare.
* config/mips/mips.c (mask_low_and_shift_p,
mask_low_and_shift_len): New functions.
(mips_print_operand): Handle new operand prefix "m".
* config/mips/mips.md (*cins<mode>): New pattern.
testsuite/
* gcc.target/mips/octeon-cins-1.c: New test.
* gcc.target/mips/octeon-cins-2.c: New test.
From-SVN: r140008
Le-Chun Wu [Thu, 4 Sep 2008 20:29:54 +0000 (20:29 +0000)]
Add myself to MAINTAINERS file under "Write After Approval".
From-SVN: r140005
Jonathan Wakely [Thu, 4 Sep 2008 20:10:14 +0000 (20:10 +0000)]
* doc/xml/manual/locale.xml: Fix typo.
From-SVN: r140003
Richard Guenther [Thu, 4 Sep 2008 19:32:02 +0000 (19:32 +0000)]
trans-array.c (gfc_conv_array_parameter): Use correct types in building COND_EXPRs.
2008-09-04 Richard Guenther <rguenther@suse.de>
* trans-array.c (gfc_conv_array_parameter): Use correct types
in building COND_EXPRs.
* trans-expr.c (gfc_conv_missing_dummy): Likewise.
* trans-intrinsics.c (gfc_conv_intrinsic_merge): Likewise.
* gfortran.dg/internal_pack_4.f90: Adjust pattern.
From-SVN: r140001
Bernd Schmidt [Thu, 4 Sep 2008 19:18:26 +0000 (19:18 +0000)]
bfin.c (gen_one_bundle): Don't create new nops when optimizing for size.
* config/bfin/bfin.c (gen_one_bundle): Don't create new nops when
optimizing for size.
From-SVN: r139999
Richard Sandiford [Thu, 4 Sep 2008 19:16:14 +0000 (19:16 +0000)]
df-scan.c (df_get_entry_block_def_set): Add STACK_POINTER_REGNUM regardless of epilogue_completed.
gcc/
* df-scan.c (df_get_entry_block_def_set): Add STACK_POINTER_REGNUM
regardless of epilogue_completed.
From-SVN: r139998
Daniel Kraft [Thu, 4 Sep 2008 19:16:13 +0000 (21:16 +0200)]
re PR fortran/37099 (Wrong results when comparing a character array to a character expression)
2008-09-04 Daniel Kraft <d@domob.eu>
* PR fortran/37099
* expr.c (simplify_const_ref): Update expression's character length
when pulling out a substring reference.
2008-09-04 Daniel Kraft <d@domob.eu>
PR fortran/37099
* gfortran.dg/string_compare_1.f90: New text.
* gfortran.dg/string_compare_2.f90: New text.
* gfortran.dg/string_compare_3.f90: New text.
From-SVN: r139997
Vladimir Makarov [Thu, 4 Sep 2008 19:02:33 +0000 (19:02 +0000)]
re PR middle-end/37359 (IRA miscompiled transfer.o in libgfortran, sejmp)
2008-09-04 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/37359
* ira-lives.c (process_bb_node_lives): Check setjmp.
From-SVN: r139996
Paolo Carlini [Thu, 4 Sep 2008 18:57:42 +0000 (18:57 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Tidy checks in case of POSIX threads.
2008-09-04 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Tidy checks in case of
POSIX threads.
* configure: Regenerate.
From-SVN: r139994
Richard Sandiford [Thu, 4 Sep 2008 18:47:35 +0000 (18:47 +0000)]
re PR middle-end/37243 (IRA causes wrong code generation)
gcc/
PR middle-end/37243
* ira-build.c (form_loop_tree): Reverse BB walk.
(create_bb_allocnos): Likewise.
* ira-lives.c (make_regno_born_and_dead, regs_set): Delete.
(mark_reg_store): Rename to...
(mark_ref_live): ...this and take a df_ref argument instead of
note_stores arguments. Assert that we have a register.
(mark_reg_clobber): Delete.
(def_conflicts_with_inputs_p): New function.
(mark_reg_conflicts): Delete.
(mark_reg_death): Rename to...
(mark_ref_dead): ...this and take a df_ref argument instead of
a register. Assert that we have a register.
(process_bb_node_lives): Hoist frequency calculation out of
instruction walk. Convert from a forwards scan to a backwards scan.
Use DF_REF_USES and DF_REF_DEFS instead of register notes and
note_stores. Remove EH_RETURN_DATA_REGNO and regs_set handling.
(create_allocno_live_ranges): Don't create regs_set.
From-SVN: r139993
Ian Lance Taylor [Thu, 4 Sep 2008 17:32:38 +0000 (17:32 +0000)]
rtl.h (LABEL_REF_NONLOCAL_P): Don't check for REG_LABEL_OPERAND or REG_LABEL_TARGET.
./: * rtl.h (LABEL_REF_NONLOCAL_P): Don't check for REG_LABEL_OPERAND
or REG_LABEL_TARGET.
* calls.c (emit_library_call_value_1): Use MEM_P rather than
comparing MODE with MEM.
* gimple.c (gimple_build_predict): Cast END_PREDICTORS before
comparing with GF_PREDICT_TAKEN.
(gimple_get_lhs): Change code to enum gimple_code.
(gimple_set_lhs): Likewise.
* ifcvt.c (noce_process_if_block): Correct GET_MODE to GET_CODE.
* omp-low.c (find_omp_clause): Change kind parameter to enum
omp_clause_code.
* tree-flow.h (find_omp_clause): Update declaration.
* regrename.c (clear_dead_regs): Change kind parameter to enum
reg_note.
* reload1.c (eliminate_regs_1): Use REG_NOTE_KIND rather than
GET_MODE.
* see.c (see_get_extension_data): Change return type to enum
entry_type. Change UNKNOWN to NOT_RELEVANT, SIGN_EXTEND to
SIGNED_EXTENDED_DEF, ZERO_EXTEND to ZERO_EXTENDED_DEF.
(see_gen_normalized_extension): Change extension_code parameter to
enum entry_type.
(see_seek_pre_extension_expr): Change extension_code to enum
entry_type.
(see_merge_one_def_extension): Likewise.
(see_handle_relevant_defs): Likewise.
(see_handle_relevant_uses): Likewise.
(see_analyze_one_def): Likewise.
* tree-cfg.c (need_fake_edge_p): Compare gimple code with
GIMPLE_ASM rather than ASM_EXPR.
* tree-ssa-alias.c (is_escape_site): Compare gimple code with
GIMPLE_RETURN rather than RETURN_EXPR.
* tree-ssa-ccp.c (likely_value): Change code to enum gimple_code.
(evaluate_stmt): Likewise.
* tree-vect-analyze.c (vect_analyze_operations): Change relevance
to enum vect_relevant.
(vect_mark_stmts_to_be_vectorized): Change assertion to not
compare gimple codes with tree codes.
cp/:
* parser.c (check_no_duplicate_clause): Change code parameter to
enum omp_clause_code.
fortran/:
* symbol.c (generate_isocbinding_symbol): Compare
gfc_notification_std with ERROR rather than FAILURE.
* resolve.c (check_assumed_size_reference): Compare array type
with AR_FULL rather than DIMEN_ELEMENT.
(resolve_actual_arglist): Compare with EXPR_VARIABLE rather than
FL_VARIABLE.
From-SVN: r139991
Paul Brook [Thu, 4 Sep 2008 16:43:24 +0000 (16:43 +0000)]
arm.c (arm_size_rtx_costs): Call cost function.
2008-09-04 Paul Brook <paul@codesourcery.com>
* config/arm/arm.c (arm_size_rtx_costs): Call cost function.
From-SVN: r139990
Bernd Schmidt [Thu, 4 Sep 2008 16:10:09 +0000 (16:10 +0000)]
bfin.c (bfin_function_ok_for_sibcall): Restore a null pointer check lost in the recent no-unit-at-a-time patch.
* config/bfin/bfin.c (bfin_function_ok_for_sibcall): Restore a null
pointer check lost in the recent no-unit-at-a-time patch.
From-SVN: r139989
H.J. Lu [Thu, 4 Sep 2008 15:46:05 +0000 (15:46 +0000)]
re PR middle-end/37243 (IRA causes wrong code generation)
2008-09-04 H.J. Lu <hongjiu.lu@intel.com>
PR rtl-optimization/37243
* gfortran.dg/pr37243.f: New.
From-SVN: r139987
Chris Fairles [Thu, 4 Sep 2008 14:35:54 +0000 (14:35 +0000)]
mutex (once_flag): Construct __gthread_once_t in a temporary variable before assigning to _M_once...
2008-09-04 Chris Fairles <chris.fairles@gmail.com>
* include/std/mutex (once_flag): Construct __gthread_once_t in a
temporary variable before assigning to _M_once to avoid initialization
errors.
From-SVN: r139986
Jan Hubicka [Thu, 4 Sep 2008 10:45:57 +0000 (12:45 +0200)]
re PR middle-end/37343 (ICE in expand_expr_real_1, at expr.c:7290)
PR middle-end/37343
* tree-switch-conversion.c (check_final_bb): Accept only IP
invariants.
* g++.dg/torture/pr37343.C New file.
From-SVN: r139983
Ira Rosen [Thu, 4 Sep 2008 10:41:50 +0000 (10:41 +0000)]
slp-perm-1.c: Add call to check_vect.
* gcc.dg/vect/slp-perm-1.c: Add call to check_vect.
* gcc.dg/vect/slp-perm-2.c, gcc.dg/vect/slp-perm-3.c,
gcc.dg/vect/slp-perm-4.c, gcc.dg/vect/slp-perm-5.c,
gcc.dg/vect/slp-perm-6.c, gcc.dg/vect/slp-perm-7.c,
gcc.dg/vect/slp-perm-8.c, gcc.dg/vect/slp-perm-9.c: Likewise.
From-SVN: r139982
Jan Hubicka [Thu, 4 Sep 2008 10:34:35 +0000 (12:34 +0200)]
tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges): Break out from ...
* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges):
Break out from ...
(vrp_evaluate_conditional_warnv_with_ops): ... this one. Add
using_ranges argument.
(vrp_evaluate_conditional): Avoid bogus warning for type range.
(vrp_visit_cond_stmt): Update call of
vrp_evaluate_conditional_warnv_with_ops
From-SVN: r139981
Jan Hubicka [Thu, 4 Sep 2008 10:30:26 +0000 (12:30 +0200)]
re PR tree-optimization/37345 (Segfault in decl_function_context (TYPE_MAIN_VARIANT))
PR tree-optimization/37345
PR tree-optimization/37358
PR tree-optimization/37357
* tree.c (build_function_type_skip_args): Build distinct type copy;
set TYPE_CONTEXT.
(build_function_decl_skip_args): Set type of new decl not orig decl;
clear DECL_VINDEX for methods turned into functions.
From-SVN: r139980
Nick Clifton [Thu, 4 Sep 2008 09:43:08 +0000 (09:43 +0000)]
configure.ac (HAVE_GAS_LCOMM_WITH_ALIGNMENT): New assembler check.
* configure.ac (HAVE_GAS_LCOMM_WITH_ALIGNMENT): New assembler
check.
* configure: Regenerate.
* config.in: Regenerate.
* config/i386/bsd.h (ASM_OUTPUT_ALIGNED_LOCAL): Use .lcomm with an
alignment field, if it is supported.
From-SVN: r139979
Kai Tietz [Thu, 4 Sep 2008 08:25:25 +0000 (08:25 +0000)]
t-mingw32 (SHLIB_LC): Change order of import libraries.
2008-09-04 Kai Tietz <kai.tietz@onevision.com>
* config/i386/t-mingw32 (SHLIB_LC): Change order of import
libraries.
From-SVN: r139977
Sebastian Pop [Thu, 4 Sep 2008 05:57:10 +0000 (05:57 +0000)]
configure.ac (--with-cloog-polylib): New.
2008-09-03 Sebastian Pop <sebastian.pop@amd.com>
* configure.ac (--with-cloog-polylib): New.
(--disable-cloog-version-check): New.
(--disable-ppl-version-check): New.
* configure: Re-generate.
From-SVN: r139973
Tobias Grosser [Thu, 4 Sep 2008 01:15:41 +0000 (01:15 +0000)]
2008-09-03 Tobias Grosser <grosser@fim.uni-passau.de>
* gcc/testsuite/lib/target-supports.exp
(check_effective_target_fgraphite): Fix test. Graphite is only available
with -O1.
From-SVN: r139970
David Edelsohn [Thu, 4 Sep 2008 01:03:38 +0000 (21:03 -0400)]
[multiple changes]
2008-09-03 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/rs6000.c (processor_target_table): Do not
enable VMX for POWER6.
2008-09-03 Anton Blanchard <anton@samba.org>
* config/rs6000/rs6000.c (rs6000_split_lock_test_and_set): Do not
emit memory barrier before operation.
From-SVN: r139969
Paolo Carlini [Thu, 4 Sep 2008 00:57:57 +0000 (00:57 +0000)]
gnu.ver: Also export __once_functor_lock...
2008-09-03 Paolo Carlini <paolo.carlini@oracle.com>
* config/abi/pre/gnu.ver: Also export __once_functor_lock; tighten
GLIBCXX_3.4 exports (necessary in case of undef _GLIBCXX_HAVE_TLS).
* Makefile.in: Regenerate.
* src/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r139968
GCC Administrator [Thu, 4 Sep 2008 00:16:32 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r139966
Paolo Carlini [Wed, 3 Sep 2008 22:50:59 +0000 (22:50 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Fix typo in last commit, check _POSIX_TIMEOUTS, not _POSIX_TIMERS.
2008-09-03 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Fix typo in last commit,
check _POSIX_TIMEOUTS, not _POSIX_TIMERS.
* configure: Regenerate.
From-SVN: r139963
John David Anglin [Wed, 3 Sep 2008 22:50:07 +0000 (22:50 +0000)]
re PR testsuite/37325 (Visibility test fails)
PR testsuite/37325
* config/pa/pa64-hpux.h (ASM_OUTPUT_EXTERNAL_REAL): Call
default_elf_asm_output_external.
From-SVN: r139962
Paolo Carlini [Wed, 3 Sep 2008 22:31:29 +0000 (22:31 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check _POSIX_TIMERS too.
2008-09-03 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check _POSIX_TIMERS too.
* configure: Regenerate.
From-SVN: r139961
H.J. Lu [Wed, 3 Sep 2008 22:08:03 +0000 (22:08 +0000)]
vector-4.c: Add -mavx for x86.
2008-09-03 H.J. Lu <hongjiu.lu@intel.com>
* gcc.c-torture/compile/vector-4.c: Add -mavx for x86.
* gcc.target/i386/avx-3.c: Require DFP support.
From-SVN: r139960
Chris Fairles [Wed, 3 Sep 2008 22:02:04 +0000 (22:02 +0000)]
condition_variable: Use new deleted ctors.
2008-09-03 Chris Fairles <chris.fairles@gmail.com>
* include/std/condition_variable: Use new deleted ctors.
* include/std/mutex: Likewise plus implement timed_mutex,
recursive_timed_mutex and call_once.
* src/condition_variable.cc: Implement wait(). Use gthread types.
Remove _GTHREADS_HAS_COND checks in favor of global
_GLIBCXX_HAS_GTHREADS.
* src/mutex.cc (call_once): Implementation using TLS with mutex
fallback.
* config/abi/pre/gnu.ver: Add exported symbols.
* testsuite/lib/libstdc++.exp (check_v3_target_gthreads): New.
* testsuite/lib/dg-options.exp (dg-require-gthreads): Likewise.
* testsuite/30_threads/lock_guard/requirements/typedefs.cc: Use
dg-require-gthreads and dg-require-cstdint.
* testsuite/30_threads/lock_guard/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/requirements/typedefs.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/unique_lock/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/30_threads/unique_lock/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Also adjust dg-error
lines for deleted members.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/call_once/once_flag.cc: New.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
From-SVN: r139959
Jakub Jelinek [Wed, 3 Sep 2008 20:34:35 +0000 (22:34 +0200)]
re PR c++/37348 (internal compiler error: tree check: expected var_decl, have field_decl in cp_finish_decl, at cp/decl.c:5461)
PR c++/37348
* decl.c (cp_finish_decl): Only set
DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P if decl is VAR_DECL.
* g++.dg/parse/crash45.C: New test.
From-SVN: r139956
Jakub Jelinek [Wed, 3 Sep 2008 20:33:21 +0000 (22:33 +0200)]
re PR c++/37189 (OpenMP task construct with implicit firstprivate variables ICEs)
PR c++/37189
* cp-tree.h (defer_mark_used_calls, deferred_mark_used_calls): New
extern decls.
* decl2.c (mark_used): If defer_mark_used_calls, push decl into
deferred_mark_used_calls vector and exit early.
* decl.c (defer_mark_used_calls, deferred_mark_used_calls): New
variables.
(finish_function): Set defer_mark_used_calls for the duration of the
function. Call mark_used on any queued decls.
* g++.dg/gomp/pr37189.C: New test.
From-SVN: r139955
Jakub Jelinek [Wed, 3 Sep 2008 20:28:52 +0000 (22:28 +0200)]
re PR debug/37322 (FAIL: gfortran.dg/debug/pr35154-dwarf2.f)
PR debug/37322
* gfortran.dg/debug/pr35154-dwarf2.f: Fix up scan-assembler regexps.
From-SVN: r139954
Jeff Law [Wed, 3 Sep 2008 20:22:49 +0000 (14:22 -0600)]
h8300.c (expand_a_shift): Avoid invalid RTL sharing.
* h8300.c (expand_a_shift): Avoid invalid RTL sharing.
From-SVN: r139953
Vladimir Makarov [Wed, 3 Sep 2008 20:20:57 +0000 (20:20 +0000)]
re PR middle-end/37243 (IRA causes wrong code generation)
2008-09-03 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-opt/37243
* ira-int.h (ira_loop_tree_node): Rename mentioned_allocnos to
all_allocnos.
* ira-color.c (print_loop_title): Use all_allocnos.
(color_pass): Ditto. Don't add border_allocnos. Check that
subloop allocno in the correspdoning bitmap all_allocnos.
* ira-emit.c (change_loop): Use all_allocnos.
* ira-build.c (create_loop_tree_nodes, finish_loop_tree_node):
Ditto.
(ira_create_allocno): Set up all_allocnos bit for the created
allocno.
(create_cap_allocno): Remove setting mentioned_allocnos.
(create_insn_allocnos): Ditto.
(remove_unnecessary_allocnos): Use all_allocnos.
(check_allocno_creation): Check that allocnos are in the
corresponding bitmap all_allocnos.
From-SVN: r139952
Richard Henderson [Wed, 3 Sep 2008 20:15:27 +0000 (13:15 -0700)]
alpha.c (alpha_split_lock_test_and_set): Move memory barrier to below the test-and-set.
* config/alpha/alpha.c (alpha_split_lock_test_and_set): Move
memory barrier to below the test-and-set.
(alpha_split_lock_test_and_set_12): Likewise.
From-SVN: r139950
Vladimir Makarov [Wed, 3 Sep 2008 20:12:27 +0000 (20:12 +0000)]
re PR middle-end/37243 (IRA causes wrong code generation)
2008-09-03 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-opt/37243
* ira-conflicts.c (REG_SUBREG_P, go_through_subreg): New.
(process_regs_for_copy): Process subregs. Refine check when cost
is taken into account in ira-costs.c.
(process_reg_shuffles): Use REG_SUBREG_P.
(add_insn_allocno_copies): Ditto. Ignore modes.
* ira-color.c (conflict_allocno_vec): New.
(COST_HOP_DIVISOR): New macro.
(update_copy_costs_1): Use it.
(update_conflict_hard_regno_costs): New function.
(assign_hard_reg): Use it.
(ira_color): Allocate and free conflict_allocno_vec.
From-SVN: r139949
Vladimir Makarov [Wed, 3 Sep 2008 19:49:30 +0000 (19:49 +0000)]
re PR rtl-optimization/37296 (Bootstrap failure compiling libgcc)
2008-09-03 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-opt/37296
* ira-int.h (ira_sort_insn_chain): Remove.
* ira.c (basic_block_order_nums, chain_insn_order,
chain_freq_compare, chain_bb_compare, ira_sort_insn_chain): Remove.
(ira): Don't call ira_sort_insn_chain.
* reload1.c (reload): Don't call ira_sort_insn_chain.
From-SVN: r139948
Andrew Pinski [Wed, 3 Sep 2008 19:27:35 +0000 (19:27 +0000)]
re PR middle-end/36445 (ICE in expand_expr_real_1 with -O1 with vector registers)
2008-09-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/36445
* g++.dg/torture/pr36445.C: New test.
From-SVN: r139947
Andrew Pinski [Wed, 3 Sep 2008 18:48:27 +0000 (18:48 +0000)]
re PR middle-end/37293 (r139762 breaks libstdc++ build on darwin)
2008-09-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/37293
* cgraphunit.c (update_call_expr): Remove eh regions from statements
which become non throw.
(cgraph_function_versioning): Also clear DECL_WEAK. Call
update_call_expr after updating the flags on the decl.
2008-09-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/37293
* g++.dg/torture/ipa-cp-1.C: New test.
From-SVN: r139946
Jan Hubicka [Wed, 3 Sep 2008 18:16:26 +0000 (20:16 +0200)]
re PR tree-optimization/37315 (gcc.c-torture/execute/931018-1.c int-compare.c ieee/inf-2.c mzero6.c)
PR tree-optimization/37315
* cgraph.c (cgraph_create_edge): Use gimple_has_body_p.
* cgraphunit.c (verify_cgraph_node): drop gimple_body check.
(cgraph_analyze_functions): Use node->analyzed
(cgraph_mark_functions_to_output): Likewise.
(cgraph_expand_function): All functions can be released after
expanding.
(cgraph_optimize): Use gimple_has_body_p.
* ipa-inline.c (cgraph_clone_inlined_nodes): Use analyzed flag.
(cgraph_decide_inlining_incrementally): Likewise.
(inline_transform): Inline transform.
* tree-inline.c (initialize_cfun): Do now shallow copy structure;
copy fields needed.
(inlinable_function_p): Drop gimple_body check.
(expand_call_inline): Use gimple_has_body_p.
* gimple.c (gimple_has_body_p): New.
* gimple.h (gimple_has_body_p): Add prototype.
* tree-cfg.c (execute_build_cfg): Remove gimple_body.
(dump_function_to_file): Use gimple_has_body_p check.
From-SVN: r139945
Chris Fairles [Wed, 3 Sep 2008 17:47:32 +0000 (17:47 +0000)]
condition_variable: Use new deleted ctors.
2008-09-03 Chris Fairles <chris.fairles@gmail.com>
* include/std/condition_variable: Use new deleted ctors.
* include/std/mutex: Likewise plus implement timed_mutex,
recursive_timed_mutex and call_once.
* src/condition_variable.cc: Implement wait(). Use gthread types.
Remove _GTHREADS_HAS_COND checks in favor of global
_GLIBCXX_HAS_GTHREADS.
* src/mutex.cc (call_once): Implementation using TLS with mutex
fallback.
* config/abi/pre/gnu.ver: Add exported symbols.
* testsuite/lib/libstdc++.exp (check_v3_target_gthreads): New.
* testsuite/lib/dg-options.exp (dg-require-gthreads): Likewise.
* testsuite/30_threads/lock_guard/requirements/typedefs.cc: Use
dg-require-gthreads and dg-require-cstdint.
* testsuite/30_threads/lock_guard/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/requirements/typedefs.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/unique_lock/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/30_threads/unique_lock/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Also adjust dg-error
lines for deleted members.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/call_once/once_flag.cc: New.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
From-SVN: r139944
Chris Fairles [Wed, 3 Sep 2008 17:46:09 +0000 (17:46 +0000)]
condition_variable: Use new deleted ctors.
2008-09-03 Chris Fairles <chris.fairles@gmail.com>
* include/std/condition_variable: Use new deleted ctors.
* include/std/mutex: Likewise plus implement timed_mutex,
recursive_timed_mutex and call_once.
* src/condition_variable.cc: Implement wait(). Use gthread types.
Remove _GTHREADS_HAS_COND checks in favor of global
_GLIBCXX_HAS_GTHREADS.
* src/mutex.cc (call_once): Implementation using TLS with mutex
fallback.
* config/abi/pre/gnu.ver: Add exported symbols.
* testsuite/lib/libstdc++.exp (check_v3_target_gthreads): New.
* testsuite/lib/dg-options.exp (dg-require-gthreads): Likewise.
* testsuite/30_threads/lock_guard/requirements/typedefs.cc: Use
dg-require-gthreads and dg-require-cstdint.
* testsuite/30_threads/lock_guard/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/requirements/typedefs.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/unique_lock/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/30_threads/unique_lock/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Also adjust dg-error
lines for deleted members.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/call_once/once_flag.cc: New.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
From-SVN: r139943
Jakub Jelinek [Wed, 3 Sep 2008 17:30:35 +0000 (19:30 +0200)]
Fix up PR number - PR c++/37346
From-SVN: r139941
Richard Guenther [Wed, 3 Sep 2008 16:08:05 +0000 (16:08 +0000)]
configure.ac: Always pass -DCLOOG_PPL_BACKEND to the cloog test.
2008-09-03 Richard Guenther <rguenther@suse.de>
* configure.ac: Always pass -DCLOOG_PPL_BACKEND to the
cloog test.
* configure: Re-generate.
From-SVN: r139940
David Edelsohn [Wed, 3 Sep 2008 13:18:42 +0000 (13:18 +0000)]
* g++.dg/ext/java-2.C: Disable on AIX.
From-SVN: r139938
Jakub Jelinek [Wed, 3 Sep 2008 13:03:56 +0000 (15:03 +0200)]
re PR target/37436 (arm-cross-g++. internal compiler error: in extract_insn, at recog.c:1990)
PR c++/37436
* gimple.h (gimple_has_substatements): GIMPLE_OMP_CRITICAL has
substatements.
* tree-inline.c (remap_gimple_stmt): Handle GIMPLE_OMP_CRITICAL.
* g++.dg/gomp/pr37436.C: New test.
From-SVN: r139937
Bernd Schmidt [Wed, 3 Sep 2008 12:23:19 +0000 (12:23 +0000)]
gcc/
From Michael Frysinger <michael.frysinger@analog.com>
* config/bfin/bfin.c (bfin_cpus[]): Add 0.1 for bf522, bf523, bf524,
bf525, bf526, bf527, bf542, bf544, bf547, bf548, and bf549. Add 0.2
for bf538.
gcc/testsuite/
From Mike Frysinger <michael.frysinger@analog.com>
* gcc.target/bfin/mcpu-bf522.c: Check SILICON_REVISION is 0x0001.
* gcc.target/bfin/mcpu-bf523.c: Likewise.
* gcc.target/bfin/mcpu-bf524.c: Likewise.
* gcc.target/bfin/mcpu-bf525.c: Likewise.
* gcc.target/bfin/mcpu-bf526.c: Likewise.
* gcc.target/bfin/mcpu-bf527.c: Likewise.
* gcc.target/bfin/mcpu-bf542.c: Likewise.
* gcc.target/bfin/mcpu-bf544.c: Likewise.
* gcc.target/bfin/mcpu-bf547.c: Likewise.
* gcc.target/bfin/mcpu-bf548.c: Likewise.
* gcc.target/bfin/mcpu-bf549.c: Likewise.
From-SVN: r139935
Paul Brook [Wed, 3 Sep 2008 12:19:34 +0000 (12:19 +0000)]
Move picochip directory to correct location.
From-SVN: r139934
Hari Sandanagobalane [Wed, 3 Sep 2008 12:10:49 +0000 (12:10 +0000)]
Add picoChip port.
2008-09-03 Hari Sandanagobalane <hariharan@picochip.com>
Add picoChip port.
* MAINTAINERS: Add picoChip maintainers.
libgcc/
* config.host: Add picochip-*-*.
gcc/
* doc/extend.texi: Document picoChip builtin functions.
* doc/invoke.texi: Document picoChip options.
* doc/contrib.texi: Add picoChip contribution.
* doc/md.texi: Document picoChip constraints.
* config.gcc: Add picochip-*-*.
* config/picochip/: Add new port.
From-SVN: r139932
Richard Guenther [Wed, 3 Sep 2008 11:35:18 +0000 (11:35 +0000)]
re PR ada/37328 (ACATS la14021 ICE in gimple_assign_set_rhs1, at gimple.h:1747)
2008-09-03 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37328
* tree-sra.c (sra_build_assignment): Gimplify properly.
(generate_copy_inout): Take the correct stmt as definition,
remove bogus assert.
From-SVN: r139931
Bernd Schmidt [Wed, 3 Sep 2008 09:49:29 +0000 (09:49 +0000)]
From Michael Frysinger <michael.frysinger@analog.com>
* config/bfin/bfin.c (bfin_handle_option): Remove BF561 warning.
From-SVN: r139930
Bernd Schmidt [Wed, 3 Sep 2008 09:32:18 +0000 (09:32 +0000)]
bfin.c (bfin_expand_prologue): Honour no_stack_limit attribute.
* config/bfin/bfin.c (bfin_expand_prologue): Honour no_stack_limit
attribute.
From-SVN: r139928
Danny Smith [Wed, 3 Sep 2008 06:07:34 +0000 (06:07 +0000)]
gthr-win32.h (CONST_CAST2): Really make sure CONST_CAST2 is defined.
* gthr-win32.h (CONST_CAST2): Really make sure CONST_CAST2 is
defined.
(__gthread_setspecific): Revert 2008-08-31 change to
__GTHREAD_HIDE_W32API case. Apply it to !__GTHREAD_HIDE_W32API
case.
From-SVN: r139927
Jason Merrill [Wed, 3 Sep 2008 04:10:27 +0000 (00:10 -0400)]
re PR c++/37208 (C++0x deleted functions and SFINAE)
PR c++/37208
* call.c (build_over_call): Make =delete work with SFINAE.
* class.c (resolve_address_of_overloaded_function): Likewise.
* cp-tree.h (struct lang_decl_flags): Rename threadprivate_p to
threadprivate_or_deleted_p.
(CP_DECL_THREADPRIVATE_P): Adjust.
(DECL_DELETED_FN): Likewise.
(SD_UNINITIALIZED, SD_INITIALIZED, SD_DEFAULTED): New macros.
(SD_DELETED): New macro.
* parser.c (cp_parser_init_declarator): Use them.
* decl.c (start_decl): Use them.
* decl2.c (mark_used): Give =deleted error even in sizeof.
* typeck2.c (check_narrowing): Downgrade narrowing error to
permerror.
From-SVN: r139926
Aldy Hernandez [Wed, 3 Sep 2008 01:00:04 +0000 (01:00 +0000)]
diagnostic.c (error_at): New.
* diagnostic.c (error_at): New.
* toplev.h (error_at): New prototype.
* c-typeck.c (build_array_ref): Call error_at instead of error.
Pass location to pedwarn.
cp/
* typeck.c (build_array_ref): Use new location argument.
* class.c (build_vtbl_ref_1): Pass location to build_array_ref.
* call.c (build_new_op): Same.
* decl2.c (grok_array_decl): Same.
* cp-tree.h (build_array_ref): Add location argument to prototype.
From-SVN: r139924
GCC Administrator [Wed, 3 Sep 2008 00:16:33 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r139922
John David Anglin [Tue, 2 Sep 2008 23:43:21 +0000 (23:43 +0000)]
pr33009.c: xfail on hppa*-*-*.
* gcc.c-torture/compile/pr33009.c: xfail on hppa*-*-*.
* gcc.c-torture/compile/pr11832.c: Likewise.
From-SVN: r139919
Adam Nemet [Tue, 2 Sep 2008 21:45:45 +0000 (21:45 +0000)]
Fix previous changelog entry.
From-SVN: r139918
Adam Nemet [Tue, 2 Sep 2008 21:41:16 +0000 (21:41 +0000)]
* sel-sched.c (fur_orig_expr_found): Mark arguments unused.
From-SVN: r139916
Sebastian Pop [Tue, 2 Sep 2008 20:02:37 +0000 (20:02 +0000)]
Add the Graphite merge entry.
From-SVN: r139912
Jakub Jelinek [Tue, 2 Sep 2008 19:59:58 +0000 (21:59 +0200)]
dwarf2out.c (tree_add_const_value_attribute): Only handle VAR_DECL and CONST_DECL.
* dwarf2out.c (tree_add_const_value_attribute): Only handle
VAR_DECL and CONST_DECL.
From-SVN: r139911
H.J. Lu [Tue, 2 Sep 2008 19:49:41 +0000 (19:49 +0000)]
i386.c (X86_64_VARARGS_SIZE): Removed.
* config/i386/i386.c (X86_64_VARARGS_SIZE): Removed.
(setup_incoming_varargs_64): Assume cum != NULL. Set/check
ix86_varargs_gpr_size and ix86_varargs_fpr_size. Use
ix86_varargs_gpr_size instead of X86_64_REGPARM_MAX.
Don't set ix86_save_varrargs_registers.
(ix86_setup_incoming_varargs): Assume cum != NULL.
(ix86_va_start): Check ix86_varargs_gpr_size and
ix86_varargs_fpr_size instead of cfun->va_list_gpr_size and
cfun->va_list_fpr_size, respectively. Subtract 8*X86_64_REGPARM_MAX
from frame pointer if ix86_varargs_gpr_size == 0.
(ix86_compute_frame_layout): Updated.
* config/i386/i386.h (ix86_save_varrargs_registers): Removed.
(ix86_varargs_gpr_size): Define.
(ix86_varargs_fpr_size): Likewise.
(machine_function): Remove save_varrargs_registers.
Add varargs_gpr_size and varargs_fpr_size.
* gcc.target/i386/amd64-abi-3.c: New test.
* gcc.target/i386/amd64-abi-4.c: Likewise.
* gcc.target/i386/amd64-abi-5.c: Likewise.
* gcc.target/i386/amd64-abi-6.c: Likewise.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r139910
Jakub Jelinek [Tue, 2 Sep 2008 19:28:34 +0000 (21:28 +0200)]
alpha.c (va_list_skip_additions, [...]): Tuplify.
* config/alpha/alpha.c (va_list_skip_additions,
alpha_stdarg_optimize_hook, alpha_gimplify_va_arg_1): Tuplify.
(alpha_gimplify_va_arg): Call unshare_expr on second use of
offset_field.
From-SVN: r139909
Jakub Jelinek [Tue, 2 Sep 2008 19:13:47 +0000 (21:13 +0200)]
re PR tree-optimization/36766 (natGC.cc:229: internal compiler error: Segmentation fault)
PR tree-optimization/36766
* tree-cfg.c (gimple_purge_all_dead_eh_edges): Do nothing
for already removed basic blocks.
* g++.dg/tree-ssa/pr36766.C: New test.
From-SVN: r139908
Jakub Jelinek [Tue, 2 Sep 2008 18:46:29 +0000 (20:46 +0200)]
re PR testsuite/36332 (FAIL: gcc.dg/torture/type-generic-1.c execution test on powerpc-*)
PR target/36332
* real.c (real_maxval): Clear a lower bit to make real_maxval
match get_max_float for IBM long double format.
* gcc.c-torture/execute/ieee/pr36332.c: New test.
From-SVN: r139906
Andreas Schwab [Tue, 2 Sep 2008 18:43:30 +0000 (18:43 +0000)]
configure.ac: Use m4_quote to quote the expansion of m4_do.
* configure.ac: Use m4_quote to quote the expansion of m4_do.
* configure: Regenerate.
From-SVN: r139905
Jakub Jelinek [Tue, 2 Sep 2008 18:42:48 +0000 (20:42 +0200)]
re PR c/37171 (Canonical spelling optimization dependency)
PR c/37171
* g++.dg/ext/attrib34.C: New test.
From-SVN: r139904
Richard Sandiford [Tue, 2 Sep 2008 18:39:32 +0000 (18:39 +0000)]
simplify-rtx.c (simplify_binary_operation_1): Check for CONST...
gcc/
* simplify-rtx.c (simplify_binary_operation_1): Check for CONST,
SYMBOL_REF and LABEL_REF when applying plus_constant, instead of
checking for a non-VOID CONSTANT_P.
From-SVN: r139903
Jan Hubicka [Tue, 2 Sep 2008 18:10:54 +0000 (20:10 +0200)]
* predict.c (pass_strip_predict_hints): Avoid bugs dump file.
From-SVN: r139898
Jan Hubicka [Tue, 2 Sep 2008 18:09:05 +0000 (20:09 +0200)]
* expmed.c (expand_divmod): Fix test of smod_pow2_cheap and sdiv_pow2_cheap
From-SVN: r139897
H.J. Lu [Tue, 2 Sep 2008 16:36:49 +0000 (16:36 +0000)]
expr.c (emit_group_store): Don't assert stack temp mode size.
2008-09-02 H.J. Lu <hongjiu.lu@intel.com>
* expr.c (emit_group_store): Don't assert stack temp mode size.
From-SVN: r139894
Sebastian Pop [Tue, 2 Sep 2008 16:31:04 +0000 (16:31 +0000)]
backport: configure: Regenerate.
2008-09-02 Sebastian Pop <sebastian.pop@amd.com>
Tobias Grosser <grosser@fim.uni-passau.de>
Jan Sjodin <jan.sjodin@amd.com>
Harsha Jagasia <harsha.jagasia@amd.com>
Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
Konrad Trifunovic <konrad.trifunovic@inria.fr>
Adrien Eliche <aeliche@isty.uvsq.fr>
Merge from graphite branch.
* configure: Regenerate.
* Makefile.in: Regenerate.
* configure.ac (host_libs): Add ppl and cloog.
Add checks for PPL and CLooG.
* Makefile.def (ppl, cloog): Added modules and dependences.
* Makefile.tpl (PPLLIBS, PPLINC, CLOOGLIBS, CLOOGINC): New.
(HOST_PPLLIBS, HOST_PPLINC, HOST_CLOOGLIBS, HOST_CLOOGINC): New.
gcc/
* graphite.c: New.
* graphite.h: New.
* tree-loop-linear.c (perfect_loop_nest_depth): Export.
* doc/invoke.texi (-floop-block, -floop-interchange,
-floop-strip-mine): Document new flags.
* tree-into-ssa.c (gimple_vec): Moved...
* tree-loop-distribution.c (rdg_component): Moved...
* cfgloopmanip.c: Include tree-flow.h.
(update_dominators_in_loop): New.
(create_empty_if_region_on_edge): New.
(create_empty_loop_on_edge): New.
(loopify): Use update_dominators_in_loop.
* tree-pass.h (pass_graphite_transforms): Declared.
* configure: Regenerate.
* tree-phinodes.c (make_phi_node): Export.
(add_phi_node_to_bb): New, split from create_phi_node.
* tree-chrec.c (for_each_scev_op): New.
* tree-chrec.h (for_each_scev_op): Declared.
* tree-ssa-loop-ivopts.c (get_phi_with_result): New.
(remove_statement): Call get_phi_with_result.
* config.in (HAVE_cloog): Undef.
* gdbinit.in (pgg): New.
* timevar.def (TV_GRAPHITE_TRANSFORMS): New.
* tree-ssa-loop.c (graphite_transforms): New.
(gate_graphite_transforms): New.
(pass_graphite_transforms): New.
* configure.ac (PPLLIBS, PPLINC, CLOOGLIBS, CLOOGINC,
HAVE_cloog): Defined.
* tree-vectorizer.c (rename_variables_in_bb): Export.
* tree-data-ref.c (dr_may_alias_p): Export.
(stmt_simple_memref_p): New.
(find_data_references_in_stmt): Export.
(find_data_references_in_loop): Export.
(create_rdg_edge_for_ddr): Initialize RDGE_RELATION.
(create_rdg_edges_for_scalar): Initialize RDGE_RELATION.
(create_rdg_vertices): Export.
(build_empty_rdg): New.
(build_rdg): Call build_empty_rdg. Free dependence_relations.
* tree-data-ref.h (rdg_component): ... here.
(scop_p): New.
(struct data_reference): Add a field scop.
(DR_SCOP): New.
(find_data_references_in_loop): Declared.
(find_data_references_in_stmt): Declared.
(create_rdg_vertices): Declared.
(dr_may_alias_p): Declared.
(stmt_simple_memref_p): Declared.
(struct rdg_edge): Add a field ddr_p relation.
(build_empty_rdg): Declared.
* lambda.h (lambda_matrix): Declare a VEC of.
(find_induction_var_from_exit_cond): Declared.
(lambda_vector_compare): New.
* common.opt (fgraphite, floop-strip-mine,
floop-interchange, floop-block): New flags.
* lambda-code.c (find_induction_var_from_exit_cond): Export.
* cfgloop.c (is_loop_exit): New.
* cfgloop.h (is_loop_exit): Declared.
(create_empty_if_region_on_edge): Declared.
(create_empty_loop_on_edge): Declared.
* tree-flow.h (add_phi_node_to_bb): Declared.
(make_phi_node): Declared.
(rename_variables_in_bb): Declared.
(perfect_loop_nest_depth): Declared.
(graphite_transform_loops): Declared.
* Makefile.in (cfgloopmanip.o): Depend on TREE_FLOW_H.
(graphite.o-warn): Add -Wno-error.
(PPLLIBS, PPLINC, CLOOGLIBS, CLOOGINC): Declared.
(LIBS): Add GMPLIBS, CLOOGLIBS, PPLLIBS.
(INCLUDES): Add PPLINC, CLOOGINC.
(OBJS-common): Add graphite.o.
(graphite.o): Add rule.
* gimple.h (gimple_vec): ... here.
* tree-cfg.c (print_loops): Start printing at ENTRY_BLOCK_PTR.
* passes.c (init_optimization_passes): Schedule
pass_graphite_transforms.
testsuite/
* gcc.dg/graphite/scop-{0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18}.c: New.
* gcc.dg/graphite/graphite.exp: New.
* gcc.dg/graphite/scop-matmult.c: New.
* gcc.dg/graphite/block-0.c: New.
* lib/target-supports.exp (check_effective_target_fgraphite): New.
* gfortran.dg/graphite/block-1.f90: New.
* gfortran.dg/graphite/scop-{1,2}.f: New.
* gfortran.dg/graphite/block-{1,3,4}.f90: New.
* gfortran.dg/graphite/graphite.exp: New.
Co-Authored-By: Adrien Eliche <aeliche@isty.uvsq.fr>
Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com>
Co-Authored-By: Harsha Jagasia <harsha.jagasia@amd.com>
Co-Authored-By: Jan Sjodin <jan.sjodin@amd.com>
Co-Authored-By: Konrad Trifunovic <konrad.trifunovic@inria.fr>
Co-Authored-By: Tobias Grosser <grosser@fim.uni-passau.de>
From-SVN: r139893
Samuel Tardieu [Tue, 2 Sep 2008 16:23:29 +0000 (16:23 +0000)]
re PR target/37283 (Cannot build crtbegin.o for ARM)
gcc/
PR target/37283
* opts.c (decode_options): Move processing of -fno-unit-at-a-time
and -fno-toplevel-reorder after handle_options.
From-SVN: r139892
Paul Brook [Tue, 2 Sep 2008 15:01:52 +0000 (15:01 +0000)]
arm.c (arm_tune_cortex_a9): Define.
2008-09-02 Paul Brook <paul@codesourcery.com>
* config/arm/arm.c (arm_tune_cortex_a9): Define.
(arm_override_options): Set arm_tune_cortex_a9.
(arm_rtx_costs_1): Make register shifts more expensive on Cortex-A9.
(arm_issue_rate): Handle cortexa9.
* config/arm/arm.h (arm_tune_cortex_a9): Declare.
* config/arm/arm-cores.def: Add cortex-a9.
* config/arm/arm-tune.md: Regenerate.
* config/arm/arm.md: Include cortex-a9.md.
(generic_sched, generic_vfp): Add cortexa9.
* config/arm/cortex-a9.md: New file.
From-SVN: r139891
Richard Guenther [Tue, 2 Sep 2008 13:48:11 +0000 (13:48 +0000)]
re PR tree-optimization/37327 (another ice in set_value_range, at tree-vrp.c:397)
2008-09-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37327
* tree-vrp.c (register_new_assert_for): Make sure to not have
TREE_OVERFLOW set on the bound.
* gcc.c-torture/compile/pr37327.c: New testcase.
From-SVN: r139890
Andrey Belevantsev [Tue, 2 Sep 2008 13:02:44 +0000 (17:02 +0400)]
Fixed typo in date of the 2008-09-01 MOVE_RATIO commit.
2008-09-02 Alexander Monakov <amonakov@ispras.ru>
Fixed typo in date of the 2008-09-01 MOVE_RATIO commit.
* config/ia64/ia64.opt (msched-ar-data-spec): Default to 1.
* config/ia64/ia64.c (ia64_set_sched_flags): Always initialize
spec_info->mask.
From-SVN: r139889
Victor Kaplansky [Tue, 2 Sep 2008 12:38:32 +0000 (12:38 +0000)]
spu.md (divdf3): Removed.
2008-09-02 Victor Kaplansky <victork@il.ibm.com>
* gcc/config/spu/spu.md (divdf3): Removed.
Testsuite Changelog:
* gcc.dg/fastmath-2.c: New.
From-SVN: r139888
Jakub Jelinek [Tue, 2 Sep 2008 10:33:46 +0000 (12:33 +0200)]
re PR tree-optimization/37095 (Trouble with covariant return)
PR tree-optimization/37095
* cgraph.c (cgraph_node): When creating new cgraph node after
assembler_name_hash has been populated, record it in the hash
table.
* g++.dg/inherit/thunk9.C: New test.
From-SVN: r139887
Jerry DeLisle [Tue, 2 Sep 2008 08:50:13 +0000 (08:50 +0000)]
re PR fortran/37228 (F2008: Support g0.<d> edit descriptor)
2008-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/37228
* io.c (check_format): Allow specifying precision with g0 format.
2008-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/37301
PR libfortran/37228
* io/io.h (write_real_g0): Declare new function to handle g0.d format.
* io/transfer.c (formatted_transfer_scalar): Use new function.
* io/format.c (parse_format_list): Enable g0.d.
* io/write.c (write_a_char4): Delete unused var.
(set_fnode_default): New function to set the default fnode w, d, and e
factored from write_real. (write_real): Use new factored function.
(write_real_g0): New function that sets d to that passed by g0.d format
specifier and set format to ES. Default values for w and e are used
from the new function, set_fnode_default.
2008-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/37228
* gfortran.dg/fmt_g0_4.f08: Revised test.
From-SVN: r139886
Daniel Kraft [Tue, 2 Sep 2008 08:13:21 +0000 (10:13 +0200)]
gfortran.h (struct gfc_namespace): New member `implicit_loc'.
2008-09-02 Daniel Kraft <d@domob.eu>
* gfortran.h (struct gfc_namespace): New member `implicit_loc'.
(gfc_add_abstract): New method.
* decl.c (gfc_get_type_attr_spec): Match ABSTRACT attribute.
(gfc_match_derived_decl): Copy abstract attribute in derived symbol.
* dump-parse-tree.c (show_attr): Show ABSTRACT attribute as `ABSTRACT'
only to allow for ABSTRACT types.
* parse.c (parse_interface): Use new gfc_add_abstract.
* primary.c (gfc_match_structure_constructor): Check that no ABSTRACT
type is constructed.
* resolve.c (resolve_typespec_used): New method.
(resolve_fl_derived): Check type in respect to ABSTRACT attribute and
check that no component is of an ABSTRACT type.
(resolve_symbol): Check that no symbol is of an ABSTRACT type.
(resolve_types): Check IMPLICIT declarations for ABSTRACT types.
* symbol.c (gfc_merge_new_implicit): Remember loci of IMPLICIT's.
(gfc_add_abstract): New method.
2008-09-02 Daniel Kraft <d@domob.eu>
* gfortran.dg/abstract_type_1.f90: New test.
* gfortran.dg/abstract_type_2.f03: New test.
* gfortran.dg/abstract_type_3.f03: New test.
* gfortran.dg/abstract_type_4.f03: New test.
From-SVN: r139885
Paul Brook [Tue, 2 Sep 2008 01:44:33 +0000 (01:44 +0000)]
invoke.texi: Document -mword-relocations.
2008-09-01 Paul Brook <paul@codesourcery.com>
* doc/invoke.texi: Document -mword-relocations.
* config/arm/uclinux-elf.h (TARGET_DEFAULT_WORD_RELOCATIONS): Define.
* config/arm/symbian.h (TARGET_DEFAULT_WORD_RELOCATIONS): Define.
* config/arm/vxworks.h (TARGET_DEFAULT_WORD_RELOCATIONS): Define.
* config/arm/arm.c (arm_split_constant): Use arm_emit_movpair.
(arm_rtx_costs_1, arm_size_rtx_costs): Handle HIGH and LO_SUM.
(arm_emit_movpair): New function.
(arm_print_operand <c>): Handle sybolic addresses.
* config/arm/arm.h (TARGET_USE_MOVT): Define.
(TARGET_DEFAULT_WORD_RELOCATIONS): Define.
* config/arm/arm-protos.h (arm_emit_movpair): Add prototype.
* config/arm/arm.opt: Add -mword-relocations.
* config/arm/arm.md (movsi): Use arm_emit_movpair.
(arm_movt, arm_movw): New.
From-SVN: r139881
Jerry DeLisle [Tue, 2 Sep 2008 01:14:04 +0000 (01:14 +0000)]
error.c: Fix cast for printf.
2008-09-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* runtime/error.c: Fix cast for printf.
From-SVN: r139880
GCC Administrator [Tue, 2 Sep 2008 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r139878
Mark Mitchell [Mon, 1 Sep 2008 23:24:09 +0000 (23:24 +0000)]
type_traits (__make_unsigned_selector<>): Consider enums of size smaller than short.
* include/std/type_traits (__make_unsigned_selector<>): Consider
enums of size smaller than short.
(__make_signed_selector<>): Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_usigned/requirements/typedefs_neg.cc:
Adjust line numbers.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc:
Ensure test_enum is the same size as short.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Ensure test_enum is the same size as short.
From-SVN: r139875
Paul Brook [Mon, 1 Sep 2008 23:20:34 +0000 (23:20 +0000)]
arm.c (arm_override_options): Set arm_abi earlier.
2008-09-01 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (arm_override_options): Set arm_abi earlier.
Allow Interworking on ARMv4 EABI based targets.
* config/arm/bpabi.h (TARGET_FIX_V4BX_SPEC): Define.
(SUBTARGET_EXTRA_ASM_SPEC, LINK_SPEC): Add TARGET_FIX_V4BX_SPEC.
From-SVN: r139874
Paul Brook [Mon, 1 Sep 2008 22:02:55 +0000 (22:02 +0000)]
thumb2.md (thumb2_negscc): Match the correct operand for optimized LT0 test.
2008-09-01 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/thumb2.md (thumb2_negscc): Match the correct operand for
optimized LT0 test. Remove optimization for GT.
From-SVN: r139873
John David Anglin [Mon, 1 Sep 2008 17:56:38 +0000 (17:56 +0000)]
pa64-hpux.h (LIB_SPEC): Link against librt when building static openmp applications.
* pa64-hpux.h (LIB_SPEC): Link against librt when building static
openmp applications.
* pa-hpux11.h (LIB_SPEC): Likewise.
From-SVN: r139870
John David Anglin [Mon, 1 Sep 2008 17:53:43 +0000 (17:53 +0000)]
ira.c (setup_eliminable_regset): Only declare i if ELIMINABLE_REGS is defined.
* ira.c (setup_eliminable_regset): Only declare i if ELIMINABLE_REGS is
defined.
From-SVN: r139869
Jan Hubicka [Mon, 1 Sep 2008 16:28:06 +0000 (18:28 +0200)]
predict.c (maybe_hot_count_p, [...]): When profile is present, use only counts; when guessed use only frequencies.
* predict.c (maybe_hot_count_p, maybe_hot_edge_p): When profile is
present, use only counts; when guessed use only frequencies.
(estimate_bb_frequencies): Use function_frequency.
* profile.c (compute_branch_probabilities): Exit early when
profile reading failed. Set profile_status.
(branch_prob): Do not set profile_status.
From-SVN: r139868
Aldy Hernandez [Mon, 1 Sep 2008 15:02:27 +0000 (15:02 +0000)]
tree.c (protected_set_expr_location): New.
* tree.c (protected_set_expr_location): New.
* tree.h (protected_set_expr_location): New prototype.
* c-tree.h (build_array_ref): Add argument.
(parser_build_unary_op): Same.
* c-typeck.c (build_indirect_ref): Handle new location argument.
(build_array_ref): Same.
(parser_build_unary_op): Same.
* gimplify.c (gimplify_asm_expr): Set input_location before calling
error.
* c-omp.c (c_finish_omp_atomic): Pass location when calling
build_indirect_ref.
* c-common.c (finish_label_address_expr): Handle new location
argument.
* c-common.h (build_indirect_ref): Add argument.
(finish_label_address_expr): Same.
* c-parser.c (c_parser_unary_expression): Pass location to build
functions.
(c_parser_postfix_expression): Same.
objc/
* objc-act.c (build_typed_selector_reference): Pass input_location to
build_unary_op calls.
(build_selector_reference): Same, but to build_array_ref.
(objc_substitute_decl): Same.
(build_ivar_reference): Same, but to build_indirect_ref.
(get_super_receiver): Same.
testsuite/
* gcc.dg/
20010516-1.c: Test for columns.
cp/
* typeck.c (build_x_indirect_ref): Add location argument.
* class.c (build_base_path): Pass location to build_indirect_ref.
* pt.c (tsubst_copy_and_build): Pass location to
finish_label_address_expr.
* parser.c (cp_parser_unary_expression): Same.
From-SVN: r139867
Daniel Kraft [Mon, 1 Sep 2008 13:43:10 +0000 (15:43 +0200)]
re PR fortran/37193 ("USE mod, ONLY: i, i=>j" does not import "i")
2008-09-01 Daniel Kraft <d@domob.eu>
PR fortran/37193
* module.c (read_module): Initialize use_only flag on used symbols.
2008-09-01 Daniel Kraft <d@domob.eu>
PR fortran/37193
* gfortran.dg/use_rename_4.f90: New test.
* gfortran.dg/use_rename_5.f90: New test.
From-SVN: r139866
Paul Brook [Mon, 1 Sep 2008 13:40:49 +0000 (13:40 +0000)]
arm.md: Include cortex-r4f.md.
2008-09-01 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.md: Include cortex-r4f.md.
(attr fpu): Update type list.
(attr type): Add fcpys, ffariths, ffarithd, fadds, faddd, fconsts,
fconstd, fcmps and fcmpd.
(attr tune_cortexr4): Define.
(attr generic_sched, attr generic_vfp): Use tune_cortexr4.
* config/arm/vfp.md: Document fcpys, ffariths, ffarithd, fadds, faddd,
fconsts, fconstd, fcmps and fcmpd. Use them in insn patterns.
* config/arm/arm.c (arm_issue_rate): Add cortexr4f.
* config/arm/arm1020e.md (v10_ffarith, v10_farith): Use new insn
types.
* config/arm/cortex-a8-neon.md (cortex_a8_vfp_add_sub,
cortex_a8_vfp_farith: Ditto.
* config/arm/vfp11.md (vfp_ffarith, vfp_farith): Ditto.
* config/arm/cortex-r4.md: Use tune_cortexr4.
* config/arm/cortex-r4f.md: New file.
From-SVN: r139865
Richard Guenther [Mon, 1 Sep 2008 13:39:42 +0000 (13:39 +0000)]
re PR tree-optimization/37305 (ice in set_value_range, at tree-vrp.c:397)
2008-09-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37305
* tree-ssa-ccp.c (ccp_fold): Do not set TREE_OVERFLOW on
the result of constant conversions.
(fold_gimple_assign): Likewise.
* gcc.c-torture/compile/pr37305.c: New testcase.
From-SVN: r139864
Andrey Belevantsev [Mon, 1 Sep 2008 12:40:32 +0000 (16:40 +0400)]
sel-sched-ir.c (cmp_v_in_regset_pool): Surround with #ifdef ENABLE_CHECKING.
* sel-sched-ir.c (cmp_v_in_regset_pool): Surround with
#ifdef ENABLE_CHECKING.
From-SVN: r139863
Andrey Belevantsev [Mon, 1 Sep 2008 12:38:44 +0000 (16:38 +0400)]
sel-sched-dump.c: Surround with #ifdef INSN_SCHEDULING.
* sel-sched-dump.c: Surround with #ifdef INSN_SCHEDULING.
* sched-int.h (print_insn, print_pattern, print_value): Declare also
when !INSN_SCHEDULING.
From-SVN: r139862