summaryrefslogtreecommitdiff
path: root/gcc
Commit message (Collapse)AuthorAgeFilesLines
...
* 2011-07-12 Harsha Jagasia <harsha.jagasia@amd.com>hjagasia2011-07-128-24/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AMD bdver2 Enablement * config.gcc (i[34567]86-*-linux* | ...): Add bdver2. (case ${target}): Add bdver2. * config/i386/driver-i386.c (host_detect_local_cpu): Let -march=native recognize bdver2 processors. * config/i386/i386-c.c (ix86_target_macros_internal): Add bdver2 def_and_undef * config/i386/i386.c (struct processor_costs bdver2_cost): New bdver2 cost table. (m_BDVER2): New definition. (m_AMD_MULTIPLE): Includes m_BDVER2. (initial_ix86_tune_features): Add bdver2 tuning. (processor_target_table): Add bdver2 entry. (static const char *const cpu_names): Add bdver2 entry. (ix86_option_override_internal): Add bdver2 instruction sets. (ix86_issue_rate): Add bdver2. (ix86_adjust_cost): Add bdver2. (has_dispatch): Add bdver2. * config/i386/i386.h (TARGET_BDVER2): New definition. (enum target_cpu_default): Add TARGET_CPU_DEFAULT_bdver2. (enum processor_type): Add PROCESSOR_BDVER2. * config/i386/i386.md (define_attr "cpu"): Add bdver2. * config/i386/i386.opt ( mdispatch-scheduler): Add bdver2 to description. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176209 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/49714rth2011-07-122-2/+8
| | | | | | | * config/i386/i386.c (x86_output_mi_thunk): Fix mode for destination address in memory on some paths. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176208 138bc75d-0d04-0410-961f-82ee72b054a4
* * doc/tm.texi.in (FUNCTION_ARG_PADDING): Mentionbernds2011-07-127-11/+51
| | | | | | | | | | | | | TARGET_FUNCTION_ARG_ROUND_BOUNDARY. (TARGET_FUNCTION_ARG_ROUND_BOUNDARY): Add hook. * function.c (locate_and_pad_parm): Take it into account. * target.def (function_arg_round_boundary): New hook. * targhooks.c (default_function_arg_round_boundary): New function. * targhooks.h (default_function_arg_round_boundary): Declare. * doc/tm.texi: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176207 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-12 Richard Guenther <rguenther@suse.de>rguenth2011-07-122-8/+14
| | | | | | | | * tree-ssa-copyrename.c (rename_ssa_copies): Zero statistics. Do not perform no-op changes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176206 138bc75d-0d04-0410-961f-82ee72b054a4
* Delete moved source files.ro2011-07-123-1316/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176205 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-123-9/+23
| | | | | | | | | | | | | * config/arm/predicates.md (neon_struct_operand): Make a normal predicate. (neon_struct_or_register_operand): New predicate. * config/arm/neon.md (movmisalign<mode>): Replace predicates with neon_struct_or_register_operand. (*movmisalign<mode>_neon_store, *movmisalign<mode>_neon_load): Use neon_struct_operand instead of memory_operand. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176204 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-12 Martin Jambor <mjambor@suse.cz>jamborm2011-07-125-30/+17
| | | | | | | | | | | | | | | | * cgraph.h (cgraph_get_node_or_alias): Removed declaration. * cgraph.c (cgraph_get_node_or_alias): Removed. (change_decl_assembler_name): Changed all calls to cgraph_get_node_or_alias to a call to cgraph_get_node. (cgraph_make_decl_local): Likewise. * lto-symtab.c (lto_symtab_resolve_symbols): Likewise. * varasm.c (default_binds_local_p_1): Likewise. (decl_binds_to_current_def_p): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176196 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/49712jakub2011-07-124-0/+39
| | | | | | | | | * tree-ssa-loop-im.c (gen_lsm_tmp_name): Handle TARGET_MEM_REF. * gcc.c-torture/execute/pr49712.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176195 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2011-07-121-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176192 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/49672jason2011-07-114-18/+60
| | | | | | | | | * pt.c (extract_fnparm_pack): Split out from... (make_fnparm_pack): ...here. (instantiate_decl): Handle non-pack parms after a pack. * semantics.c (maybe_add_lambda_conv_op): Don't in a template. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176183 138bc75d-0d04-0410-961f-82ee72b054a4
* * genautomata.c (add_arc): Return void. All callers changed.bernds2011-07-112-15/+10
| | | | | | | (make_automaton): Remove dead code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176179 138bc75d-0d04-0410-961f-82ee72b054a4
* * dwarf2cfi.c (DW_STACK_POINTER_REGNUM): New.rth2011-07-114-75/+108
| | | | | | | | | | | | | | | | (DW_FRAME_POINTER_REGNUM): New. (expand_builtin_init_dwarf_reg_sizes): Use unsigned for rnum. (def_cfa_1): Do not convert reg to DWARF_FRAME_REGNUM here. (dwf_regno): New. (dwarf2out_flush_queued_reg_saves, dwarf2out_frame_debug_def_cfa, dwarf2out_frame_debug_adjust_cfa, dwarf2out_frame_debug_cfa_register, dwarf2out_frame_debug_cfa_expression, dwarf2out_frame_debug_expr): Use it. * dwarf2out.c (based_loc_descr): Use dwarf_frame_regnum. * dwarf2out.h (dwarf_frame_regnum): New. (struct cfa_loc): Document the domain of the reg member. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176178 138bc75d-0d04-0410-961f-82ee72b054a4
* * decl2.c (decl_constant_var_p): Use decl_maybe_constant_var_p.jason2011-07-112-18/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176177 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/44609jason2011-07-117-6/+78
| | | | | | | | | | | | * cp-tree.h (struct tinst_level): Add errors field. * pt.c (neglectable_inst_p, limit_bad_template_recurson): New. (push_tinst_level): Don't start another decl in that case. (reopen_tinst_level): Adjust errors field. * decl2.c (cp_write_global_declarations): Don't complain about undefined inline if its template was defined. * mangle.c (mangle_decl_string): Handle failure from push_tinst_level. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176176 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/i386.c (ix86_trampoline_init): Switch arms of if expr.uros2011-07-112-105/+97
| | | | | | | | Use offset everywhere. Always assert that offset <= TRAMPOLINE_SIZE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176173 138bc75d-0d04-0410-961f-82ee72b054a4
* PR debug/49676jakub2011-07-114-13/+243
| | | | | | | | | | | | | | | | | | | | | | * dwarf2out.c (int_shift_loc_descriptor): New function. (int_loc_descriptor): If shorter, emit i as (i >> shift), shift, DW_OP_shl for suitable shift value. Similarly, try to optimize large negative values using DW_OP_neg of a positive value if shorter. (size_of_int_shift_loc_descriptor): New function. (size_of_int_loc_descriptor): Adjust to match int_loc_descriptor changes. (mem_loc_descriptor) <case CONST_INT>: Emit zero-extended constants that fit into DWARF2_ADDR_SIZE bytes as int_loc_descriptor + DW_OP_GNU_convert instead of DW_OP_GNU_const_type if the former is shorter. (resolve_addr_in_expr): Optimize DW_OP_plus_uconst with a large addend as added DW_OP_plus if it is shorter. * gcc.dg/guality/csttest.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176167 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/49698jakub2011-07-114-2/+28
| | | | | | | | | | * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Initialize inner_size to gfc_index_one_node instead of integer_one_node. * gfortran.dg/pr49698.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176164 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define.ro2011-07-112-0/+12
| | | | | | | (DTORS_SECTION_ASM_OP): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176162 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/uninit-pred-8_b.c: Disable dominator optimizations.law2011-07-112-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176160 138bc75d-0d04-0410-961f-82ee72b054a4
* * EXCLUDES (libgcov.c): Remove.ro2011-07-112-1/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176158 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-07-113-37/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config/dfp-bit.c, config/dfp-bit.h: Move to ../libgcc. * config/t-dfprules: Move to ../libgcc/config. * config.gcc (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Remove t-dfprules from tmake_file. (x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise. (i[34567]86-*-cygwin*): Likewise. (i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise. (powerpc-*-linux*, powerpc64-*-linux*): Likewise. * Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): Remove. (libgcc.mvars): Remove DFP_ENABLE, DFP_CFLAGS, D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS. libgcc: * dfp-bit.c, dfp-bit.h: New files. * Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): New variables. ($(d32pbit-o)): Use $(srcdir) to refer to dfp-bit.c ($(d64pbit-o)): Likewise. ($(d128pbit-o)): Likewise. * config/t-dfprules: New file. * config.host (i[34567]86-*-linux*): Add t-dfprules to tmake_file. (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Likewise. (x86_64-*-linux*): Likewise. (x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise. (i[34567]86-*-cygwin*): Likewise. (i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise. (powerpc-*-linux*, powerpc64-*-linux*): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176156 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-11 Richard Guenther <rguenther@suse.de>rguenth2011-07-112-18/+48
| | | | | | | | * tree-vrp.c (simplify_conversion_using_ranges): Manually translate the source value-range through the conversion chain. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176154 138bc75d-0d04-0410-961f-82ee72b054a4
* Check ia32 effective target.hjl2011-07-113-2/+8
| | | | | | | | | | | 2011-07-11 H.J. Lu <hongjiu.lu@intel.com> * gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp: Check ia32. * go.test/go-test.exp (go-set-goarch): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176153 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-112-21/+22
| | | | | | | * expr.c (expand_expr_real_1): Use expand_insn for movmisalign. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176150 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-11 Arthur Loiret <aloiret@debian.org>doko2011-07-113-2/+17
| | | | | | | | | | | * config.gcc (s390-*-linux*): If 'enabled_targets' is 'all', build a bi-arch compiler defaulting to 31-bit. In this case: (tmake_file): Add s390/t-linux64. * doc/install.texi: Add s390-linux to the list of targets supporting --enable-targets=all. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176146 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-11 Arthur Loiret <aloiret@debian.org>doko2011-07-114-1/+24
| | | | | | | | | | | | | | | | | | Matthias Klose <doko@debian.org> * config.gcc (mips*-*-linux*): If 'enabled_targets' is 'all', build a tri-arch compiler defaulting to 32-bit (ABI o32). In this case: (tm_file): Add mips/linux64.h. (tmake_file): Add mips/t-linux64. (tm_defines): Add MIPS_ABI_DEFAULT=ABI_32. * config/mips/linux64.h (DRIVER_SELF_SPECS): Use MULTILIB_ABI_DEFAULT instead of hardcoded mabi=n32. * config/mips/t-linux64 (MULTILIB_DIRNAMES): Set to 'n32 . 64' if tm_defines contains MIPS_ABI_DEFAULT ABI_32, to follow the glibc convention. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176145 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>krebbel2011-07-112-0/+6
| | | | | | | | | * passes.c (init_optimization_passes): Add invariant motion pass after induction variable optimization. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176142 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/gjl2011-07-114-3/+38
| | | | | | | | | | | | | | PR target/39633 * config/avr/avr.c (notice_update_cc): For ashiftrt:QI, only offsets 1..5 set cc0 in a usable way. testsuite/ PR target/39633 * gcc.target/avr/torture/pr39633.c: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176141 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-11 Romain Geissler <romain.geissler@gmail.com>rguenth2011-07-112-2/+5
| | | | | | | | * tree.h (call_expr_arg): Remove. (call_expr_argp): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176140 138bc75d-0d04-0410-961f-82ee72b054a4
* In gcc/objc/:nicola2011-07-119-66/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2011-07-11 Nicola Pero <nicola.pero@meta-innovation.com> * objc-encoding.h (obstack.h): Do not include. (util_obstack, util_firstobj): Do not declare. (encode_field_decl): Updated prototype to return a tree and take a single tree argument. Updated comments. * objc-encoding.c (util_obstack, util_firstobj): Made static. (objc_encoding_init): New. (encode_field_decl): Existing function renamed to encode_field and made static. New encode_field_decl wrapper function added. (encode_aggregate_fields): Update call to encode_field_decl to call encode_field. * objc-next-runtime-abi-02.c (obstack.h): Do not include. (util_obstack, util_firstobj): Do not declare. (build_v2_ivar_list_initializer): Updated call to encode_field_decl. * objc-runtime-shared-support.c (obstack.h): Do not include. (util_obstack, util_firstobj): Do not declare. (build_ivar_list_initializer): Updated call to encode_field_decl. * objc-act.c (objc_init): Use objc_encoding_init. * Make-lang.in (objc/objc-runtime-shared-support.o): Do not depend on OBSTACK_H. (objc/objc-gnu-runtime-abi-01.o): Likewise. (objc/objc-next-runtime-abi-01.o): Likewise. (objc/objc-next-runtime-abi-02.o): Likewise. (objc/objc-act.o): Likewise. In gcc/objcp/: 2011-07-11 Nicola Pero <nicola.pero@meta-innovation.com> * Make-lang.in (objcp/objc-runtime-shared-support.o): Do not depend on OBSTACK_H. (objcp/objc-gnu-runtime-abi-01.o): Likewise. (objcp/objc-next-runtime-abi-01.o): Likewise. (objcp/objc-next-runtime-abi-02.o): Likewise. (objcp/objcp-act.o): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176139 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sparc/sparc.md (save_register_window_1): Rename to...ebotcazou2011-07-113-11/+17
| | | | | | | | | | (window_save): ...this. * config/sparc/sparc.c (emit_save_register_window): Rename to... (emit_window_save): ...this. (sparc_expand_prologue): Adjust to above renaming. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176138 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-11 Tobias Burnus <burnus@net-b.de>burnus2011-07-112-1/+6
| | | | | | | | | PR fortran/18918 * gfortran.dg/coarray_lock_3.f90: Remove bogus dg-error. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176137 138bc75d-0d04-0410-961f-82ee72b054a4
* * lib/target-supports.exp (check_effective_target_scheduling):gjl2011-07-116-0/+21
| | | | | | | | | | | New Function. * gcc.dg/pr46614.c: Add dg-require-effective-target scheduling. * gcc.dg/pr45055.c: Ditto. * gcc.dg/pr45353.c: Ditto. * g++.dg/pr45056.C: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176136 138bc75d-0d04-0410-961f-82ee72b054a4
* gjl2011-07-115-0/+11
| | | | | | | | | | | * gcc.dg/compat/struct-by-value-16_main.c: Skip AVR. * gcc.dg/compat/struct-by-value-17_main.c: Skip AVR. * gcc.dg/compat/struct-by-value-18_main.c: Skip AVR. * g++.dg/torture/pr31863.C: Skip AVR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176135 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2011-07-111-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176133 138bc75d-0d04-0410-961f-82ee72b054a4
* Use movl instead of movabs for x32.hjl2011-07-102-4/+19
| | | | | | | | | | 2011-07-10 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_trampoline_init): Use movl instead of movabs for x32. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176129 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/i386.c (x86_output_mi_thunk): Generate rtl andrth2011-07-102-70/+77
| | | | | | run final, instead of emitting text directly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176128 138bc75d-0d04-0410-961f-82ee72b054a4
* Turn on 64bit and check models for x32.hjl2011-07-102-0/+15
| | | | | | | | | | | 2011-07-10 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.c (ix86_option_override_internal): Turn on OPTION_MASK_ISA_64BIT for TARGET_X32. Only allow small and small PIC models for TARGET_X32. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176127 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-10 Tobias Burnus <burnus@net-b.de>burnus2011-07-104-1/+32
| | | | | | | | | | | | | | | PR fortran/49690 * intrinsic.c (add_functions): Use BT_VOID for 2nd argument of * SIGNAL. 2011-07-10 Tobias Burnus <burnus@net-b.de> PR fortran/49690 * gfortran.dg/intrinsic_signal.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176121 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/49691jason2011-07-107-8/+37
| | | | | | | | | * parser.c (cp_parser_late_return_type_opt): Check quals parameter rather than current_class_type to determine whether to set 'this'. (cp_parser_direct_declarator): Pass -1 to quals if member_p is false. (cp_parser_init_declarator): Pass down member_p. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176120 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2011-07-101-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176115 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/49684hp2011-07-092-2/+6
| | | | | | | | * config/cris/t-elfmulti (CRTSTUFF_T_CFLAGS): Don't include $(LIBGCC2_CFLAGS). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176111 138bc75d-0d04-0410-961f-82ee72b054a4
* PR bootstrap/49680hp2011-07-092-8/+21
| | | | | | | | | * config/cris/cris.c (cris_asm_output_case_end): Robustify against stray notes and debug insns by using prev_nonnote_nondebug_insn instead of PREV_INSN. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176110 138bc75d-0d04-0410-961f-82ee72b054a4
* dwarf2: Move CFI output routines to dwarf2cfi.c.rth2011-07-095-630/+619
| | | | | | | | | | | | | | | | | * defaults.h (DWARF2_ADDR_SIZE, DWARF_OFFSET_SIZE, DWARF_TYPE_SIGNATURE_SIZE): Move from ... * dwarf2out.c: ... here. (output_all_cfis): Remove. (dwarf2out_switch_text_section): Use output_cfis directly. (size_of_locs): Export. (output_loc_sequence, output_loc_sequence_raw): Export. (div_data_align, need_data_align_sf_opcode, dwarf_cfi_name, output_cfi, output_cfi_directive, dwarf2out_emit_cfi, output_cfis, output_cfa_loc, output_cfa_loc_raw): Move to ... * dwarfcfi.c: ... here. * dwarf2out.h: Update decls. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176107 138bc75d-0d04-0410-961f-82ee72b054a4
* dwarf2: Reduce some redundant definitions.rth2011-07-094-117/+44
| | | | | | | | | | | | | | | | Move some definitions to defaults.h; some simply aren't needed anymore in the respective dwarf2{cfi,out}.c files. * defaults.h (DWARF_CIE_DATA_ALIGNMENT, DWARF_FRAME_RETURN_COLUMN, DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Move from ... * dwarf2cfi.c: ... here. (PTR_SIZE, DWARF_OFFSET_SIZE, DWARF_INITIAL_LENGTH_SIZE): Remove. (DWARF_ROUND, DWARF_CIE_ID): Remove. * dwarf2out.c (INCOMING_RETURN_ADDR_RTX): Remove. (DWARF2_FRAME_REG_OUT, DWARF_CIE_DATA_ALIGNMENT): Remove. (DWARF_FRAME_RETURN_COLUMN, DWARF_FRAME_REGNUM): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176102 138bc75d-0d04-0410-961f-82ee72b054a4
* dwarf2cfi: Handle return column save from CIE.rth2011-07-093-103/+139
| | | | | | | | | | | | | | | | | | | | | | When we record a save of the return column in the CIE, remember that while processing the FDE. This requires propagating the handling of PC_RTX as a representative of the return column to more locations. MIPS had been handling this case by hand, and is no longer required. * dwarf2cfi.c (cie_return_save): New. (queue_reg_save): Use compare_reg_or_pc. (dwarf2out_flush_queued_reg_saves): Handle pc_rtx as return column. (dwarf2out_frame_debug_expr): Likewise. (dwarf2out_frame_debug_cfa_register): Record saved reg for pc too. (initial_return_save): Likewise. (execute_dwarf2_frame): Save and restore initial return save from the cie to the fde. * config/mips/mips.c (mips_frame_set): Remove special case for DWARF_FRAME_RETURN_COLUMN. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176099 138bc75d-0d04-0410-961f-82ee72b054a4
* dwarf2cfi: Simplify re-initialization for each function.rth2011-07-092-32/+20
| | | | | | | | | | | | There's no point calling lookup_cfa to re-create the CFA we initialized just a few lines above. * dwarf2cfi.c (lookup_cfa): Remove. (execute_dwarf2_frame): Assert queues are empty on entry. Setup initial cfa directly, not via lookup_cfa. Don't clear args_size state here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176098 138bc75d-0d04-0410-961f-82ee72b054a4
* dwarf2cfi: Unify add_fde_cfi and add_cie_cfi.rth2011-07-093-50/+47
| | | | | | | | | * dwarf2cfi.c (add_cfi_vec): New. (add_cfi): Rename from add_fde_cfi. Add the element to add_cfi_vec. (def_cfa_1, reg_save): Remove for_cie argument. Update all callers. (execute_dwarf2_frame): Set add_cfi_vec. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176095 138bc75d-0d04-0410-961f-82ee72b054a4
* Move ASM_COMMENT_START to defaults.h.rth2011-07-098-39/+13
| | | | | | | | | | | | Note the extreme silliness in dwarf2out.c with 3 (three) copies. * defaults.h (ASM_COMMENT_START): Move here... * dwarf2asm.c: ... from here. * dwarf2out.c, final.c, vmsdbgout.c: Remove duplicates. * toplev.c: Remove ifndef tests of ASM_COMMENT_START. * varasm.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176093 138bc75d-0d04-0410-961f-82ee72b054a4
* PR debug/49686rth2011-07-092-16/+15
| | | | | | | * dwarf2cfi.c (dwarf2out_frame_debug): Don't set cfi_insn here... (create_cfi_notes): ... do it here instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176091 138bc75d-0d04-0410-961f-82ee72b054a4