summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* 2014-02-05 Richard Biener <rguenther@suse.de>rguenth2014-02-052-4/+10
| | | | | | | | | PR testsuite/60076 * gcc.dg/vect/pr60012.c: Require vect_extract_even_odd and avoid using unsigned long long. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207509 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>krebbel2014-02-058-1/+30
| | | | | | | | | | | | | | * config.host: Include t-floattodi also for s390x. * config/s390/32/_fixdfdi.c: Omit in 64 bit mode. * config/s390/32/_fixsfdi.c: Likewise. * config/s390/32/_fixtfdi.c: Likewise. * config/s390/32/_fixunsdfdi.c: Likewise. * config/s390/32/_fixunssfdi.c: Likewise. * config/s390/32/_fixunstfdi.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207507 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/57499jakub2014-02-054-3/+31
| | | | | | | | | | * tree-eh.c (cleanup_empty_eh): Bail out on totally empty bb with no successors. * g++.dg/torture/pr57499.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207504 138bc75d-0d04-0410-961f-82ee72b054a4
* [ARM Documentation] Clarify -mcpu, -mtune, -marchjgreenhalgh2014-02-052-43/+53
| | | | | | | | | | | | | | gcc/ PR target/59718 * doc/invoke.texi (-march=): Clarify documentation for ARM. (-mtune=): Likewise. (-mcpu=): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207501 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-05 Richard Biener <rguenther@suse.de>rguenth2014-02-053-12/+33
| | | | | | | | | | * tree-vect-loop.c (vect_analyze_loop_2): Be more informative when not vectorizing because of too many alias checks. * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list): Add more verboseness, avoid duplicate MSG_MISSED_OPTIMIZATION. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207499 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/mn10300/mn10300.c (mn10300_hard_regno_mode_ok): Do notnickc2014-02-052-3/+10
| | | | | | | | accept extended registers in any mode when compiling for the MN10300. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207498 138bc75d-0d04-0410-961f-82ee72b054a4
* PR sanitizer/59600ygribov2014-02-055-1/+98
| | | | | | | | | | | | | | | gcc/ * cif-code.def (ATTRIBUTE_MISMATCH): New CIF code. * ipa-inline.c (report_inline_failed_reason): Handle mismatched sanitization attributes. (can_inline_edge_p): Likewise. (sanitize_attrs_match_for_inline_p): New function. gcc/testsuite/ * gcc.dg/asan/nosanitize-and-inline.c: : New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207497 138bc75d-0d04-0410-961f-82ee72b054a4
* * ipa-prop.c (detect_type_change): Shor circuit testing ofhubicka2014-02-054-1/+23
| | | | | | | | | type changes on THIS pointer. * g++.dg/ipa/devirrt-22.C: Fix template. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207495 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/59777danglin2014-02-053-10/+27
| | | | | | | | | | | | | | | * config/pa/pa.c (legitimize_tls_address): Return original address if not passed a SYMBOL_REF rtx. (hppa_legitimize_address): Call legitimize_tls_address for all TLS addresses. (pa_emit_move_sequence): Simplify TLS source operands. (pa_legitimate_constant_p): Reject all TLS constants. * config/pa/pa.h (PA_SYMBOL_REF_TLS_P): Correct comment. (CONSTANT_ADDRESS_P): Reject TLS CONST addresses. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207493 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2014-02-051-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207492 138bc75d-0d04-0410-961f-82ee72b054a4
* * ipa.c (function_and_variable_visibility): Decompose DECL_ONE_ONLYhubicka2014-02-045-5/+49
| | | | | | | | | | | | groups when we know they are controlled by LTO. * varasm.c (default_binds_local_p_1): If object is in other partition, it will be resolved locally. * lto-partition.c (get_symbol_class): Only unforced DECL_ONE_ONLY needs duplicating, not generic COMDAT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207489 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Bernd Edlinger <bernd.edlinger@hotmail.de>edlinger2014-02-042-1/+6
| | | | | | | | * gcc/config/host-linux.c (linux_gt_pch_use_address): Don't use SSIZE_MAX because it is not always defined. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207488 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Vladimir Makarov <vmakarov@redhat.com>vmakarov2014-02-042-10/+45
| | | | | | | | | | | | | | | | PR bootstrap/59913 * lra-constraints.c (need_for_split_p): Use more 3 reloads as threshold for pseudo splitting. (update_ebb_live_info): Process call argument hard registers and hard registers from insn definition too. (max_small_class_regs_num): New constant. (inherit_in_ebb): Update live hard regs through EBBs. Update reloads_num only for small register classes. Don't split for outputs of jumps. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207485 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/60036mpolacek2014-02-044-0/+47
| | | | | | | | | | | c-family/ * c-common.c (conversion_warning): Unwrap C_MAYBE_CONST_EXPR and/or SAVE_EXPR. testsuite/ * gcc.dg/pr60036.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207481 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ipa/60058hubicka2014-02-044-12/+56
| | | | | | | | | * ipa-cp.c (ipa_get_indirect_edge_target_1): Check that target is non-null. * g++.dg/torture/pr60058.C: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207478 138bc75d-0d04-0410-961f-82ee72b054a4
* * gimple-fold.c (can_refer_decl_in_current_unit_p): Default visibility is safe.hubicka2014-02-041-0/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207477 138bc75d-0d04-0410-961f-82ee72b054a4
* * gdbinit.in (pel): Define.mpolacek2014-02-042-0/+13
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207474 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Bernd Edlinger <bernd.edlinger@hotmail.de>edlinger2014-02-042-0/+9
| | | | | | | | * doc/invoke.texi (fstrict-volatile-bitfields): Clarify current behavior. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207473 138bc75d-0d04-0410-961f-82ee72b054a4
* * g++.dg/tsan/default_options.C: Invert check.chefmax2014-02-042-2/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207472 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Richard Biener <rguenther@suse.de>rguenth2014-02-045-37/+30
| | | | | | | | | | | | | | | | PR lto/59723 * lto-streamer-out.c (tree_is_indexable): Force NAMELIST_DECLs in function context local. (lto_output_tree_ref): Do not write trees from lto_output_tree_ref. * lto-streamer-in.c (lto_input_tree_ref): Handle LTO_namelist_decl_ref similar to LTO_imported_decl_ref. lto/ * lto.c (mentions_vars_p): Handle NAMELIST_DECL. (lto_fixup_prevailing_decls): Handle fixing up CONSTRUCTOR values. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207471 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Robert Dewar <dewar@adacore.com>charlet2014-02-045-3/+13
| | | | | | | | * exp_ch5.adb, einfo.ads, freeze.adb, sem_ch8.adb: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207470 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Gary Dismukes <dismukes@adacore.com>charlet2014-02-047-16/+61
| | | | | | | | | | | | | | | | | | | | | | | | | * sem_aggr.adb: Change "runtime" to "run time" in warning message, for consistency with other messages. 2014-02-04 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_Iterator_Loop): For a container element iterator, indicate that the element is a constant if the container type does not have a variable indexing aspect. * sem_ch8.adb (Analyze_Object_Renaming): If the entity is already marked as constant, do not reset its Ekind, to ensure that container elements in an element loop are not modified if the container (e.g. a hashed set) only has a constant indexing aspect. 2014-02-04 Arnaud Charlet <charlet@adacore.com> * g-souinf.ads: Subprograms in this unit are actually not pure. * freeze.adb (Freeze_Subprogram): Do not reset Is_Pure for Intrinsics. * einfo.ads (Is_Pure): Update doc to match implementation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207469 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Gary Dismukes <dismukes@adacore.com>charlet2014-02-045-13/+58
| | | | | | | | | | | | | | | | | | | | | | | * exp_ch13.adb: Minor spelling fix. 2014-02-04 Robert Dewar <dewar@adacore.com> * opt.ads: Minor comment update. 2014-02-04 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Expression_With_Actions): Use Rewrite instead of Replace. 2014-02-04 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb (Resolve_Array_Aggregate): Suppress warnings on null expressions if component type is non-null, when the corresponding association covers an empty range of index values. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207468 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Robert Dewar <dewar@adacore.com>charlet2014-02-045-364/+527
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sinfo.ads: Further comments on N_Expression_With_Actions node. 2014-02-04 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Refined_Depends_In_Decl_Part): Remove global variables Out_Items and Ref_Global. Remove local constant Body_Id along with dummy variables D1, D2, D3, D4, D5, D6, D7 and D8. Remove the useless collection of global items as this was a leftover from an earlier version of the routine. Move several routines out to avoid deep nesting and indentation. (Inputs_Match): Add formal parameter Dep_Clause. Rename formal parameter Do_Checks to Post_Errors. Update the comment on usage. (Is_Matching_Input): Renamed to Input_Match. Add formal parameters Ref_Inputs and Do_Checks. Rename formal parameter Do_Checks to Post_Errors. Update the comment on usage. Account for the case where a self referential state may have a null input_list. (Is_Self_Referential): New routine. 2014-02-04 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the entity renames an expression, as in the case of an object of an unconstrained type initialized by a function call, defer the rewriting of the expression to the expander. * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case 'Alignment): If the entity renames an expression, introduce temporary to capture value, and rewrite original declaration to use temporary. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207467 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Gary Dismukes <dismukes@adacore.com>charlet2014-02-046-12/+48
| | | | | | | | | | | | | | | | | | | | | | | | | * g-comlin.adb: Minor typo fix. 2014-02-04 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Freeze_All): Types derived from a formal access_to_classwide type do not have a finalization master. 2014-02-04 Robert Dewar <dewar@adacore.com> * sprint.adb: Minor reformatting. 2014-02-04 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Expression_With_Actions): Eliminate cases where Actions is a null list. * sinfo.ads (N_Expression_With_Actions): Actions can be temporarily empty during semantic analysis, but must be non-empty in the final expanded tree. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207466 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/60002jakub2014-02-044-0/+22
| | | | | | | | | | * cgraphclones.c (build_function_decl_skip_args): Clear DECL_LANG_SPECIFIC. * g++.dg/opt/pr60002.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207465 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/60023jakub2014-02-047-1/+105
| | | | | | | | | | | | | | | | * tree-if-conv.c (predicate_mem_writes): Pass true instead of false to gsi_replace. * tree-vect-stmts.c (vect_finish_stmt_generation): If stmt has been in some EH region and vec_stmt could throw, add vec_stmt into the same EH region. * tree-data-ref.c (get_references_in_stmt): If IFN_MASK_LOAD has no lhs, ignore it. * internal-fn.c (expand_MASK_LOAD): Likewise. * g++.dg/vect/pr60023.cc: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207464 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ipa/60026jakub2014-02-044-0/+47
| | | | | | | | | | * tree-inline.c (copy_forbidden): Fail for __attribute__((optimize (0))) functions. * c-c++-common/torture/pr60026.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207463 138bc75d-0d04-0410-961f-82ee72b054a4
* PR other/58712jakub2014-02-042-1/+2
| | | | | | | | | | * omp-low.c (simd_clone_struct_copy): If from->inbranch is set, copy one less argument. (expand_simd_clones): Don't subtract clone_info->inbranch from simd_clone_struct_alloc argument. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207462 138bc75d-0d04-0410-961f-82ee72b054a4
* PR other/58712jakub2014-02-042-1/+6
| | | | | | | | * omp-low.c (simd_clone_struct_copy): If from->inbranch is set, copy one less argument. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207461 138bc75d-0d04-0410-961f-82ee72b054a4
* PR rtl-optimization/57915jakub2014-02-044-1/+72
| | | | | | | | | | * recog.c (simplify_while_replacing): If all unary/binary/relational operation arguments are constant, attempt to simplify those. * gcc.target/i386/pr57915.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207460 138bc75d-0d04-0410-961f-82ee72b054a4
* PR sanitizer/60055jakub2014-02-043-1/+8
| | | | | | | | | * tsan/tsan_flags.cc (__tsan_default_options): Add SANITIZER_INTERFACE_ATTRIBUTE. Backport from upstream r200747. * tsan/tsan_rtl.cc (__tsan::OnFinalize): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207459 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix g++.dg/init/dso_handle2.C on Solarisro2014-02-042-0/+5
| | | | | | * g++.dg/init/dso_handle2.C: Compile with -fuse-cxa-atexit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207458 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.target/arm/ftest-armv7a-thumb.c: Change aramv7-a to armv7-a.ktkachov2014-02-042-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207457 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/59261jakub2014-02-044-0/+36
| | | | | | | | | | * expmed.c (expand_mult): For MODE_VECTOR_INT multiplication if there is no vashl<mode>3 or ashl<mode>3 insn, skip_synth. * gcc.dg/pr59261.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207456 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-04 Richard Biener <rguenther@suse.de>rguenth2014-02-044-0/+44
| | | | | | | | | | | PR tree-optimization/60012 * tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Apply TBAA disambiguation to all DDRs. * gcc.dg/vect/pr60012.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207455 138bc75d-0d04-0410-961f-82ee72b054a4
* Ensure libgcc_s unwinder is always used on 64-bit Solaris 10+/x86 (PR ↵ro2014-02-048-2/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | target/59788) gcc: PR target/59788 * config/sol2.h (LINK_LIBGCC_MAPFILE_SPEC): Define. (LINK_SPEC): Use it for -shared, -shared-libgcc. libgcc: PR target/59788 * config/t-slibgcc-sld (libgcc-unwind.map): New target. (install-libgcc-unwind-map-forbuild): New target. (all): Depend on install-libgcc-unwind-map-forbuild. (install-libgcc-unwind-map): New target. (install): Depend on install-libgcc-unwind-map. gcc/testsuite: PR target/59788 * g++.dg/eh/unwind-direct.C: New test. toplevel: PR target/59788 * ltmain.sh (opt_duplicate_compiler_generated_deps): Enable on *solaris2*. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207454 138bc75d-0d04-0410-961f-82ee72b054a4
* * lib/tsan-dg.exp (tsan_init): Set trivial testcaseuros2014-02-042-1/+11
| | | | | | | | timeout value to 20s. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207453 138bc75d-0d04-0410-961f-82ee72b054a4
* PR sanitizer/60038jakub2014-02-042-9/+49
| | | | | | | | | | | | | | | * sanitizer_common/sanitizer_linux_libcdep.cc: Include sanitizer_atomic.h and unistd.h. (kThreadDescriptorSize): Made static, remove initializer and const, change type to atomic_uintptr_t. (ThreadDescriptorSize): Use confstr(_CS_GNU_LIBC_VERSION, ...) to query glibc version, compute kThreadDescriptorSize depending on glibc version minor number. (GetThreadStackAndTls): Use ThreadDescriptorSize() instead of kThreadDescriptorSize directly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207452 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ipa/59882hubicka2014-02-044-14/+59
| | | | | | | | * tree.c (get_binfo_at_offset): Do not get confused by empty classes; * g++.dg/torture/pr59882.C: New testcase git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207451 138bc75d-0d04-0410-961f-82ee72b054a4
* * gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Remove.hubicka2014-02-043-69/+5
| | | | | | | * gimple-fold.h (gimple_extract_devirt_binfo_from_cst): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207450 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ipa/59469hubicka2014-02-042-0/+13
| | | | | | | | * lto-symtab.c (lto_cgraph_replace_node, lto_varpool_replace_node): merge force_output and forced_by_abi flags. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207449 138bc75d-0d04-0410-961f-82ee72b054a4
* * ipa-cp.c (ipa_get_indirect_edge_target_1): Do directhubicka2014-02-047-25/+160
| | | | | | | | | | | | | | lookup via vtable pointer; check for type consistency and turn inconsitent facts into UNREACHABLE. * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise. * gimple-fold.c (gimple_get_virt_method_for_vtable): Do not ICE on type inconsistent querries; return UNREACHABLE instead. * testsuite/g++.dg/ipa/devirt-25.C: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207448 138bc75d-0d04-0410-961f-82ee72b054a4
* * ipa-cp.c (ipa_get_indirect_edge_target_1): Do directhubicka2014-02-046-23/+118
| | | | | | | | | | | | | | lookup via vtable pointer; check for type consistency and turn inconsitent facts into UNREACHABLE. * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise. * gimple-fold.c (gimple_get_virt_method_for_vtable): Do not ICE on type inconsistent querries; return UNREACHABLE instead. * g++.dg/ipa/devirt-25.C: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207447 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/59924jakub2014-02-042-0/+32
| | | | | | | * gcc.dg/pr59924.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207446 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2014-02-041-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207445 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-opt/59924rth2014-02-032-37/+59
| | | | | | | | | | * tree-ssa-uninit.c (push_to_worklist): Don't re-push if we've already processed this node. (normalize_one_pred_1): Pass along mark_set. (normalize_one_pred): Create and destroy a pointer_set_t. (normalize_one_pred_chain): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207442 138bc75d-0d04-0410-961f-82ee72b054a4
* PR gcov-profile/58602law2014-02-032-2/+13
| | | | | | * gcc/gcov-io.c (gcov_open): Open with truncation when mode<0 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207441 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ipa/59831hubicka2014-02-039-62/+241
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * g++.dg/ipa/devirt-24.C: New testcase. * ipa-cp.c (ipa_get_indirect_edge_target_1): Give up on -fno-devirtualize; Try to devirtualize by the knowledge of virtual table pointer given by aggregate propagation. * ipa-prop.c (try_make_edge_direct_virtual_call): Likewise. ipa_print_node_jump_functions): Dump also offset that is relevant for polymorphic calls. (determine_known_aggregate_parts): Add arg_type parameter; use it instead of determining the type from pointer type. (ipa_compute_jump_functions_for_edge): Update call of determine_known_aggregate_parts. * gimple-fold.c (gimple_get_virt_method_for_vtable): Break out from ... (gimple_get_virt_method_for_binfo): ... here; simplify using vtable_pointer_value_to_vtable. * gimple-fold.h (gimple_get_virt_method_for_vtable): Declare. * ipa-devirt.c (subbinfo_with_vtable_at_offset): Turn OFFSET parameter to unsigned HOST_WIDE_INT; Use vtable_pointer_value_to_vtable. (vtable_pointer_value_to_vtable): Break out from ...; handle also POINTER_PLUS_EXPR. (vtable_pointer_value_to_binfo): ... here. * ipa-utils.h (vtable_pointer_value_to_vtable): Declare. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207439 138bc75d-0d04-0410-961f-82ee72b054a4
* 2014-02-03 Teresa Johnson <tejohnson@google.com>tejohnson2014-02-032-2/+7
| | | | | | | | | * tree-vect-slp.c (vect_supported_load_permutation_p): Avoid redef of outer loop index variable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207437 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud