aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2012-09-03re PR fortran/54467 (f951: internal compiler error: in ↵Tobias Burnus2-1/+7
gfc_add_component_ref, at fortran/class.c:213) 2012-09-03 Tobias Burnus <burnus@net-b.de> PR fortran/54467 * class.c (gfc_find_derived_vtab): Fix disabling of _final by continuing to generate normal type-bound procedures. From-SVN: r190892
2012-09-03re PR middle-end/54362 (COND_EXPR not understood by either alias or ITM)Richard Biener2-1/+19
2012-09-03 Richard Guenther <rguenther@suse.de> PR tree-optimization/54362 * tree-ssa-structalias.c (find_func_aliases): Handle COND_EXPR. From-SVN: r190889
2012-09-03s390.c (s390_loadrelative_operand_p): New function.Andreas Krebbel2-4/+40
2012-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.c (s390_loadrelative_operand_p): New function. (s390_check_qrst_address, print_operand_address): Use s390_loadrelative_operand_p instead of s390_symref_operand_p. (s390_check_symref_alignment): Accept pointer size alignment for GOT slots. (legitimize_pic_address): Use load relative on z10 or later. From-SVN: r190884
2012-09-03re PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in ↵Jakub Jelinek2-0/+14
rhs_regno, at rtl.h:1091) PR debug/53923 * valtrack.c (dead_debug_insert_temp): Drop non-reg uses from the chain. From-SVN: r190883
2012-09-03common.opt (--no-sysroot-suffix): New driver option.Joseph Myers4-1/+24
* common.opt (--no-sysroot-suffix): New driver option. * doc/invoke.texi (--no-sysroot-suffix): Document. * gcc.c (driver_handle_option): Handle --no-sysroot-suffix as not needing spec processing. (main): Do not process sysroot suffixes if no_sysroot_suffix. From-SVN: r190882
2012-09-03class.c (gfc_find_derived_vtab): Disable ABI-breaking generation of the ↵Tobias Burnus2-1/+9
"_final" subroutine for now. 2012-09-03 Tobias Burnus <burnus@net-b.de> * class.c (gfc_find_derived_vtab): Disable ABI-breaking generation of the "_final" subroutine for now. From-SVN: r190872
2012-09-03class.c (finalize_component): Fixes to the comment.Tobias Burnus2-2/+6
2012-09-03 Tobias Burnus <burnus@net-b.de> * class.c (finalize_component): Fixes to the comment. From-SVN: r190870
2012-09-03[multiple changes]Tobias Burnus8-13/+806
2012-09-03 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> Tobias Burnus <burnus@net-b.de> PR fortran/37336 * gfortran.h (symbol_attribute): Add artificial. * module.c (mio_symbol_attribute): Handle attr.artificial * class.c (gfc_build_class_symbol): Defer creation of the vtab if the DT has finalizers, mark generated symbols as attr.artificial. (has_finalizer_component, finalize_component, finalization_scalarizer, generate_finalization_wrapper): New static functions. (gfc_find_derived_vtab): Add _final component and call generate_finalization_wrapper. * dump-parse-tree.c (show_f2k_derived): Use resolved proc_tree->n.sym rather than unresolved proc_sym. (show_attr): Handle attr.artificial. * resolve.c (gfc_resolve_finalizers): Ensure that the vtab * exists. (resolve_fl_derived): Resolve finalizers before generating the vtab. (resolve_symbol): Also allow assumed-rank arrays with CONTIGUOUS; skip artificial symbols. (resolve_fl_derived0): Skip artificial symbols. 2012-09-03 Tobias Burnus <burnus@net-b.de> PR fortran/51632 * gfortran.dg/coarray_class_1.f90: New. From-SVN: r190869
2012-09-03Daily bump.GCC Administrator1-1/+1
From-SVN: r190868
2012-09-02re PR target/33135 ([SH] -ffinite-math-only should not be on by default)Oleg Endo2-14/+8
PR target/33135 * common/config/sh/sh-common.c: Update copyright years. (sh_option_init_struct): Delete. (TARGET_OPTION_INIT_STRUCT): Likewise. From-SVN: r190865
2012-09-02re PR target/54418 ([SH] Invalid operands for opcode)Oleg Endo2-2/+15
PR target/54418 * config/sh/sh.md (cmpgeusi_t): Remove N alternative. Check operands[1] in split condition instead of operands[0]. Add comments. From-SVN: r190864
2012-09-02config.host (x86_64-*-openbsd*): New target.Mark Kettenis8-66/+168
libgcc/ * config.host (x86_64-*-openbsd*): New target. gcc/ * config.gcc (x86_64-*-openbsd*): New target. * config.host (*-*-openbsd*): New target. * config/openbsd.h (TARGET_C99_FUNCTIONS): Define. * config/i386/openbsdelf.h: Remove some superfluous defines and group things together in a more logical fashion. (DBX_REGISTER_NUMBER): Provide a definition that works on both 32-bit and 64-bit targets. (WCHAR_TYPE_SIZE): Hardcode as 32. (NO_DOLLAR_IN_LABEL): Remove undef. (TARGET_DEFAULT): Remove. (SET_ASM_OP): Remove. (DEFAULT_PCC_STRUCT_RETURN): Undef first to prevent warning. (ASM_OUTPUT_MAX_SKIP_ALIGN): Synch with x86-64.h (DWARF2_UNWIND_INFO): Remove define. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/host-openbsd.c: New file. * config/t-openbsd (USER_H): Add EXTRA_HEADERS. * config/x-openbsd: New file. From-SVN: r190863
2012-09-02sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to ↵Oleg Endo2-1/+6
sh_legitimate_index_p instead of QImode. * config/sh/sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to sh_legitimate_index_p instead of QImode. From-SVN: r190862
2012-09-02sync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code.Uros Bizjak1-4/+3
* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code. From-SVN: r190861
2012-09-02re PR rtl-optimization/54369 (delayed-branch pass removes too many instructions)Eric Botcazou3-2/+15
PR rtl-optimization/54369 * config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before calling dbr_schedule. * config/sparc/sparc.c (sparc_reorg): Likewise. From-SVN: r190858
2012-09-02re PR target/49206 (RA failure in spill_failure, at reload1.c:2113)Uros Bizjak2-0/+31
PR target/49206 * gcc.c-torture/compile/pr49206.c: New test. From-SVN: r190857
2012-09-02* gcc.c-torture/compile/pr44687.c: Fix whitespace.Uros Bizjak1-32/+33
From-SVN: r190856
2012-09-02re PR target/36680 (ICE in spill_failure, reload1.c:1995)Dominique d'Humieres2-1/+49
PR target/36680 * gfortran.dg/pr36680.f90: New test. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r190855
2012-09-02re PR target/42295 (ICE: 'error: unable to find a register to spill in class ↵Uros Bizjak2-0/+24
"AREG"' with -fschedule-insns) PR target/42295 * g++.dg/opt/pr42295.C: New test. From-SVN: r190854
2012-09-02re PR fortran/54426 (FAIL: gfortran.dg/common_6.f90 -O (internal compiler ↵Tobias Burnus2-0/+41
error) on powerpc-apple-darwin9) 2012-09-02 Tobias Burnus <burnus@net-b.de> PR fortran/54426 * symbol.c (find_common_symtree): New function. (gfc_undo_symbols): Use it; free common_head if needed. From-SVN: r190853
2012-09-02Daily bump.GCC Administrator1-1/+1
From-SVN: r190852
2012-09-01re PR target/54436 (Compiling some regular C++ code gives assembler '700415 ↵Jakub Jelinek4-2/+59
shortened to 255' warning) PR target/54436 * config/i386/i386.md (*mov<mode>_insv_1_rex64, *movsi_insv_1): If operands[1] is CONST_INT_P, convert it to QImode before printing. * gcc.dg/torture/pr54436.c: New test. From-SVN: r190849
2012-09-01simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): A truncate of a ↵Andrew Pinski4-0/+35
memory is just loading the low part of the memory. 2012-09-01 Andrew Pinski <apinski@cavium.com> * simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): A truncate of a memory is just loading the low part of the memory. 2012-09-01 Andrew Pinski <apinski@cavium.com> * gcc.target/mips/truncate-8.c: New testcase. From-SVN: r190848
2012-09-01re PR target/46829 (ICE: in spill_failure, at reload1.c:2105 with ↵Uros Bizjak5-0/+119
-fschedule-insns -fsched-pressure and variadic function) PR target/46829 PR target/46843 * config/i386/i386.c (ix86_legitimate_combined_insn): New function. (TARGET_LEGITIMATE_COMBINED_INSN): New macro. testsuite/ChangeLog: PR target/46829 PR target/46843 * gcc.target/i386/pr46829.c: New test. * gcc.target/i386/pr46843.c: Ditto. From-SVN: r190847
2012-09-01target.def (legitimate_combined_insn): New target hook.Uros Bizjak7-4/+71
* target.def (legitimate_combined_insn): New target hook. * doc/tm.texi.in (TARGET_LEGITIMATE_COMBINED_INSN): New hook. * doc/tm.texi: Regenerated. * combine.c (recog_for_combine): Call targetm.legitimate_combined_insn to allow targets to reject combined insn. * hooks.h (hook_bool_rtx_true): New. * hooks.c (hook_bool_rtx_true): Ditto. From-SVN: r190846
2012-09-01Daily bump.GCC Administrator1-1/+1
From-SVN: r190845
2012-08-31re PR c++/18747 ("template<> int i;" accepted)Paolo Carlini7-35/+103
PR c++/18747 * pt.c (check_template_variable): New. (num_template_headers_for_class): Split out... * decl.c (grokdeclarator): ...from here. (start_decl): Remove redundant diagnostic. * cp-tree.h: Declare them * parser.c (cp_parser_single_declaration): Call check_template_variable. . Co-Authored-By: Jason Merrill <jason@redhat.com> From-SVN: r190842
2012-08-31ipa-inline-analysis.c (estimate_function_body_sizes): Allocate ↵Martin Jambor2-7/+13
nonconstant_names after calculate_dominance_info and loop_optimizer_init. 2012-08-31 Martin Jambor <mjambor@suse.cz> * ipa-inline-analysis.c (estimate_function_body_sizes): Allocate nonconstant_names after calculate_dominance_info and loop_optimizer_init. From-SVN: r190841
2012-08-31re PR c/54428 (ICE in gimplify_expr, at gimplify.c:7591)Jakub Jelinek4-14/+37
PR c/54428 * c-convert.c (convert): Don't call fold_convert_loc if TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from COMPLEX_TYPE -> COMPLEX_TYPE conversion. * gcc.c-torture/compile/pr54428.c: New test. From-SVN: r190840
2012-08-31arm.c (arm_expand_epilogue): Remove unused variable floats_from_frame.Greta Yorsh2-13/+6
gcc/ 2012-08-31 Greta Yorsh <Greta.Yorsh@arm.com> * config/arm/arm.c (arm_expand_epilogue): Remove unused variable floats_from_frame. From-SVN: r190838
2012-08-31re PR c++/54197 (Lifetime of reference not properly extended)Ollie Wild4-0/+53
2012-08-31 Ollie Wild <aaw@google.com> PR c++/54197 * gcc/cp/call.c (extend_ref_init_temps_1): Handle COMPOUND_EXPR trees. * gcc/testsuite/g++.dg/init/lifetime3.C: New test. From-SVN: r190834
2012-08-31re PR middle-end/54409 (internal compiler error: in remap_predicate, at ↵Martin Jambor4-2/+44
ipa-inline-analysis.c:2710) 2012-08-31 Martin Jambor <mjambor@suse.cz> PR middle-end/54409 * ipa-inline-analysis.c (remap_predicate): Fix the offset_map checking condition. * gcc/testsuite/gcc.dg/torture/pr54409.c: New test. From-SVN: r190833
2012-08-31ipa-inline-analysis.c (phi_result_unknown_predicate): New function.Martin Jambor4-2/+130
2012-08-31 Martin Jambor <mjambor@suse.cz> * ipa-inline-analysis.c (phi_result_unknown_predicate): New function. (predicate_for_phi_result): Likewise. (estimate_function_body_sizes): Use the above two functions. * testsuite/gfortran.dg/pr48636.f90: Add dump scan checks. From-SVN: r190832
2012-08-31re PR middle-end/54394 (fatigue2 -flto run time regression)Martin Jambor2-5/+16
2012-08-31 Martin Jambor <mjambor@suse.cz> PR middle-end/54394 * ipa-inline-analysis.c (estimate_function_body_sizes): Compute dominance info and loops whenever optimizing. From-SVN: r190831
2012-08-30re PR c++/50545 ([C++0x][DR 1172] SFINAE does not handle an explicit type ↵Jason Merrill7-28/+293
conversion (functional notation) with a braced-init-list well if target type is not dependent) PR c++/50545 PR c++/51222 * pt.c (instantiation_dependent_r): New. (instantiation_dependent_expression_p): New. (value_dependent_expression_p): Use it. SCOPE_REF is always dependent. * semantics.c (finish_decltype_type): Use it. * cp-tree.h: Declare it. From-SVN: r190830
2012-08-30semantics.c (finish_qualified_id_expr): Handle building up a non-dependent ↵Jason Merrill3-17/+25
SCOPE_REF here. * semantics.c (finish_qualified_id_expr): Handle building up a non-dependent SCOPE_REF here. (finish_id_expression): Not here. * error.c (dump_decl) [SCOPE_REF]: Only pass TFF_UNQUALIFIED_NAME. From-SVN: r190829
2012-08-30friend.c (make_friend_class): Handle template template parameters.Jason Merrill5-6/+31
* friend.c (make_friend_class): Handle template template parameters. * parser.c (cp_parser_template_declaration_after_export): Likewise. * pt.c (tsubst_friend_class): Likewise. (instantiate_class_template_1): Likewise * decl.c (check_elaborated_type_specifier): Likewise. (lookup_and_check_tag): Likewise. From-SVN: r190828
2012-08-30pt.c (get_class_bindings): Call coerce_template_parms.Jason Merrill2-11/+20
* pt.c (get_class_bindings): Call coerce_template_parms. Add main_tmpl parameter. (more_specialized_class): Add main_tmpl parameter. (most_specialized_class): Adjust calls. From-SVN: r190827
2012-08-30decl.c (cp_finish_decl): Check for invalid multiple initializers even if the ↵Jason Merrill3-3/+13
initializer is dependent. * decl.c (cp_finish_decl): Check for invalid multiple initializers even if the initializer is dependent. From-SVN: r190826
2012-08-30pt.c (instantiate_template_1): Keep processing_template_decl set if there ↵Jason Merrill2-0/+9
are dependent args. * pt.c (instantiate_template_1): Keep processing_template_decl set if there are dependent args. From-SVN: r190825
2012-08-31Daily bump.GCC Administrator1-1/+1
From-SVN: r190822
2012-08-30re PR target/54252 (Bad alignment code generated for Neon loads)Ramana Radhakrishnan2-30/+48
Fix PR target/54252 2012-08-29 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> Richard Earnshaw <richard.earnshaw@arm.com> PR target/54252 * config/arm/arm.c (neon_dereference_pointer): Adjust nelems by element size. Use elem_type from the formal parameter. New parameter fcode. (neon_expand_args): Adjust call to neon_dereference_pointer. Co-Authored-By: Richard Earnshaw <rearnsha@arm.com> From-SVN: r190800
2012-08-30Daily bump.GCC Administrator1-1/+1
From-SVN: r190793
2012-08-29* cfg.c (dump_bb_info): Print a newline if there were no edges to dump.Steven Bosscher2-0/+8
From-SVN: r190786
2012-08-29revert: t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ↵Chung-Lin Tang2-9/+9
../lib/mips16. 2012-08-29 Chung-Lin Tang <cltang@codesourcery.com> Revert: * config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ../lib/mips16. (MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16. (MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32. From-SVN: r190785
2012-08-29mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci if TARGET_SYNCI.Richard Sandiford4-0/+18
gcc/ * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci if TARGET_SYNCI. gcc/testsuite/ * gcc.target/mips/mips.exp: Work out default -msynci setting. From-SVN: r190784
2012-08-29sh.opt (menable-tas): Rename to mtas.Oleg Endo4-6/+12
* config/sh/sh.opt (menable-tas): Rename to mtas. * doc/invoke.texi (SH options): Likewise. * config/sh/sync.md: Update comments. From-SVN: r190782
2012-08-29iterators.md: New file.Oleg Endo4-390/+298
* config/sh/iterators.md: New file. * config/sh/sync.md (I124, I12, i124suffix): Delete. Replace usage with new iterators QIHISI, QIHI, bw, bwl respectively throughout the file. * config/sh/sh.md: Include new file iterators.md. (zero_extendhisi2, zero_extendqisi2): Fold into zero_extend<mode>si2. (*zero_extendhisi2_compact, *zero_extendqisi2_compact): Fold into *zero_extend<mode>si2_compact. (*zero_extendqisi2_disp_mem, zero_extendhisi2_disp_mem): Fold into *zero_extend<mode>si2_disp_mem. (extendhisi2, extendqisi2): Fold into extend<mode>si2. (*extendqisi2_compact_reg, *extendhisi2_compact_reg): Fold into *extend<mode>si2_compact_reg. (*extendqisi2_compact_mem_disp, *extendhisi2_compact_mem_disp): Fold into *extend<mode>si2_compact_mem_disp. (*extendqisi2_compact_snd, *extendhisi2_compact_snd): Fold into *extend<mode>si2_compact_snd. (*movsi_index_disp, *movhi_index_disp): Fold with iterators and rename to *movsi_index_disp_load, *movhi_index_disp_load, *mov<mode>_index_disp_store. (*movqi_reg_reg, *movhi_reg_reg): Fold into *mov<mode>_reg_reg. (*movqi_store_mem_disp04, *movhi_store_mem_disp05): Fold into *mov<mode>_store_mem_disp04. (*movqi_store_mem_disp12, *movhi_store_mem_disp13): Fold into *mov<mode>_store_mem_disp12. (*movqi_load_mem_disp, *movhi_load_mem_disp): Fold into *mov<mode>_load_mem_disp04 and *mov<mode>_load_mem_disp12. From-SVN: r190781
2012-08-29ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not ↵Martin Jambor2-1/+6
do_estimate_edge_time. 2012-08-29 Martin Jambor <mjambor@suse.cz> * ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not do_estimate_edge_time. From-SVN: r190777
2012-08-29mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm directives, remove ↵Chung-Lin Tang3-3/+24
#ifndef __mips16 guards. 2012-08-29 Chung-Lin Tang <cltang@codesourcery.com> * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm directives, remove #ifndef __mips16 guards. * config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ../lib/mips16. (MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16. (MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32. From-SVN: r190774