aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-05-31i386.md: Use SWI248x instead of X87MODEI...Uros Bizjak2-238/+244
* config/i386/i386.md: Use SWI248x instead of X87MODEI, SWI24 instead of X87MODEI12 and SWI48x instead of SSEMODEI24. (SWI248x): New mode iterator, rename from X87MODEI. (X87MODEI): Remove mode iterator. (X87MODEI12): Ditto. (SSEMODEI24): Ditto. From-SVN: r174498
2011-05-31params.def (PARAM_MAX_VARTRACK_EXPR_DEPTH): New.Alexandre Oliva4-3/+30
* params.def (PARAM_MAX_VARTRACK_EXPR_DEPTH): New. * doc/invoke.texi: Document max-vartrack-expr-depth. * var-tracking.c (EXPR_DEPTH): New. (reverse_op, vt_expand_loc, vt_expand_loc_dummy): Use it. From-SVN: r174494
2011-05-31i386.c (ix86_rtx_costs): Drop NEG from sub for FMA.Alexandre Oliva3-4/+9
* config/i386/i386.c (ix86_rtx_costs): Drop NEG from sub for FMA. * config/i386/sse.md: Add n to negated FMA pattern names. From-SVN: r174493
2011-05-31* gcc.c (driver_handle_option): Fix disabling of -fcompare-debug.Alexandre Oliva2-1/+5
From-SVN: r174492
2011-05-31gengtype-state.c (read_state_params_structs): Initialize previous.Alexandre Oliva2-1/+6
* gengtype-state.c (read_state_params_structs): Initialize previous. From-SVN: r174491
2011-05-31i386.md (*movtf_internal): Avoid allocating general registers.Uros Bizjak2-75/+85
* config/i386/i386.md (*movtf_internal): Avoid allocating general registers. Penalize F*r->o alternative to prevent partial memory stalls. Slightly penalize *roF->*r alternative. Generate SSE CONST_DOUBLE immediates when optimizing function for size. Do not move CONST_DOUBLEs directly to memory for !TARGET_MEMORY_MISMATCH_STALL. (*movxf_internal): Slightly penalize Yx*roF->Yx*r alternative. (*movdf_internal): Slightly penalize Yd*roF->Yd*r alternative. (*movdf_internal_rex64): Slightly penalize rm->r, F->m and r->m alternatives. (*movsf_internal): Slightly penalize rmF->r and Fr->m alternatives. (fp_register_operand splitters): Use fp_register_operand constraint. Do not use FP_REG_P in insn condition. (any_fp_register_operand splitters): Use any_fp_register_operand constraint. Do not use ANY_FP_REG_P in insn condition. * config/i386/i386.md (*pushxf_nointeger): Merge alternatives 1 and 2. (FP push_operand splitters): Merge {TF,XF,DF}mode splitters. From-SVN: r174489
2011-05-31cgraph.h (cgraph_inline_failed_t): Give enum a nameJan Hubicka3-27/+52
* cgraph.h (cgraph_inline_failed_t): Give enum a name * lto-cgraph.c (LDPR_NUM_KNOWN): New macro. (LTO_cgraph_tags): Add LTO_cgraph_last_tag. (lto_output_edge): Use output_enum and var_len_unsigned. (lto_output_varpool_node): Likewise. (input_overwrite_node): Do not take resolution parameter; extract it from a bitpack. (input_node): Do not read resolution; use input_enum and var_len_unsigned. (input_varpool_node): Likewise. (input_edge): Likewise. (input_cgraph_1): Likewise. From-SVN: r174487
2011-05-31gimple.c (gimple_register_canonical_type): Do not register any types via ↵Richard Guenther2-12/+5
gimple_register_type. 2011-05-31 Richard Guenther <rguenther@suse.de> * gimple.c (gimple_register_canonical_type): Do not register any types via gimple_register_type. From-SVN: r174483
2011-05-31lto-symtab.c (lto_symtab_merge_cgraph_nodes): Merge alias decl of thunks.Jan Hubicka2-5/+14
* lto-symtab.c (lto_symtab_merge_cgraph_nodes): Merge alias decl of thunks. From-SVN: r174482
2011-05-31Revert accidental svn commit r174473H.J. Lu4-118/+34
From-SVN: r174480
2011-05-31basic_string.h: Use noexcept per the FDIS (minus compare(const string&)...Paolo Carlini6-85/+136
2011-05-31 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/basic_string.h: Use noexcept per the FDIS (minus compare(const string&), which uses char_traits::compare, which isn't noexcept; also no noexcept in the move assignment operator and move assign, see c++std-lib-30855). * include/bits/basic_string.tcc: Likewise. * include/ext/vstring.h: Likewise. * include/ext/vstring.tcc: Likewise. * include/debug/string: Likewise. From-SVN: r174479
2011-05-31re PR rtl-optimization/49235 (ICE: in int_mode_for_mode, at ↵Jakub Jelinek4-3/+39
stor-layout.c:424 with -O -fno-delete-null-pointer-checks -fno-tree-scev-cprop -ftree-vectorize -fno-vect-cost-model) PR rtl-optimization/49235 * tree-ssa-address.c (gen_addr_rtx): Ignore base if it is const0_rtx. (create_mem_ref_raw): Create MEM_REF even if base is INTEGER_CST. * gcc.dg/pr49235.c: New test. From-SVN: r174478
2011-05-31re PR tree-optimization/49093 (ICE in vect_enhance_data_refs_alignment() ↵Ira Rosen4-0/+43
with volatile inside peeled loop) PR tree-optimization/49093 * tree-vect-data-refs.c (vect_analyze_data_refs): Fail for volatile data references. From-SVN: r174477
2011-05-31re PR debug/49047 (DW_AT_linkage_name missing for constructors and destructors)Dodji Seketeli4-0/+34
Fix PR debug/49047 gcc/ * dwarf2out.c (gen_subprogram_die): Emit linkage name attribute for concrete functions containing the code of cloned functions. gcc/testsuite/ * g++.dg/debug/dwarf2/cdtor-1.C: New test. From-SVN: r174474
2011-05-31Revert "Fix PR debug/49047"Dodji Seketeli8-68/+118
This reverts commit ce20032a8ad4d9d4fa37192e2ecc73cb257094e8. From-SVN: r174473
2011-05-31re PR debug/49047 (DW_AT_linkage_name missing for constructors and destructors)Dodji Seketeli4-0/+34
Fix PR debug/49047 gcc/ * dwarf2out.c (gen_subprogram_die): Emit linkage name attribute for concrete functions containing the code of cloned functions. gcc/testsuite/ * g++.dg/debug/dwarf2/cdtor-1.C: New test. From-SVN: r174472
2011-05-31Use __sync_bool_compare_and_swap in x86 locks.h.H.J. Lu4-118/+34
2011-05-31 H.J. Lu <hongjiu.lu@intel.com> PR libgcj/49193 * configure.host (sysdeps_dir): Set to i386 for x86_64. * sysdep/i386/locks.h (compare_and_swap): Call __sync_bool_compare_and_swap. (release_set): Call write_barrier (). * sysdep/x86-64/locks.h: Removed. From-SVN: r174471
2011-05-31tree-ssa-forwprop.c (forward_propagate_into_comparison): Rename to ...Richard Guenther2-353/+388
2011-05-31 Richard Guenther <rguenther@suse.de> * tree-ssa-forwprop.c (forward_propagate_into_comparison): Rename to ... (forward_propagate_into_comparison_1): ... this. (forward_propagate_comparison): Rename to ... (forward_propagate_into_comparison): ... this. Split out real forward propagation code to ... (forward_propagate_comparison): ... this. (forward_propagate_into_gimple_cond): Remove looping. (forward_propagate_into_cond): Likewise. (simplify_not_neg_expr): Return whether we have done something. (simplify_gimple_switch): Likewise. (tree_ssa_forward_propagate_single_use_vars): Rename to ... (ssa_forward_propagate_and_combine): ... this. Re-structure to do a forward forward-propagation walk on BBs and a backward stmt combining walk on BBs. Consistently re-scan changed statements. (pass_forwprop): Adjust. From-SVN: r174470
2011-05-31re PR testsuite/49239 (Random gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c ↵Ira Rosen2-0/+19
failure) PR testsuite/49239 * gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c: Initialize the output array. From-SVN: r174469
2011-05-31status_cxx200x.xml: Update.Jonathan Wakely42-173/+175
2011-05-31 Jonathan Wakely <jwakely.gcc@gmail.com> * doc/xml/manual/status_cxx200x.xml: Update. * doc/html/*: Regenerate. From-SVN: r174468
2011-05-31godump.c (go_format_type): Correct length of name added to obstack for ↵Ian Lance Taylor2-1/+6
anonymous field. * godump.c (go_format_type): Correct length of name added to obstack for anonymous field. From-SVN: r174465
2011-05-31type_traits (__or_, __and_): Add trivial definitions for a single element.Paolo Carlini10-71/+132
2011-05-30 Paolo Carlini <paolo.carlini@oracle.com> * include/std/type_traits (__or_, __and_): Add trivial definitions for a single element. * include/bits/stl_pair.h: Use __and_ in noexcept specs and constraints. (pair<>::pair(pair&&)): Define. (pair<>::pair(const pair<>&)): Constrain with is_convertible. (pair<>::pair(pair<>&&)): Likewise, remove noexcept. * include/std/tuple: Use __and_ in noexcept specs and constraints. (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&, _Tuple_impl&&)): Remove noexcept. (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&), tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&), tuple(pair<_U1, _U2>&&)): Constrain with is_convertible. * testsuite/20_util/tuple/moveable2.cc: Use = delete. * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust dg-error line numbers. * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Likewise. * testsuite/20_util/declval/requirements/1_neg.cc: Likewise. * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise. * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise. From-SVN: r174464
2011-05-31Daily bump.GCC Administrator1-1/+1
From-SVN: r174463
2011-05-31tuple: Restore is_convertible constraint.Jonathan Wakely3-74/+6
2011-05-31 Jonathan Wakely <jwakely.gcc@gmail.com> * include/std/tuple: Restore is_convertible constraint. * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove. From-SVN: r174458
2011-05-30sh.c (expand_cbranchdi4): Set msw_skip when the high part of the second ↵Kaz Kojima4-1/+30
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-30re PR libstdc++/49236 (FAIL: 20_util/weak_ptr/comparison/cmp_neg.cc)Paolo Carlini2-1/+7
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-30i386.md (*movxf_internal): Penalize FYx*r->o alternative to prevent partial ↵Uros Bizjak4-99/+66
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-30Handle misaligned TFmode load/store.H.J. Lu4-3/+38
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-30dwarf2out.c (modified_type_die, [...]): Use DW_TAG_rvalue_reference_type ↵Jakub Jelinek2-2/+8
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-30re PR tree-optimization/46728 (GCC does not generate fmadd for pow (x, ↵Bill Schmidt2-19/+152
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-30re PR c/4910 (imacat <imacat@mail.imacat.idv.tw>)Nathan Froyd6-4/+29
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-30tuple: Implement uses-allocator construction.Jonathan Wakely10-31/+765
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-30config.gcc: Keep obselete list sorted.Richard Sandiford2-1/+5
gcc/ * config.gcc: Keep obselete list sorted. From-SVN: r174442
2011-05-30var-tracking.c (vt_add_function_parameter): Remap incoming MEMs with ↵Jakub Jelinek4-6/+100
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-30gimple.c (gimple_types_compatible_p_1): Compare record and union type ↵Richard Guenther2-3/+14
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-30re PR middle-end/49210 (verify_gimple fails building ada/einfo.o at -O3)Richard Guenther6-3/+96
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-30re PR c++/49223 (Internal compiler error when using OpenMP)Jakub Jelinek5-2/+61
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-30re PR middle-end/46500 (target.h includes tm.h)Joern Rennecke2-1/+12
PR middle-end/46500 gcc/java: * expr.c: Include "tm.h" . From-SVN: r174431
2011-05-30re PR tree-optimization/49218 (Incorrect optimization of a 'for' loop ↵Richard Guenther4-4/+41
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-30tree-ssa-forwprop.c (forward_propagate_into_comparison): New function split ↵Richard Guenther2-202/+222
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-30configure.ac (gcc_cv_lto_plugin): Determine lto plugin support from plugin ↵Rainer Orth3-20/+78
linker. * configure.ac (gcc_cv_lto_plugin): Determine lto plugin support from plugin linker. * configure: Regenerate. From-SVN: r174426
2011-05-30re PR tree-optimization/49199 (ICE: in vect_create_epilog_for_reduction at ↵Ira Rosen5-22/+116
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-30Revert wrong checkinXinliang David Li1-22/+0
From-SVN: r174424
2011-05-30New option to disable/enable optimization passes.Xinliang David Li7-2/+452
From-SVN: r174423
2011-05-30Daily bump.GCC Administrator1-1/+1
From-SVN: r174422
2011-05-29i386.md (*movoi_internal_avx): Use standard_sse_constant_opcode for ↵Uros Bizjak2-38/+86
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-29re PR fortran/47601 ([OOP] Internal Error: mio_component_ref(): Component ↵Janus Weil5-8/+45
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-29PR 48931 Use async-signal-safe execve instead of execvpJanne Blomqvist5-2/+75
From-SVN: r174415
2011-05-29re PR rtl-optimization/48830 (unrecognized insn: storing invalid upper FP ↵Eric Botcazou2-2/+7
reg in SImode) PR target/48830 * rtlanal.c (simplify_subreg_regno): Adjust comment. From-SVN: r174414
2011-05-29re PR rtl-optimization/49095 (Horrible code generation for trivial decrement ↵Jakub Jelinek5-1/+174
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