aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-05-27sched-int.h (struct _haifa_deps_insn_data): New members cond and reverse_cond.Bernd Schmidt6-4/+94
* sched-int.h (struct _haifa_deps_insn_data): New members cond and reverse_cond. (INSN_COND, INSN_REVERSE_COND): New macros. * sched-deps.c (deps_analyze_insn): Call sched_get_condition_with_rev once. (sched_get_condition_with_rev): Cache the results, and look them up if possible. (sched_analyze_insn): Destroy INSN_COND of previous insns if they are clobbered by the current insn. * target.def (exposed_pipline): New sched data hook. * doc/tm.texi.in: TARGET_SCHED_EXPOSED_PIPELINE: Add hook. * doc/tm.texi: Regenerate. From-SVN: r174336
2011-05-27920711-1.x: Add -fwrapv.Richard Guenther2-0/+6
2011-05-27 Richard Guenther <rguenther@suse.de> * gcc.c-torture/execute/920711-1.x: Add -fwrapv. From-SVN: r174335
2011-05-27920612-1.x: Add -fwrapv.Richard Guenther2-0/+6
2011-05-27 Richard Guenther <rguenther@suse.de> * gcc.c-torture/execute/920612-1.x: Add -fwrapv. From-SVN: r174334
2011-05-27Index...Bill Schmidt2-0/+10
Index: gcc/ChangeLog =================================================================== --- gcc/ChangeLog (revision 174330) +++ gcc/ChangeLog (working copy) @@ -1,3 +1,9 @@ +2011-05-27 Bill Schmidt <wschmidt@linux.vnet.ibm.com> + + PR tree-optimization/49170 + * tree-ssa-math-opts.c (execute_cse_sincos): Add checks for + sincos or cexp. + 2011-05-27 Richard Guenther <rguenther@suse.de> PR middle-end/49189 Index: gcc/tree-ssa-math-opts.c =================================================================== --- gcc/tree-ssa-math-opts.c (revision 174330) +++ gcc/tree-ssa-math-opts.c (working copy) @@ -1093,6 +1093,10 @@ execute_cse_sincos (void) CASE_FLT_FN (BUILT_IN_COS): CASE_FLT_FN (BUILT_IN_SIN): CASE_FLT_FN (BUILT_IN_CEXPI): + /* Make sure we have either sincos or cexp. */ + if (!TARGET_HAS_SINCOS && !TARGET_C99_FUNCTIONS) + break; + arg = gimple_call_arg (stmt, 0); if (TREE_CODE (arg) == SSA_NAME) cfg_changed |= execute_cse_sincos_1 (arg); From-SVN: r174331
2011-05-27re PR middle-end/49189 (infinite recursion in constant folder)Richard Guenther5-7/+60
2011-05-27 Richard Guenther <rguenther@suse.de> PR middle-end/49189 * fold-const.c (fold_unary_loc): Do not re-fold folding conversions of comparisons. * gnat.dg/bit_packed_array5.adb: New testcase. * gnat.dg/bit_packed_array5.ads: Likewise. From-SVN: r174330
2011-05-27haifa-sched.c (sched_scan_info): Remove.Bernd Schmidt6-170/+137
* haifa-sched.c (sched_scan_info): Remove. (schedule_block): Call sched_extend_luids rather than sched_init_luids with NULL args. (extend_bb, init_bb, extend_insn, init_insn, init_insns_in_bb): Remove functions. (sched_scan): Remove. (sched_extend_luids): Renamed from luids_extend_insn and no longer static. All callers changed. (sched_init_insn_luid): Renamed from luids_init_insn and no longer static. All callers changed. (sched_init_luids): Remove all arguments except the first. All callers changed. Don't use sched_scan. (haifa_init_h_i_d): Likewise. (haifa_init_insn): Call sched_extend_luids and sched_init_insn_luid manually rather than using sched_init_luids. Likewise with extend_h_i_d, init_h_i_d and haifa_init_h_i_d. * sel-sched.c (sel_region_target_finish): Call sched_extend_luids rather than sched_init_luids with NULL args. * sel-sched-ir.c (new_insns): Remove variable. (sched_scan): New static function, previously in haifa-sched.c. Remove all arguments but the first two; all callers changed. (sel_init_new_insn): Call sched_extend_luids and sched_init_insn_luid rather than sched_init_luids. (sel_init_bbs): Remove second argument. All callers changed. (sel_add_bb): Call sched_extend_luids rather than sched_init_luids with NULL arguments. (create_insn_rtx_from_pattern): Likewise. * sel-sched-ir.h (sel_init_bbs): Adjust declaration. * sched-int.h (sched_init_luids, haifa_init_h_i_d): Likewise. (sched_init_insn_luid, sched_extend_luids): Declare. (sched_scan_info_def, sched_scan_info, sched_scan): Remove declarations. From-SVN: r174327
2011-05-27re PR middle-end/49177 (FAIL: gcc.dg/vect/fast-math-ifcvt-1.c)Richard Biener2-12/+29
2011-05-27 Richard Guenther <rguenther@suse.de> PR middle-end/49177 * fold-const.c (fold_unary_loc): Fold (T)(A CMP B) to A CMP B ? (T) true : (T) false for non-integral types T again. From-SVN: r174326
2011-05-27lto-streamer-out.c (lto_string_index): break out from...; offset by 1 so 0 ↵Jan Hubicka6-72/+253
means NULL string. * lto-streamer-out.c (lto_string_index): break out from...; offset by 1 so 0 means NULL string. (lto_output_string_with_length): ... here. (lto_output_string, output_string_cst, output_identifier): Update handling of NULL strings. (lto_output_location_bitpack): New function. (lto_output_location): Use it. (lto_output_tree_ref): Use output_record_start. (pack_ts_type_common_value_fields): Pack aliagn & alias set in var len values. * lto-streamer-in.c (string_for_index): Break out from ...; offset values by 1. (input_string_internal): ... here; (input_string_cst, input_identifier, lto_input_string): Update handling of NULL strings. (lto_input_location_bitpack): New function (lto_input_location): Use it. (unpack_ts_type_common_value_fields): Pack align & alias in var len values. * lto-streamer.h (bp_pack_val_len_unsigned, bp_pack_val_len_int, bp_unpack_val_len_unsigned, bp_unpack_val_len_int): Declare. (bp_pack_value): Sanity check the value range. * lto-section-in.c (bp_unpack_val_len_unsigned, bp_unpack_val_len_int): New functions. * lto-section-out.h (bp_pack_val_len_unsigned, bp_pack_val_len_int): New functions. From-SVN: r174325
2011-05-27picochip.c (reorder_var_tracking_notes): Drop call_arg_location instructions ↵Hariharan Sandanagobalane2-3/+15
down the floor. * config/picochip/picochip.c (reorder_var_tracking_notes): Drop call_arg_location instructions down the floor. From-SVN: r174322
2011-05-27re PR bootstrap/49173 (No rule to make target ↵Bernd Schmidt4-3/+11
`../../../../work/libgcc/../gcc/libgcc-std.ver', needed by `libgcc.map'.) PR bootstrap/49173 * config/t-slibgcc-darwin (SHLIB_MAPFILES): Look for libgcc-std.ver in the build directory. * config/s390/t-linux (SHLIB_MAPFILES): Likewise. * config/sh/t-linux (SHLIB_MAPFILES): Likewise. From-SVN: r174321
2011-05-27re PR c++/47721 ([C++0x] Updated friendship rules?)Jason Merrill7-9/+90
PR c++/47721 * parser.c (cp_parser_member_declaration): Allow friend T. * friend.c (make_friend_class): Ignore non-classes. * pt.c (instantiate_class_template_1): Handle TEMPLATE_TYPE_PARM. From-SVN: r174319
2011-05-27DR 1004Jason Merrill2-1/+7
DR 1004 * pt.c (convert_template_argument): Don't complain about using injected-class-name as template template argument. From-SVN: r174318
2011-05-27re PR c++/47956 ([C++0x] gcc accepts static data member declaration with ↵Jason Merrill9-23/+30
initializer for non-const literal type if type-specifier is auto) PR c++/47956 * decl.c (check_static_variable_definition): Now static. (cp_finish_decl): Call it here. (grokdeclarator): Not here. * pt.c (instantiate_class_template_1): Or here. * cp-tree.h: Don't declare it. From-SVN: r174317
2011-05-27Daily bump.GCC Administrator1-1/+1
From-SVN: r174315
2011-05-26* gcc.dg/march.c: Ignore a note for some targets.Janis Johnson2-0/+5
From-SVN: r174310
2011-05-26re PR rtl-optimization/49154 (build fails on cris-elf in libgcc: ICE in ↵Vladimir Makarov2-1/+12
setup_pressure_classes, at ira.c:902) 2011-05-26 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/49154 * ira.c (setup_pressure_classes): Process class without sublcasses as a candidate for pressure classes. From-SVN: r174309
2011-05-26detect C++ errors to fix 2288 and 18770Janis Johnson8-10/+231
detect C++ errors to fix 2288 and 18770 gcc/cp/ PR c++/2288 PR c++/18770 * name-lookup.h (enum scope_kind): Add sk_cond. * name-lookup.c (pushdecl_maybe_friend): Get scope of shadowed local. Detect and report error for redeclaration from for-init or if or switch condition. (begin_scope): Handle sk_cond. * semantics.c (begin_if_stmt): Use sk_cond. (begin switch_stmt): Ditto. gcc/testsuite/ PR c++/2288 PR c++/18770 * g++.old-deja/g++.jason/cond.C: Remove xfails. * g++.dg/parse/pr18770.C: New test. * g++.dg/cpp0x/range-for5.C: Add dg-error marker. Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com> From-SVN: r174307
2011-05-26re PR rtl-optimization/48575 (RTL vector patterns are limited to 26 elements)Richard Sandiford2-77/+204
gcc/ PR rtl-optimization/48575 * genrecog.c (position_type): New enum. (position): New structure. (decision): Use position structure instead of a string. (root_pos, peep2_insn_pos_list): New variables. (next_position, compare_positions): New functions. (new_decision): Use position structures instead of strings. (maybe_both_true): Likewise. (change_state): Likewise. (write_tree): Likewise. (make_insn_sequence): Likewise. From-SVN: r174305
2011-05-26re PR c++/48211 ([C++0x] Segment Fault When Compiling)Jason Merrill3-25/+11
PR c++/48211 * name-lookup.h (cp_class_binding): Make base a pointer. * name-lookup.c (new_class_binding): Adjust. (poplevel_class): Adjust. From-SVN: r174303
2011-05-26[multiple changes]Paul Thomas7-18/+76
2011-05-26 Paul Thomas <pault@gcc.gnu.org> Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/48955 * trans-expr.c (gfc_trans_assignment_1): GFC_REVERSE_NOT_SET changed to GFC_ENABLE_REVERSE. * trans-array.c (gfc_init_loopinfo): GFC_CANNOT_REVERSE changed to GFC_INHIBIT_REVERSE. * gfortran.h : Enum gfc_reverse is now GFC_ENABLE_REVERSE, GFC_FORWARD_SET, GFC_REVERSE_SET and GFC_INHIBIT_REVERSE. * dependency.c (gfc_dep_resolver): Change names for elements of gfc_reverse as necessary. Change the logic so that forward dependences are remembered as well as backward ones. When both have appeared, force a temporary. 2011-05-26 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/48955 * gfortran.dg/dependency_40.f90 : New test. From-SVN: r174302
2011-05-26re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])Tobias Burnus7-13/+264
2011-05-26 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * trans-array.c (gfc_conv_array_ref): Handle pointer coarrays. * trans-decl.c (has_coarray_vars, caf_init_block, gfor_fndecl_caf_register): New file-global variables. (gfc_finish_var_decl): Make sure that coarrays in main are static. (gfc_build_qualified_array): Generate coarray token variable. (gfc_get_symbol_decl): Don't use a static initializer for coarrays. (gfc_build_builtin_function_decls): Set gfor_fndecl_caf_register. (gfc_trans_deferred_vars, gfc_emit_parameter_debug_info): Skip for static coarrays. (generate_local_decl): Check for local coarrays. (create_main_function): SYNC ALL before calling MAIN. (generate_coarray_sym_init): Register static coarray. (generate_coarray_init): Generate CAF registering constructor function. (gfc_generate_function_code): Call it, if needed, do not create cgraph twice. (gfc_generate_module_vars, gfc_process_block_locals): Call generate_coarray_init. * trans-types.c (gfc_get_nodesc_array_type): Generate pointers * for -fcoarray=lib. * trans.h (gfor_fndecl_caf_register): New variable. (lang_type): New element caf_token. (GFC_TYPE_ARRAY_CAF_TOKEN): New macro. 2011-05-26 Tobias Burnus <burnus@net-b.de> PR fortran/18918 * gfortran.dg/coarray/registering_1.f90: New. From-SVN: r174301
2011-05-26make TS_BLOCK a substructure of TS_BASENathan Froyd8-12/+30
make TS_BLOCK a substructure of TS_BASE gcc/ * tree.c (initialize_tree_contains_struct): Mark TS_BLOCK as TS_BASE instead of TS_COMMON. (find_decls_types_r): Check for TS_TYPED structure before looking at TREE_TYPE. * tree.h (struct tree_block): Inherit from tree_base, not tree_common. Add chain field. (BLOCK_CHAIN): Use new chain field. gcc/c-family/ * c-common.c (warning_candidate_p): Check for BLOCKs. gcc/java/ * decl.c (poplevel): Don't access TREE_TYPE of BLOCKs. * expr.c (build_jni_stub): Likewise. From-SVN: r174300
2011-05-26lto.c (uniquify_nodes): Fix bug in one of the previous changes.Richard Guenther2-26/+33
2011-05-26 Richard Guenther <rguenther@suse.de> lto/ * lto.c (uniquify_nodes): Fix bug in one of the previous changes. From-SVN: r174296
2011-05-26list.cc: Use noexcept per the FDIS.Paolo Carlini35-522/+564
2011-05-26 Paolo Carlini <paolo.carlini@oracle.com> * src/list.cc: Use noexcept per the FDIS. * src/compatibility-list-2.cc: Likewise. * include/debug/set.h: Likewise. * include/debug/unordered_map: Likewise. * include/debug/multiset.h: Likewise. * include/debug/forward_list: Likewise. * include/debug/unordered_set: Likewise. * include/debug/vector: Likewise. * include/debug/map.h: Likewise. * include/debug/deque: Likewise. * include/debug/list: Likewise. * include/debug/multimap.h: Likewise. * include/profile/set.h: Likewise. * include/profile/unordered_map: Likewise. * include/profile/multiset.h: Likewise. * include/profile/forward_list: Likewise. * include/profile/vector: Likewise. * include/profile/unordered_set: Likewise. * include/profile/map.h: Likewise. * include/profile/deque: Likewise. * include/profile/list: Likewise. * include/profile/multimap.h: Likewise. * include/bits/hashtable.h: Likewise. * include/bits/stl_list.h: Likewise. * include/bits/stl_map.h: Likewise. * include/bits/hashtable_policy.h: Likewise. * include/bits/stl_set.h: Likewise. * include/bits/forward_list.h: Likewise. * include/bits/stl_multimap.h: Likewise. * include/bits/stl_vector.h: Likewise. * include/bits/stl_deque.h: Likewise. * include/bits/stl_multiset.h: Likewise. * include/bits/stl_bvector.h: Likewise. * include/bits/stl_tree.h: Likewise. From-SVN: r174295
2011-05-26rs6000.c (rs6000_register_move_cost): Make LR/CTR moves expensive on Power7 ↵Pat Haugen2-3/+9
also. * config/rs6000/rs6000.c (rs6000_register_move_cost): Make LR/CTR moves expensive on Power7 also. From-SVN: r174292
2011-05-26fold-const.c (fold_unary_loc): Remove bogus code.Richard Guenther2-15/+4
2011-05-26 Richard Guenther <rguenther@suse.de> * fold-const.c (fold_unary_loc): Remove bogus code. From-SVN: r174290
2011-05-26fix pr markerJason Merrill1-1/+1
From-SVN: r174288
2011-05-26make TS_IDENTIFIER be a substructure of TS_TYPEDNathan Froyd6-5/+18
make TS_IDENTIFIER be a substructure of TS_TYPED gcc/ * 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/ * c-common.h (struct c_common_identifier): Inherit from tree_typed, not tree_common. From-SVN: r174286
2011-05-26re PR c++/48424 (C++0x parameter packs expansion problem)Jason Merrill6-10/+59
PR c++/48424 * decl.c (grokparms): Function parameter packs don't need to go at the end. * pt.c (type_unification_real): But they aren't deduced otherwise. From-SVN: r174285
2011-05-26Makefile.in (srcdirify): Change order so that libgcc_objdir is substituted ↵Bernd Schmidt3-1927/+14
first. * Makefile.in (srcdirify): Change order so that libgcc_objdir is substituted first. * libgcc-std.ver: Delete file. From-SVN: r174284
2011-05-26re PR tree-optimization/48702 (optimization regression with gcc-4.6 on ↵Richard Guenther5-6/+70
x86_64-unknown-linux-gnu) 2011-05-26 Richard Guenther <rguenther@suse.de> PR tree-optimization/48702 * tree-ssa-address.c (create_mem_ref_raw): Create MEM_REFs only when we know the base address is within bounds. * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Do not assume the base address of TARGET_MEM_REFs is in bounds. * gcc.dg/torture/pr48702.c: New testcase. From-SVN: r174282
2011-05-26re PR target/49099 (sparc.c:‘sparc_solaris_elf_asm_named_section’ ↵Rainer Orth2-0/+8
declared ‘static’ but never defined) PR target/49099 * config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Wrap declaration in TARGET_SOLARIS. From-SVN: r174279
2011-05-26picochip.md (cbranchhi4): No :CC for match_operator.Hariharan Sandanagobalane2-10/+18
* config/picochip/picochip.md (cbranchhi4): No :CC for match_operator. The instruction is then expanded explicitly. (supported_compare): Callable instruction. (compare): Likewise. From-SVN: r174277
2011-05-26Fixed one of my last ChangeLog entriesNicola Pero1-1/+1
From-SVN: r174276
2011-05-26tree-prof.exp: Check for -fprofile-generate support.Rainer Orth8-16/+42
gcov-profile/48845 * g++.dg/tree-prof/tree-prof.exp: Check for -fprofile-generate support. * gcc.dg/matrix/matrix.exp: Likewise. * gcc.dg/tree-prof/tree-prof.exp: Likewise. * lib/target-supports-dg.exp (dg-require-profiling): Don't pass line number to check_profiling_available. * lib/target-supports.exp (check_profiling_available): Account for this. Require TLS runtime support with -fprofile-generate. * lib/profopt.exp (profopt-execute): Add TLS options for -fprofile-generate. * gcc.dg/pr47793.c: Add dg-require-profiling "-fprofile-generate". From-SVN: r174275
2011-05-26re PR c++/49165 (ICE on for-loop/throw combination)Jakub Jelinek4-2/+59
PR c++/49165 * gimplify.c (shortcut_cond_r): Don't special case COND_EXPRs if they have void type on one of their arms. * g++.dg/eh/cond5.C: New test. From-SVN: r174273
2011-05-26haifa-sched.c (schedule-block): Reorder the inner scheduling loop to reduce ↵Bernd Schmidt2-86/+68
duplication... * haifa-sched.c (schedule-block): Reorder the inner scheduling loop to reduce duplication, and to achieve a slightly more logical order of operations. From-SVN: r174271
2011-05-26re PR tree-optimization/49161 (Fix VRP on switch stmts)Jakub Jelinek4-24/+96
PR tree-optimization/49161 * tree-vrp.c (struct case_info): New type. (compare_case_labels): Sort case_info structs instead of trees, and not primarily by CASE_LABEL uids but by label_for_block indexes. (find_switch_asserts): Put case labels into struct case_info array instead of TREE_VEC, adjust sorting, compare label_for_block values instead of CASE_LABELs. * gcc.c-torture/execute/pr49161.c: New test. From-SVN: r174270
2011-05-26In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-132/+116
In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c: Reindented part of the file. No non-trivial changes in code. From-SVN: r174269
2011-05-26In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-1/+6
In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass, not objc_lookupClass. From-SVN: r174268
2011-05-26Remove conflict markerEric Botcazou1-2/+1
From-SVN: r174267
2011-05-26Fix generation of vorn and vbic for Neon.Ramana Radhakrishnan4-6/+37
From-SVN: r174266
2011-05-26re PR tree-optimization/49038 (-ftree-vectorise introduces reads past end of ↵Ira Rosen8-4/+232
array) PR tree-optimization/49038 * tree-vect-loop-manip.c (vect_generate_tmps_on_preheader): Ensure at least one epilogue iteration if required by data accesses with gaps. * tree-vectorizer.h (struct _loop_vec_info): Add new field to mark loops that require peeling for gaps. * tree-vect-loop.c (new_loop_vec_info): Initialize new field. (vect_get_known_peeling_cost): Take peeling for gaps into account. (vect_transform_loop): Generate epilogue if required by data access with gaps. * tree-vect-data-refs.c (vect_analyze_group_access): Mark the loop as requiring an epilogue if there are gaps in the end of the strided group. From-SVN: r174265
2011-05-26Adjust gcc/testsuite/ChangeLogFabien Chêne1-1/+0
From-SVN: r174264
2011-05-26pr25811-2.C: New.Fabien Chêne3-0/+81
2011-05-26 Fabien Chene <fabien@gcc.gnu.org> * g++.dg/init/pr25811-2.C: New. * g++.dg/init/pr25811-3.C: New. * g++.dg/init/pr25811-4.C: New. From-SVN: r174263
2011-05-26godump.c (go_format_type): Output the first field with a usable Go type, if any.Ian Lance Taylor2-6/+46
* godump.c (go_format_type): Output the first field with a usable Go type, if any. From-SVN: r174262
2011-05-25fix pr markerJason Merrill1-1/+1
From-SVN: r174259
2011-05-25re PR c++/48536 ([C++0x] Automatic Enumerator Incrementation is not ↵Jason Merrill5-7/+61
compliant with Clause 7.2/5) PR c++/48536 * decl.c (build_enumerator): If incremented enumerator won't fit in previous integral type, find one it will fit in. From-SVN: r174258
2011-05-25re PR c++/48599 ([C++0x] no diagnostic for invalid use of auto with array ↵Jason Merrill4-0/+16
declarator) PR c++/48599 * decl.c (create_array_type_for_decl): Complain about array of auto. From-SVN: r174257
2011-05-25re PR c++/49156 ([C++0x] Error reporting routines re-entered)Jason Merrill4-0/+34
PR c++/49156 * error.c (dump_template_bindings): Set processing_template_decl for a partial instantiation. From-SVN: r174256