Kaz Kojima
5f1330380a
sh.c (expand_cbranchdi4): Set msw_skip when the high part of the second operand is 0.
...
* config/sh/sh.c (expand_cbranchdi4): Set msw_skip when the high
part of the second operand is 0.
* gcc.c-torture/execute/pr49186.c: New.
From-SVN: r174456
2011-05-30 22:56:32 +00:00
Paolo Carlini
283e624c9f
re PR libstdc++/49236 (FAIL: 20_util/weak_ptr/comparison/cmp_neg.cc)
...
2011-05-30 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49236
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
line number.
From-SVN: r174455
2011-05-30 21:14:01 +00:00
Uros Bizjak
b17d542637
i386.md (*movxf_internal): Penalize FYx*r->o alternative to prevent partial memory stalls.
...
* config/i386/i386.md (*movxf_internal): Penalize FYx*r->o alternative
to prevent partial memory stalls. Do not move CONST_DOUBLEs directly
to memory for !TARGET_MEMORY_MISMATCH_STALL.
(*movdf_internal_rex64): Do not penalize F->r alternative.
(*movdf_internal): Penalize FYd*r->o alternative to prevent partial
memory stalls. Generate SSE and x87 CONST_DOUBLE immediates only
when optimizing function for size. Do not move CONST_DOUBLEs
directly to memory for !TARGET_MEMORY_MISMATCH_STALL.
(FP move splitters): Merge {TF,XF,DF}mode move splitters. Do not
handle SUBREGs. Do not check for MEM_P operands in the insn condition,
check for ANY_FP_REGNO_P instead.
* config/i386/constraints.md (Yd): Enable GENERAL_REGS for
TARGET_64BIT and for TARGET_INTEGER_DFMODE_MOVES when optimizing
function for speed.
* config/i386/i386.c (ix86_option_override_internal): Do not
set TARGET_INTEGER_DFMODE_MOVES here.
From-SVN: r174453
2011-05-30 22:55:30 +02:00
H.J. Lu
a0cd843f4d
Handle misaligned TFmode load/store.
...
gcc/
2011-05-30 H.J. Lu <hongjiu.lu@intel.com>
PR target/49168
* config/i386/i386.md (*movtf_internal): Handle misaligned
load/store.
gcc/testsuite/
2011-05-30 H.J. Lu <hongjiu.lu@intel.com>
PR target/49168
* gcc.target/i386/pr49168-1.c: New.
From-SVN: r174451
2011-05-30 13:00:11 -07:00
Jakub Jelinek
006a5f38b9
dwarf2out.c (modified_type_die, [...]): Use DW_TAG_rvalue_reference_type even for -gdwarf-4 -fno-debug-types-section.
...
* dwarf2out.c (modified_type_die, gen_reference_type_die): Use
DW_TAG_rvalue_reference_type even for
-gdwarf-4 -fno-debug-types-section.
From-SVN: r174449
2011-05-30 21:21:26 +02:00
Bill Schmidt
6e96f98aec
re PR tree-optimization/46728 (GCC does not generate fmadd for pow (x, 0.75)+y on powerpc)
...
2011-05-30 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR tree-optimization/46728
* tree-ssa-math-opts.c (build_and_insert_call): Reorder parms.
(build_and_insert_binop): New.
(gimple_expand_builtin_pow): Reorder args for
build_and_insert_call; use build_and_insert_binop; add more
optimizations for fractional exponents.
From-SVN: r174446
2011-05-30 17:12:53 +00:00
Nathan Froyd
4f60111fd4
re PR c/4910 (imacat <imacat@mail.imacat.idv.tw>)
...
fix PR bootstrap/4910
gcc/
PR bootstrap/49190
Revert:
2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
* tree.h (struct tree_identifier): Inherit from tree_typed, not
tree_common.
(HT_IDENT_TO_GCC_IDENT): Adjust for said change.
* tree.c (initialize_tree_contains_struct): Mark TS_IDENTIFIER as
TS_BASE instead of TS_COMMON.
* varasm.c (assemble_name): Remove assert.
gcc/c-family/
PR bootstrap/49190
Revert:
2011-05-26 Nathan Froyd <froydnj@codesourcery.com>
* c-common.h (struct c_common_identifier): Inherit from tree_typed,
not tree_common.
From-SVN: r174445
2011-05-30 16:42:05 +00:00
Jonathan Wakely
b821466067
tuple: Implement uses-allocator construction.
...
2011-05-30 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/tuple: Implement uses-allocator construction.
* include/bits/allocator.h (uses_allocator): Move to ...
* include/bits/uses_allocator.h: New file.
* include/Makefile.am: Add new header.
* include/Makefile.in: Regenerate.
* testsuite/20_util/uses_allocator/cons_neg.cc: New.
* testsuite/20_util/uses_allocator/construction.cc: New.
* testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
* testsuite/20_util/tuple/cons/allocators.cc: New.
From-SVN: r174443
2011-05-30 17:31:17 +01:00
Richard Sandiford
3fd7879d12
config.gcc: Keep obselete list sorted.
...
gcc/
* config.gcc: Keep obselete list sorted.
From-SVN: r174442
2011-05-30 16:27:54 +00:00
Jakub Jelinek
80060f7ac2
var-tracking.c (vt_add_function_parameter): Remap incoming MEMs with crtl->args.internal_arg_pointer based address to...
...
* var-tracking.c (vt_add_function_parameter): Remap incoming MEMs with
crtl->args.internal_arg_pointer based address to arg_pointer_rtx if
there is a DRAP register and arg_pointer_rtx is the CFA pointer.
(vt_init_cfa_base): Don't equate cfa_base_rtx if stack was realigned.
(vt_initialize): Initialize cfa_base_rtx if there is a DRAP register.
From-SVN: r174438
2011-05-30 15:16:40 +00:00
Richard Guenther
17e99cdb2d
gimple.c (gimple_types_compatible_p_1): Compare record and union type members properly.
...
2011-05-30 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_types_compatible_p_1): Compare record
and union type members properly.
From-SVN: r174436
2011-05-30 14:55:03 +00:00
Richard Guenther
42b05b6e88
re PR middle-end/49210 (verify_gimple fails building ada/einfo.o at -O3)
...
2011-05-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49210
* ipa-split.c (split_function): Care for the case where the
call result is not trivially convertible to the result holding
variable.
* gnat.dg/boolean_subtype2.adb: New testcase.
* gnat.dg/boolean_subtype2.ads: Likewise.
* gnat.dg/boolean_subtype2_pkg.ads: Likewise.
From-SVN: r174435
2011-05-30 13:12:23 +00:00
Jakub Jelinek
8a8c12a3cd
re PR c++/49223 (Internal compiler error when using OpenMP)
...
PR c++/49223
* semantics.c (finish_omp_clauses): Call require_complete_type
even for copyin/copyprivate clauses. Only call
cxx_omp_create_clause_info if inner_type is COMPLETE_TYPE_P.
* g++.dg/gomp/pr49223-1.C: New test.
* g++.dg/gomp/pr49223-2.C: New test.
From-SVN: r174432
2011-05-30 14:16:04 +02:00
Joern Rennecke
c87765d635
re PR middle-end/46500 (target.h includes tm.h)
...
PR middle-end/46500
gcc/java:
* expr.c: Include "tm.h" .
From-SVN: r174431
2011-05-30 13:11:03 +01:00
Richard Guenther
f332115871
re PR tree-optimization/49218 (Incorrect optimization of a 'for' loop creates an infinite loop)
...
2011-05-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49218
* tree-vrp.c (adjust_range_with_scev): Properly check whether
overflow occured.
* gcc.c-torture/execute/pr49218.c: New testcase.
From-SVN: r174429
2011-05-30 11:15:20 +00:00
Richard Guenther
d12d8efea8
tree-ssa-forwprop.c (forward_propagate_into_comparison): New function split out from ...
...
2011-05-30 Richard Guenther <rguenther@suse.de>
* tree-ssa-forwprop.c (forward_propagate_into_comparison):
New function split out from ...
(forward_propagate_into_gimple_cond): ... here. Adjust.
(forward_propagate_into_cond): Likewise.
(forward_propagate_comparison): Also propagate into
comparisons on assignment RHS. Change return value to
behave similar to forward_propagate_into_cond.
(tree_ssa_forward_propagate_single_use_vars): Handle
strict-overflow warnings properly for forward_propagate_comparison.
From-SVN: r174428
2011-05-30 09:19:58 +00:00
Rainer Orth
df33b41f11
configure.ac (gcc_cv_lto_plugin): Determine lto plugin support from plugin linker.
...
* configure.ac (gcc_cv_lto_plugin): Determine lto plugin support
from plugin linker.
* configure: Regenerate.
From-SVN: r174426
2011-05-30 08:45:07 +00:00
Ira Rosen
69940d4d9e
re PR tree-optimization/49199 (ICE: in vect_create_epilog_for_reduction at tree-vect-loop.c:3445 with -O -fno-tree-scev-cprop -ftree-vectorize -funswitch-loops)
...
PR tree-optimization/49199
* tree-vect-loop.c (vect_is_slp_reduction): Check that the
non-reduction operands are either defined in the loop or
by induction.
From-SVN: r174425
2011-05-30 07:15:31 +00:00
Xinliang David Li
efd02400d7
Revert wrong checkin
...
From-SVN: r174424
2011-05-30 04:42:05 +00:00
Xinliang David Li
226c52aafb
New option to disable/enable optimization passes.
...
From-SVN: r174423
2011-05-30 04:38:42 +00:00
GCC Administrator
d84ab7d2d4
Daily bump.
...
From-SVN: r174422
2011-05-30 00:18:57 +00:00
Uros Bizjak
491d8eed6f
i386.md (*movoi_internal_avx): Use standard_sse_constant_opcode for alternative 0.
...
* config/i386/i386.md (*movoi_internal_avx): Use
standard_sse_constant_opcode for alternative 0.
(*movti_internal_sse): Ditto.
(*movti_internal_rex64): Use standard_sse_constant_opcode for
alternative 2.
(*movdi_internal_rex64): Use standard_sse_constant_opcode for
sselog1 type moves.
(*movsi_internal): Ditto.
(*movdi_internal): Ditto. Add ssecvt type moves.
From-SVN: r174417
2011-05-29 23:33:27 +02:00
Janus Weil
5e7bb2b9b1
re PR fortran/47601 ([OOP] Internal Error: mio_component_ref(): Component not found)
...
2011-05-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/47601
* module.c (mio_component_ref): Handle components of extended types.
* symbol.c (gfc_find_component): Return is sym is NULL.
2011-05-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/47601
* gfortran.dg/extends_13.f03: New.
From-SVN: r174416
2011-05-29 22:32:11 +02:00
Janne Blomqvist
155732f56d
PR 48931 Use async-signal-safe execve instead of execvp
...
From-SVN: r174415
2011-05-29 23:13:52 +03:00
Eric Botcazou
eb93b31f68
re PR rtl-optimization/48830 (unrecognized insn: storing invalid upper FP reg in SImode)
...
PR target/48830
* rtlanal.c (simplify_subreg_regno): Adjust comment.
From-SVN: r174414
2011-05-29 20:01:41 +00:00
Jakub Jelinek
3f831b7d30
re PR rtl-optimization/49095 (Horrible code generation for trivial decrement with test)
...
PR rtl-optimization/49095
* config/i386/predicates.md (plusminuslogic_operator): New predicate.
* config/i386/i386.md: Add peepholes for mem {+,-,&,|,^}= x; mem != 0.
* gcc.target/i386/pr49095.c: New test.
From-SVN: r174413
2011-05-29 20:51:48 +02:00
Thomas Koenig
fb03a37e57
re PR fortran/45786 (Relational operators .eq. and == are not recognized as equivalent)
...
2011-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45786
* interface.c (gfc_equivalent_op): New function.
(gfc_check_interface): Use gfc_equivalent_op instead
of switch statement.
* decl.c (access_attr_decl): Also set access to an
equivalent operator.
2011-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45786
* gfortran.dg/operator_7.f90: New test case.
From-SVN: r174412
2011-05-29 18:41:00 +00:00
Tobias Burnus
427180d243
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
...
2011-05-29 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* interface.c (compare_parameter): Add check for passing coarray
to allocatable noncoarray dummy.
2011-05-29 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_24.f90: New.
From-SVN: r174411
2011-05-29 20:17:40 +02:00
Tobias Burnus
8a5c4899e8
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
...
2011-05-29 Tobias Burnus <burnus@net-b.de>
Richard Guenther <rguenther@suse.de>
PR fortran/18918
* trans-types.c (gfc_get_nodesc_array_type): Don't mess with
the type's TREE_TYPE.
* trans-array.c (gfc_conv_array_ref): Use TYPE_MAIN_VARIANT.
* trans.c (gfc_build_array_ref): Ditto.
2011-05-29 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_23.f90: New.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r174410
2011-05-29 20:15:08 +02:00
Richard Sandiford
269e0e1853
Add PR target/43700 to an earlier changelog entry.
...
From-SVN: r174403
2011-05-29 17:45:27 +00:00
Richard Sandiford
ee3ee48893
re PR target/43995 (internal compiler error: Segmentation fault on Mips64 crossbuild of ext2progs)
...
gcc/
PR target/43995
* config/mips/mips.c (mips_pic_call_symbol_from_set): Add a
recurse_p argument. Only follow register copies if it is set,
and prevent mips_find_pic_call_symbol from recursing.
(mips_find_pic_call_symbol): Add a recurse_p argument.
Pass it to mips_pic_call_symbol_from_set.
(mips_annotate_pic_calls): Update accordingly.
From-SVN: r174402
2011-05-29 17:41:50 +00:00
Richard Sandiford
65f3dedbd5
emit-rtl.c (try_split): Use a loop to search for NOTE_INSN_CALL_ARG_LOCATIONs.
...
gcc/
* emit-rtl.c (try_split): Use a loop to search for
NOTE_INSN_CALL_ARG_LOCATIONs.
gcc/testsuite/
From Ryan Mansfield
* gcc.dg/pr48826.c: New test.
From-SVN: r174401
2011-05-29 17:40:05 +00:00
Richard Guenther
61e374ab76
re PR tree-optimization/49217 (Wrong optimization of code)
...
2011-05-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49217
* ipa-pure-const.c (propagate_pure_const): Fix typos.
* gcc.dg/torture/pr49217.c: New testcase.
From-SVN: r174400
2011-05-29 17:03:38 +00:00
Ira Rosen
4a5ba933e7
re PR testsuite/49222 (FAIL: gcc.dg/vect/pr49038.c (test for excess errors) on *-apple-darwin*)
...
PR testsuite/49222
* gcc.dg/vect/pr49038.c: Use MAP_ANON if MAP_ANONYMOUS is not defined.
From-SVN: r174398
2011-05-29 16:47:05 +00:00
Jan Hubicka
fac009a816
lto-streamer-out.c (hash_string_slot_node): Hash string based on its length.
...
* lto-streamer-out.c (hash_string_slot_node): Hash string based on its
length.
(string_slot_free): Remove
(create_output_block): Initialize obstack.
(destroy_output_block): Free obstack.
(lto_string_index): Add PERSISTENT parameter; do not duplicate
the string unless it needs to be added into the hash.
(lto_output_string_with_length): Add persistent attribute;
handle NULL strings.
(lto_output_string): Add PERSISTENT parameter.
(output_string_cst, output_identifier): Simplify.
(lto_output_location_bitpack): Update.
(lto_output_builtin_tree): Update.
* lto-streamer.h (struct output_block): Add obstack.
(lto_output_string, lto_output_string_with_length): Remove declarations;
functions are static now.
From-SVN: r174397
2011-05-29 16:35:33 +00:00
Janne Blomqvist
8bea6ce492
PR 49214 fd_gets should return NULL if nothing was read
...
From-SVN: r174395
2011-05-29 16:17:17 +03:00
Jan Hubicka
fa76600695
lto-streamer-out.c (pack_ts_fixed_cst_value_fields, [...]): Use enum and variable length i/o.
...
* lto-streamer-out.c (pack_ts_fixed_cst_value_fields,
pack_ts_decl_common_value_fields, pack_ts_decl_with_vis_value_fields,
pack_ts_function_decl_value_fields, lto_output_builtin_tree,
output_cfg, output_gimple_stmt): Use enum and variable length i/o.
* lto-streamer-in.c (input_cfg, input_gimple_stmt,
unpack_ts_fixed_cst_value_fields, unpack_ts_decl_common_value_fields,
unpack_ts_decl_with_vis_value_fields,
unpack_ts_type_common_value_fields, unpack_ts_block_value_fields,
lto_get_builtin_tree): Use enum and variable length i/o.
* basic-block.h (profile_status_d): Add PROFILE_LAST.
* lto-streamer.h (bp_pack_int_in_range, bp_unpack_int_in_range):
New functions.
(bp_pack_enum, bp_unpack_enum): New macros.
From-SVN: r174394
2011-05-29 11:40:25 +00:00
Janne Blomqvist
04a4a57b1b
PR 19155 Check for strtod failure via endptr
...
From-SVN: r174393
2011-05-29 11:59:44 +03:00
Eric Botcazou
be7a83950d
boolean_subtype.adb: Rename to...
...
* gnat.dg/boolean_subtype.adb: Rename to...
* gnat.dg/boolean_subtype1.adb: ...this.
From-SVN: r174392
2011-05-29 07:56:50 +00:00
GCC Administrator
02a8def617
Daily bump.
...
From-SVN: r174391
2011-05-29 00:18:28 +00:00
Jason Merrill
0fa1a986d7
re PR c++/46124 ([C++0x] ICE: tree check: expected var_decl or function_decl, have error_mark in cp_parser_lambda_declarator_opt, at cp/parser.c:7817 on invalid lambda function)
...
PR c++/46124
* parser.c (cp_parser_lambda_expression): Improve error recovery.
(cp_parser_lambda_declarator_opt): Likewise. Return bool.
From-SVN: r174386
2011-05-28 18:01:38 -04:00
Jason Merrill
32da2be4cc
re PR c++/47277 ([C++0x] pseudo destructor code that cause an internal compiler error with std=gnu++0x)
...
PR c++/47277
* parser.c (cp_parser_pseudo_destructor_name): Commit to parse
after we see the ~.
From-SVN: r174385
2011-05-28 18:01:28 -04:00
Jonathan Wakely
b8d85086ed
pointer_to.cc: Fix.
...
2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
* testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
From-SVN: r174384
2011-05-28 20:15:41 +01:00
Jonathan Wakely
43653c334d
acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
...
2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
* acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
* configure.ac: Use them. Increase minor version.
* configure: Regenerate.
* config.h.in: Regenerate.
* include/std/thread (thread::hardware_concurrency): Remove inline
definition.
* src/thread.cc (thread::hardware_concurrency): Define.
* config/abi/pre/gnu.ver: Export new symbol @3.4.17
* testsuite/util/testsuite_abi.cc: Add new version.
* testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
* testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
* testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
dg-require-nprocs and verify hardware_concurrency returns non-zero.
From-SVN: r174383
2011-05-28 18:27:01 +01:00
Richard Sandiford
e092158b65
genrecog.c: Remove redundant forward declarations.
...
gcc/
* genrecog.c: Remove redundant forward declarations.
From-SVN: r174382
2011-05-28 17:26:27 +00:00
Jonathan Wakely
709544ca84
pointer_to.cc: New.
...
2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
* testsuite/20_util/pointer_traits/pointer_to.cc: New.
From-SVN: r174381
2011-05-28 18:13:48 +01:00
Jonathan Wakely
45ba8f9f8f
Makefile.am: Add new ptr_traits.h header.
...
2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/Makefile.am: Add new ptr_traits.h header.
* include/Makefile.in: Regenerate.
* include/bits/ptr_traits.h (pointer_traits): New.
* include/bits/allocator.h (allocator_traits): Add.
* include/ext/array_allocator.h (construct, destroy): Update C++0x
versions.
* include/ext/bitmap_allocator.h (construct, destroy): Likewise.
* include/ext/extptr_allocator.h (construct, destroy): Likewise.
* include/ext/malloc_allocator.h (construct, destroy): Likewise.
* include/ext/mt_allocator.h (construct, destroy): Likewise.
* include/ext/new_allocator.h (construct, destroy): Likewise.
* include/ext/pool_allocator.h (construct, destroy): Likewise.
* include/ext/throw_allocator.h (construct, destroy): Likewise.
* testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
* testsuite/20_util/allocator_traits/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/allocator_traits/members/max_size.cc: New.
* testsuite/20_util/allocator_traits/members/select.cc: New.
* testsuite/20_util/allocator_traits/members/construct.cc: New.
* testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
* testsuite/20_util/allocator_traits/members/destroy.cc: New.
* testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
* testsuite/20_util/pointer_traits/requirements/
explicit_instantiation.cc: New.
From-SVN: r174380
2011-05-28 14:27:43 +01:00
Richard Sandiford
7ca2afa0c3
config.gcc: Deprecate mips*-*-openbsd*.
...
gcc/
* config.gcc: Deprecate mips*-*-openbsd*.
From-SVN: r174379
2011-05-28 08:02:57 +00:00
Richard Sandiford
a601a53a62
re PR bootstrap/49195 (Error building libgcc for powerpc64 since r174305)
...
gcc/
PR bootstrap/49195
* genrecog.c (add_to_sequence): Use XEXP rather than XVECEXP
for match_op_dup.
From-SVN: r174378
2011-05-28 07:38:07 +00:00
Jason Merrill
a6d6659935
mangle.c (mangle_decl_string): Make sure we don't try to mangle templates.
...
* mangle.c (mangle_decl_string): Make sure we don't try to mangle
templates.
From-SVN: r174376
2011-05-27 20:53:58 -04:00