- 25 Jul, 2011 9 commits
-
-
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
Richard Guenther committed -
PR c++/49823 * parser.c (cp_parser_qualifying_entity): Handle templates. From-SVN: r176732
Jason Merrill committed -
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
Richard Henderson committed -
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
Richard Henderson committed -
re PR debug/49827 (sparc64-linux and cris-elf bootstrap failures due to ICE in dwarf2cfi.c connect_traces) PR debug/49827 * dwarf2cfi.c (create_trace_edges): Handle sequences properly. From-SVN: r176728
Richard Henderson committed -
* dwarf2cfi.c (maybe_record_trace_start): Add abnormal parameter. Zero args_size for abnormal edges. Adjust all callers. From-SVN: r176727
Richard Henderson committed -
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
Richard Henderson committed -
2011-07-24 H.J. Lu <hongjiu.lu@intel.com> PR bootstrap/49835 * collect2.c (demangle_flag): Removed. From-SVN: r176725
H.J. Lu committed -
From-SVN: r176724
GCC Administrator committed
-
- 24 Jul, 2011 7 commits
-
-
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
Sandra Loosemore committed -
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
Paolo Carlini committed -
hashtable_policy.h (_Prime_rehash_policy): Use __builtin_floor rather than __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
François Dumont committed -
* 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
Eric Botcazou committed -
* gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the left operand as addressable. From-SVN: r176713
Eric Botcazou committed -
* 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
Eric Botcazou committed -
From-SVN: r176711
GCC Administrator committed
-
- 23 Jul, 2011 17 commits
-
-
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
Richard Henderson committed -
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
Richard Henderson committed -
* 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
Richard Henderson committed -
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
Richard Henderson committed -
* dwarf2cfi.c (dw_cfi_row_ref): Remove. Update all users. From-SVN: r176701
Richard Henderson committed -
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
Richard Henderson committed -
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
Richard Henderson committed -
Make it consistent with add_cfi_vec. * dwarf2cfi.c (add_cfi_insn): Rename from cfi_insn. Update all users. From-SVN: r176698
Richard Henderson committed -
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
Richard Henderson committed -
From-SVN: r176696
Richard Henderson committed -
PR target/49816 * arm.c (aapcs_vfp_allocate_return_reg): Return NULL on failure. From-SVN: r176687
Richard Earnshaw committed -
* libgfortran/intrinsics/ctime.c: Include <stdlib.h>. * libgfortran/intrinsics/getlog.c: Likewise. * libgfortran/runtime/stop.c: Likewise. From-SVN: r176675
Andreas Schwab committed -
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
Arnaud Charlet committed -
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
Benjamin Kosnik committed -
From-SVN: r176670
Jason Merrill committed -
From-SVN: r176669
GCC Administrator committed -
PR c++/49793 * typeck2.c (check_narrowing): Downgrade permerror to pedwarn. Make conditional on -Wnarrowing. From-SVN: r176665
Jason Merrill committed
-
- 22 Jul, 2011 7 commits
-
-
From-SVN: r176664
Richard Henderson committed -
* jump.c (maybe_propagate_label_ref): Split out of... (mark_all_labels): ... here. Do not attempt label_ref propagation while in cfglayout mode. From-SVN: r176663
Richard Henderson committed -
PR target/49817 * stack-limit.c: Include <stdint.h>. From-SVN: r176662
Gerald Pfeifer committed -
2011-07-23 Tobias Burnus <burnus@net-b.de> PR fortran/49791 * io/list_read.c (nml_parse_qualifier): Remove check to enabled extended read for another case. 2011-07-23 Tobias Burnus <burnus@net-b.de> PR fortran/49791 * gfortran.dg/namelist_72.f: New. From-SVN: r176661
Tobias Burnus committed -
2011-07-23 Tobias Burnus <burnus@net-b.de> * resolve.c (resolve_symbol): Fix coarray var decl check. 2011-07-23 Tobias Burnus <burnus@net-b.de> * gfortran.dg/coarray_25.f90: New. From-SVN: r176660
Tobias Burnus committed -
Warn about the use of final/override in non-c++0x mode, and add __final for non-c++0x mode. * cp-tree.h (cpp0x_warn_str): Add CPP0X_OVERRIDE_CONTROLS. * error.c (maybe_warn_cpp0x): Adjust. * parser.c (cp_parser_virt_specifier_seq_opt): Use it. Add '__final' as a non-c++0x alternative for 'final'. From-SVN: r176655
Ville Voutilainen committed -
* dwarf2.h (DW_AT_GNU_macros): New. (enum dwarf_macro_record_type): New enum. Add DW_MACRO_GNU_*. * dwarf2out.c (struct macinfo_struct): Change code to unsigned char. (DEBUG_MACRO_SECTION, DEBUG_MACRO_SECTION_LABEL): Define. (dwarf_attr_name): Handle DW_AT_GNU_macros. (dwarf2out_define): If the vector is empty and lineno is 0, emit a dummy entry first. (dwarf2out_undef): Likewise. Remove redundant semicolon. (htab_macinfo_hash, htab_macinfo_eq, output_macinfo_op, optimize_macinfo_range): New functions. (output_macinfo): Use them. If !dwarf_strict and .debug_str is mergeable, optimize longer strings using DW_MACRO_GNU_{define,undef}_indirect and if HAVE_COMDAT_GROUP, optimize longer sequences of define/undef ops from headers using DW_MACRO_GNU_transparent_include. For !dwarf_strict emit a section headers. (dwarf2out_init): For !dwarf_strict set debug_macinfo_section and macinfo_section_label to DEBUG_MACRO_SECTION resp. DEBUG_MACRO_SECTION_LABEL. (dwarf2out_finish): For !dwarf_strict emit DW_AT_GNU_macros instead of DW_AT_macro_info. From-SVN: r176653
Jakub Jelinek committed
-