aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-07-25m32c.h (PRINT_OPERAND, [...]): Remove macro.Anatoly Sokolov4-17/+36
* config/m32c/m32c.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS, PRINT_OPERAND_PUNCT_VALID_P): Remove macro. * config/m32c/m32c-protos.h (m32c_print_operand_punct_valid_p, m32c_print_operand, m32c_print_operand_address): Remove. * config/m32c/m32c.c (m32c_print_operand_punct_valid_p): Make static. Change return type to bool. Change argument type to bool. (m32c_print_operand, m32c_print_operand_address): Make static. (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define. From-SVN: r176763
2011-07-25Remove parm name from declarationDodji Seketeli2-1/+6
gcc/c-family * c-common.h (set_underlying_type): Remove parm name from declaration. From-SVN: r176762
2011-07-25re PR libstdc++/49836 ([C++0x] vector<T>::push_back() should not require T ↵Paolo Carlini11-5/+250
to be (move-)assignable) 2011-07-25 Paolo Carlini <paolo.carlini@oracle.com> Nathan Ridge <zeratul976@hotmail.com> PR libstdc++/49836 * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux): Declare. (vector<>::push_back(const value_type&)): Use it. * include/bits/vector.tcc: Define. (vector<>::emplace_back(_Args&&...)): Use it. * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType): Add. * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New. * testsuite/23_containers/deque/modifiers/push_back/49836.cc: Likewise. * testsuite/23_containers/deque/modifiers/push_front/49836.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error line number. * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/vector/requirements/dr438/ constructor_2_neg.cc: Likewise. Co-Authored-By: Nathan Ridge <zeratul976@hotmail.com> From-SVN: r176761
2011-07-25sourcebuild.texi (Effective-Target Keywords, [...]): Document mmap.Rainer Orth12-8/+54
gcc: * doc/sourcebuild.texi (Effective-Target Keywords, Environment attributes): Document mmap. gcc/testsuite: * lib/target-supports.exp (check_effective_target_mmap): New proc. * gcc.c-torture/execute/loop-2f.c: Remove #ifdef __unix__. * gcc.c-torture/execute/loop-2g.c: Likewise. * gcc.c-torture/execute/loop-2f.x: Load target-supports.exp. Require mmap support. * gcc.c-torture/execute/loop-2g.x: Likewise. * gcc.dg/20030711-1.c: Replace dg-do target list by mmap. (MAP_ANON): Provide default. * gcc.dg/20050826-1.c: Likewise. * gcc.target/i386/pr36533.c: Likewise. * gcc.dg/vect/pr49038.c: Remove dg-do run. Use dg-require-effective-target mmap. From-SVN: r176760
2011-07-25mmix.h (PRINT_OPERAND, [...]): Remove macro.Anatoly Sokolov4-24/+36
* config/mmix/mmix.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS, PRINT_OPERAND_PUNCT_VALID_P): Remove macro. * config/mmix/mmix-protos.h (mmix_print_operand_punct_valid_p, mmix_print_operand, mmix_print_operand_address): Remove. * config/mmix/mmix.c (mmix_print_operand_punct_valid_p): Make static. Change return type to bool. Change argument type to bool. (mmix_print_operand, mmix_print_operand_address): Make static. (mmix_intval, mmix_output_condition): Change 'x' argument type to const_rtx. (TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define. From-SVN: r176759
2011-07-25re PR c++/49347 (G++ rejects Solaris spawn.h use of __restrict)Rainer Orth4-5/+87
PR c++/49347 * inclhack.def (solaris_posix_spawn_restrict): New fix. * fixincl.x: Regenerate. * tests/base/spawn.h: New test. From-SVN: r176758
2011-07-25re PR target/39386 ([avr] different computation results for O1 and O0 ↵Georg-Johann Lay2-2/+11
executables) PR target/39386 * config/avr/avr.c (out_shift_with_cnt): Use tmp_reg as shift counter for x << x and x >> x shifts. From-SVN: r176756
2011-07-25re PR libgomp/45351 (many unaligned accesses in libgomp tests)Rainer Orth3-0/+64
PR libgomp/45351 * config/osf/sem.h: New file. * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path. From-SVN: r176755
2011-07-25re PR c++/49838 ([C++0x] ICE in cp_parser_perform_range_for_lookup, at ↵Paolo Carlini4-0/+25
cp/parser.c:8796) /cp 2011-07-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/49838 * parser.c (cp_parser_perform_range_for_lookup): Early return if error_operand_p (range). /testsuite 2011-07-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/49838 * g++.dg/cpp0x/range-for19.C: New. From-SVN: r176754
2011-07-25re PR testsuite/49753 (FAIL: g++.dg/torture/pr49309.C)Rainer Orth3-1/+21
gcc/testsuite: PR testsuite/49753 * g++.dg/torture/pr49309.C: Add -fpreprocessed to dg-options. Revert: 2011-07-15 Jakub Jelinek <jakub@redhat.com> PR testsuite/49753 * g++.dg/torture/pr49309.C: Remove. libmudflap: Revert: 2011-07-15 Jakub Jelinek <jakub@redhat.com> PR testsuite/49753 PR tree-optimization/49309 * testsuite/libmudflap.c++/pass68-frag.cxx: New test. From-SVN: r176752
2011-07-25re PR target/47124 (*solaris2 configurations configure, but don't build)Rainer Orth2-0/+6
PR target/47124 * config.gcc: Reject *-*-solaris2 configuration. From-SVN: r176751
2011-07-25re PR tree-optimization/49809 (gimple_check failure at -O3)Richard Sandiford6-2/+100
gcc/ PR tree-optimization/49809 * tree-ssa-phiopt.c (cond_if_else_store_replacement): Use gimple_get_lhs instead of gimple_assign_lhs. gcc/testsuite/ PR tree-optimization/49809 * gnat.dg/opt18.adb, gnat.dg/opt18.ads, gnat.dg/opt18_pkg.ads: New test. From-SVN: r176750
2011-07-25system.h [...]: Wrap C function declarations in extern "C".Rainer Orth2-0/+20
* system.h [__cplusplus]: Wrap C function declarations in extern "C". -This line, and those below, will be ignored-- M ChangeLog M system.h From-SVN: r176748
2011-07-25system.h [...]: Wrap C function declarations in extern "C".Rainer Orth4-0/+41
gcc: * system.h [__cplusplus]: Wrap C function declarations in extern "C". include: * xregex.h (regoff_t): Define. From-SVN: r176747
2011-07-25re PR tree-optimization/49822 (Segfault in remove_prop_source_from_use)Richard Guenther2-7/+22
2011-07-25 Richard Guenther <rguenther@suse.de> PR tree-optimization/49822 * tree-ssa-forwprop.c (remove_prop_source_from_use): Robustify more. Make sure to preserve stmts with side-effects. Properly handle virtual defs, follow a longer def chain. From-SVN: r176745
2011-07-25behalf of romain.geissler@gmail.com. Fix plugin file installationRomain Geissler4-4/+16
From-SVN: r176741
2011-07-25ipa-inline.c (can_inline_edge_p): Look into DECL_STRUCT_FUNCTION of original ↵Eric Botcazou2-8/+20
nodes if... * ipa-inline.c (can_inline_edge_p): Look into DECL_STRUCT_FUNCTION of original nodes if we are dealing with virtual clones. From-SVN: r176739
2011-07-25* common/config/c6x/c6x-common.c: New file.Bernd Schmidt2-0/+67
From-SVN: r176738
2011-07-25tree-flow.h (tree_ssa_loop_version): Remove unused declaration.Roman Zhuykov2-2/+4
2011-07-25 Roman Zhuykov <zhroma@ispras.ru> * tree-flow.h (tree_ssa_loop_version): Remove unused declaration. From-SVN: r176737
2011-07-25re PR tree-optimization/49715 (Could do more efficient unsigned-to-float to ↵Richard Guenther8-2/+144
conversions based on range information) 2011-07-25 Richard Guenther <rguenther@suse.de> PR tree-optimization/49715 * tree-vrp.c: Include expr.h and optabs.h. (range_fits_type_): New function. (simplify_float_conversion_using_ranges): Likewise. (simplify_stmt_using_ranges): Call it. * Makefile.in (tree-vrp.o): Add $(EXPR_H) and $(OPTABS_H) dependencies. * optabs.c (can_float_p): Export. * optabs.h (can_float_p): Declare. * gcc.target/i386/pr49715-1.c: New testcase. * gcc.target/i386/pr49715-2.c: Likewise. From-SVN: r176735
2011-07-25tree-vrp.c (num_vr_values, [...]): New global vars.Richard Guenther2-5/+31
2011-07-25 Richard Guenther <rguenther@suse.de> * tree-vrp.c (num_vr_values, values_propagated): New global vars. (get_value_range): For out-of-range SSA names or names created after propagation return a read-only varying range. (dump_all_value_ranges): Adjust. (vrp_initialize): Likewise. (vrp_finalize): Likewise. From-SVN: r176734
2011-07-25re PR c++/49823 ([C++0x] ICE on decltype(expr)::type with template)Jason Merrill4-1/+28
PR c++/49823 * parser.c (cp_parser_qualifying_entity): Handle templates. From-SVN: r176732
2011-07-24re PR debug/49831 (arm-linux-gnueabi bootstrap failures due to ICE in ↵Richard Henderson2-3/+19
dwarf2cfi.c connect_traces) PR debug/49831 * dwarf2cfi.c (connect_traces): Allow unvisited traces. Skip them entirely. Constant pools are emitted in such a way as to be indistinguishable from regular instructions, and these constant pools are, naturally, not reachable as code. From-SVN: r176730
2011-07-24re PR debug/49825 (Many testcase failures)Richard Henderson2-10/+15
PR debug/49825 * dwarf2cfi.c (dwarf2out_stack_adjust): Move A_O_A test earlier. (dwarf2out_notice_stack_adjust): Use args_size from call_insn. From-SVN: r176729
2011-07-24re PR debug/49827 (sparc64-linux and cris-elf bootstrap failures due to ICE ↵Richard Henderson2-0/+13
in dwarf2cfi.c connect_traces) PR debug/49827 * dwarf2cfi.c (create_trace_edges): Handle sequences properly. From-SVN: r176728
2011-07-24dwarf2cfi: Reset args_size properly across abnormal edges.Richard Henderson2-8/+18
* dwarf2cfi.c (maybe_record_trace_start): Add abnormal parameter. Zero args_size for abnormal edges. Adjust all callers. From-SVN: r176727
2011-07-24re PR debug/49825 (Many testcase failures)Richard Henderson2-2/+14
PR debug/49825 Test case gcc.c-torture/compile/pr49474.c, among others. * dwarf2cfi.c (cfi_row_equal_p): Don't compare args_size. From-SVN: r176726
2011-07-24Remove the unused demangle_flag in collect2.c.H.J. Lu2-1/+5
2011-07-24 H.J. Lu <hongjiu.lu@intel.com> PR bootstrap/49835 * collect2.c (demangle_flag): Removed. From-SVN: r176725
2011-07-25Daily bump.GCC Administrator1-1/+1
From-SVN: r176724
2011-07-24configure.ac (demangler_in_ld): Default to yes.Sandra Loosemore4-13/+19
2011-07-24 Sandra Loosemore <sandra@codesourcery.com> gcc/ * configure.ac (demangler_in_ld): Default to yes. * configure: Regenerated. * collect2.c (main): When HAVE_LD_DEMANGLE is defined, don't mess with COLLECT_NO_DEMANGLE, and just pass --demangle and --no-demangle options straight through to ld. When HAVE_LD_DEMANGLE is not defined, set COLLECT_NO_DEMANGLE in a way that has the intended effect on Windows. From-SVN: r176720
2011-07-24hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt, [...]): Fix typos in ↵Paolo Carlini2-3/+8
the last commit. 2011-07-24 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt, _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit. From-SVN: r176718
2011-07-24hashtable_policy.h (_Prime_rehash_policy): Use __builtin_floor rather than ↵François Dumont3-9/+75
__builtin_ceil to compute next resize value. 2011-07-24 François Dumont <francois.cppdevs@free.fr> * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use __builtin_floor rather than __builtin_ceil to compute next resize value. * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc: New. From-SVN: r176717
2011-07-24decl.c (gnat_to_gnu_entity): If the subprogram has copy-in copy-out ↵Eric Botcazou2-11/+50
parameters... * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the subprogram has copy-in copy-out parameters, try to promote the mode of the return type if it is passed in registers. From-SVN: r176714
2011-07-24utils2.c (build_binary_op): Do not mark the left operand as addressable.Eric Botcazou2-5/+5
* gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the left operand as addressable. From-SVN: r176713
2011-07-24gigi.h (build_function_stub): Remove.Eric Botcazou5-140/+160
* gcc-interface/gigi.h (build_function_stub): Remove. (build_return_expr): Likewise. (convert_vms_descriptor): Declare. * gcc-interface/utils.c (convert_vms_descriptor): Make global. (build_function_stub): Move to... * gcc-interface/utils2.c (build_return_expr): Move to... * gcc-interface/trans.c (build_function_stub): ...here. (build_return_expr): ...here. (Subprogram_Body_to_gnu): Add local variable for language_function. Disconnect the parameter attributes cache, if any, once done with it. Call end_subprog_body only after setting the end_locus. Build the stub associated with the function, if any, at the very end. (gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local variables and streamline control flow. From-SVN: r176712
2011-07-24Daily bump.GCC Administrator1-1/+1
From-SVN: r176711
2011-07-23dwarf2cfi: Generate and connect traces.Richard Henderson3-408/+446
This kinda-sorta corresponds to Bernd's 007-dw2cfi patch. Certainly the same concepts of splitting the instruction stream into extended basic blocks is the same. This patch does a bit better job with the documentation. Also, I'm a bit more explicit about matching things up with the similar code from the regular CFG routines. What's missing at this point is any attempt to use DW_CFA_remember_state. I've deferred that for the moment because it's easy to test the state change code across epilogues, whereas the shrink-wrapping code is not in this tree and section switching is difficult to force. * dwarf2cfi.c: Include basic-block.h. (dw_label_info): Remove. (trace_work_list, trace_index): New. (remember_row, emit_cfa_remember): Remove. (dw_trace_info_hash, dw_trace_info_eq): New. (get_trace_index, get_trace_info): New. (save_point_p): New. (free_cfi_row): Remove. (add_cfi): Do not emit DW_CFA_remember_state. (cfa_row_equal_p): New. (barrier_args_size): Remove. (compute_barrier_args_size_1, compute_barrier_args_size): Remove. (dwarf2out_notice_stack_adjust): Don't compute_barrier_args_size. (maybe_record_trace_start, create_trace_edges, scan_trace): New. (dwarf2out_cfi_begin_epilogue): Remove. (dwarf2out_frame_debug_restore_state): Remove. (connect_traces, create_pseudo_cfg): New. (create_cfi_notes, execute_dwarf2_frame): Rewrite using traces. * Makefile.in (dwarf2cfi.o): Update. From-SVN: r176705
2011-07-23dwarf2cfi: Introduce dw_trace_info.Richard Henderson2-174/+281
This patch only introduces the structure definition and adjusts the existing routines to use the new cur_trace global to access the variables that were moved into the structure. * dwarf2cfi.c (dw_trace_info): New. (dw_label_info): New. (cie_return_save): New. (cur_trace): New. (queued_args_size): Rename from args_size. Update all users. (cfa_store, cfa_temp, regs_saved_in_regs): Remove. (def_cfa_1): Use cur_trace instead of cfa_*. (dwarf2out_stack_adjust, record_reg_saved_in_reg): Likewise. (clobbers_queued_reg_save, reg_saved_in): Likewise. (dwarf2out_frame_debug_expr): Likewise. (create_cie_data): Split out from ... (execute_dwarf2_frame): ... here. Initialize cur_trace. From-SVN: r176704
2011-07-23dwarf2cfi: Allocate reg_saved_in_data in the heap.Richard Henderson2-9/+16
* dwarf2cfi.c (regs_saved_in_regs): Allocate from heap, not gc. Update all users to match. (execute_dwarf2_frame): Free reg_saved_in_data. From-SVN: r176703
2011-07-23dwarf2cfi: Convert queued_reg_save to a VEC.Richard Henderson2-25/+36
Also, allocate it in the heap instead of garbage collected. * dwarf2cfi.c (queued_reg_save): Reorder for packing. Don't GTY. (queued_reg_saves): Don't GTY. Change to a VEC. (queue_reg_save): Update to match. (dwarf2out_flush_queued_reg_saves): Likewise. (clobbers_queued_reg_save): Likewise. (reg_saved_in): Likewise. (execute_dwarf2_frame): Free queued_reg_saves. From-SVN: r176702
2011-07-23dwarf2cfi: Remove dw_cfi_row_ref typedef.Richard Henderson2-12/+15
* dwarf2cfi.c (dw_cfi_row_ref): Remove. Update all users. From-SVN: r176701
2011-07-23dwarf2cfi: Implement change_cfi_row.Richard Henderson4-248/+309
Add a generic function to adjust cfi state from one row to another. Use this to implement text section switching. This will also be usable for arbitrary changes around a cfg for shrink-wrapping. * dwarf2cfi.c (add_cfi_args_size): Split out from... (dwarf2out_args_size): ... here. (add_cfi_restore): Split out from ... (dwarf2out_frame_debug_cfa_restore): ... here. (def_cfa_0): Split out from ... (def_cfa_1): ... here. (cfi_oprnd_equal_p, cfi_equal_p): New. (change_cfi_row): New. (add_cfis_to_fde): Set fde->dw_fde_switch_cfi_index. (create_cfi_notes): Use change_cfi_row at SWITCH_TEXT note. (output_cfis): Remove. * dwarf2out.c (output_fde): Simplify output_cfi loop. (dwarf2out_switch_text_section): Don't call output_cfis. (dw_val_equal_p, loc_descr_equal_p_1, loc_descr_equal_p): New. * dwarf2out.h: Update decls. (enum dw_val_class): Add dw_val_class_none. From-SVN: r176700
2011-07-23dwarf2cfi: Populate CUR_ROW->REG_SAVE.Richard Henderson2-2/+32
To be actually used by a subsequent patch. * dwarf2cfi.c (update_row_reg_save): New. (dwarf2out_frame_debug_cfa_expression): Use it. (dwarf2out_frame_debug_cfa_restore): Likewise. (reg_save): Likewise. Do not emit DW_CFA_same_value. From-SVN: r176699
2011-07-23dwarf2cfi: Rename cfi_insn to add_cfi_insn.Richard Henderson2-9/+15
Make it consistent with add_cfi_vec. * dwarf2cfi.c (add_cfi_insn): Rename from cfi_insn. Update all users. From-SVN: r176698
2011-07-23dwarf2cfi: Introduce a dw_cfi_row state.Richard Henderson3-75/+152
Use it instead of old_cfa, old_args_size, and cfa_remember variables. Remove the global cfa variable, as it was usually a duplicate of old_cfa and otherwise confusing. Always make a local copy of the cur_row->cfa variable before modification instead. * dwarf2cfi.c (dw_cfi_row, dw_cfi_row_ref): New. (cie_cfi_row): New. (new_cfi_row, copy_cfi_row, free_cfi_row): New. (cfa, old_cfa, cfa_remember, old_cfa_remember, old_args_size): Remove. (cur_row, remember_row): New. (def_cfa_1): Use cur_row instead of the old_* variables. (dwarf2out_frame_debug_restore_state): Similarly. (dwarf2out_args_size, dwarf2out_notice_stack_adjust): Likewise. (dwarf2out_frame_debug_def_cfa): Use a local variable instead of cfa. (dwarf2out_frame_debug_adjust_cfa): Likewise. (dwarf2out_frame_debug_cfa_offset): Likewise. (dwarf2out_frame_debug_expr): Likewise. (execute_dwarf2_frame): Set up cur_row. * dwarf2out.h (struct cfa_loc): Mark for GTY. From-SVN: r176697
2011-07-23bb-reorder: Split EH edges crossing partitions.Richard Henderson9-174/+276
From-SVN: r176696
2011-07-23re PR target/49816 (arm.c:3999:12: error: converting 'false' to pointer type ↵Richard Earnshaw2-1/+6
'rtx') PR target/49816 * arm.c (aapcs_vfp_allocate_return_reg): Return NULL on failure. From-SVN: r176687
2011-07-23ctime.c: Include <stdlib.h>.Andreas Schwab4-0/+9
* libgfortran/intrinsics/ctime.c: Include <stdlib.h>. * libgfortran/intrinsics/getlog.c: Likewise. * libgfortran/runtime/stop.c: Likewise. From-SVN: r176675
2011-07-23re PR ada/49819 (bogus reference to g-trasym-dwarf.adb in Makefile)Arnaud Charlet2-1/+6
2011-07-23 Arnaud Charlet <charlet@adacore.com> PR ada/49819 * gcc-interface/Makefile.in (powerpc-linux): Remove reference to g-trasym-dwarf.adb. From-SVN: r176673
2011-07-23move.h (move, forward): Mark constexpr.Benjamin Kosnik5-14/+80
2011-07-22 Benjamin Kosnik <bkoz@redhat.com> Daniel Krugler <daniel.kruegler@googlemail.com> * include/bits/move.h (move, forward): Mark constexpr. * include/bits/stl_pair.h (pair): Mark move ctors constexpr. * testsuite/20_util/pair/make_pair/constexpr.cc: New. * testsuite/20_util/pair/cons/constexpr.cc: Add tests. Co-Authored-By: Daniel Krugler <daniel.kruegler@googlemail.com> From-SVN: r176672