- 28 Jul, 2017 21 commits
-
-
gcc/testsuite * gcc.dg/vect/pr80815-3.c: Require vect_perm. From-SVN: r250676
Bin Cheng committed -
* fileline.c (fileline_initialize): Print pid_t as long. From-SVN: r250675
Rainer Orth committed -
2017-07-28 Tamar Christina <tamar.christina@arm.com> Bilyan Borisov <bilyan.borisov@arm.com> * gcc.target/aarch64/dbl_mov_immediate_1.c: New. * gcc.target/aarch64/flt_mov_immediate_1.c: New. * gcc.target/aarch64/f16_mov_immediate_1.c: New. * gcc.target/aarch64/f16_mov_immediate_2.c: New. * gcc.target/aarch64/pr63304_1.c: Changed to double. Co-Authored-By: Bilyan Borisov <bilyan.borisov@arm.com> From-SVN: r250674
Tamar Christina committed -
2017-07-28 Tamar Christina <tamar.christina@arm.com> Richard Sandiford <richard.sandiford@linaro.org> * config/aarch64/aarch64.md (mov<mode>): Generalize. (*movhf_aarch64, *movsf_aarch64, *movdf_aarch64): Add integer and movi cases. (movi-split-hf-df-sf split, fp16): New. (enabled): Added TARGET_FP_F16INST. * config/aarch64/iterators.md (GPF_HF): New. * config/aarch64/predicates.md (aarch64_reg_or_fp_float): New. Co-Authored-By: Richard Sandiford <richard.sandiford@linaro.org> From-SVN: r250673
Tamar Christina committed -
* config/aarch64/aarch64.c (aarch64_simd_container_mode): Add prototype. (aarch64_expand_mov_immediate): Add HI support. (aarch64_reinterpret_float_as_int, aarch64_float_const_rtx_p: New. (aarch64_can_const_movi_rtx_p): New. (aarch64_preferred_reload_class): Remove restrictions of using FP registers for certain SIMD operations. (aarch64_rtx_costs): Added new cost for CONST_DOUBLE moves. (aarch64_valid_floating_const): Add integer move validation. (aarch64_simd_imm_scalar_p): Remove. (aarch64_output_scalar_simd_mov_immediate): Generalize function. (aarch64_legitimate_constant_p): Expand list of supported cases. * config/aarch64/aarch64-protos.h (aarch64_float_const_rtx_p, aarch64_can_const_movi_rtx_p): New. (aarch64_reinterpret_float_as_int): New. (aarch64_simd_imm_scalar_p): Remove. * config/aarch64/constraints.md (Uvi): New. (Dd): Split into Ds and new Dd. * config/aarch64/aarch64.md (*movsi_aarch64): Add SIMD mov case. (*movdi_aarch64): Add SIMD mov case. From-SVN: r250672
Tamar Christina committed -
* tree-predcom.c: (struct chain): Handle store-store chain in which stores for elimination only store loop invariant values. (execute_pred_commoning_chain): Ditto. (prepare_initializers_chain_store_elim): Ditto. (prepare_finalizers): Ditto. (is_inv_store_elimination_chain): New function. (initialize_root_vars_store_elim_1): New function. From-SVN: r250670
Bin Cheng committed -
* tree-predcom.c: Revise general description of the pass. (enum chain_type): New enum type for store elimination. (struct chain): New field supporting store elimination. (struct component): Ditto. (dump_chain): Dump store-stores chain. (release_chain): Release resources. (split_data_refs_to_components): Compute and create component contains only stores for elimination. (get_chain_last_ref_at): New function. (make_invariant_chain): Initialization. (make_rooted_chain): Specify chain type in parameter and record it. (add_looparound_copies): Skip for store-stores chain. (determine_roots_comp): Compute type of chain and pass it to make_rooted_chain. (initialize_root_vars_store_elim_2): New function. (finalize_eliminated_stores): New function. (remove_stmt): Handle store for elimination. (execute_pred_commoning_chain): Execute predictive commoning on store-store chains. (determine_unroll_factor): Skip unroll for store-stores chain. (prepare_initializers_chain_store_elim): New function. (prepare_initializers_chain): Hanlde store-store chain. (prepare_finalizers_chain, prepare_finalizers): New function. (tree_predictive_commoning_loop): Return integer value indicating if loop is unrolled or lcssa form is corrupted. (tree_predictive_commoning): Rewrite for lcssa form if necessary. gcc/testsuite * gcc.dg/tree-ssa/predcom-dse-1.c: New test. * gcc.dg/tree-ssa/predcom-dse-2.c: New test. * gcc.dg/tree-ssa/predcom-dse-3.c: New test. * gcc.dg/tree-ssa/predcom-dse-4.c: New test. * gcc.dg/tree-ssa/predcom-dse-5.c: New test. * gcc.dg/tree-ssa/predcom-dse-6.c: New test. * gcc.dg/tree-ssa/predcom-dse-7.c: New test. * gcc.dg/tree-ssa/predcom-dse-8.c: New test. * gcc.dg/tree-ssa/predcom-dse-9.c: New test. * gcc.dg/tree-ssa/predcom-dse-10.c: New test. * gcc.dg/tree-ssa/predcom-dse-11.c: New test. From-SVN: r250669
Bin Cheng committed -
* tree-predcom.c (initialize_root): Delete. (execute_pred_commoning_chain): Initialize root vars and replace reference of non-combined chain directly, rather than call above function. From-SVN: r250668
Bin Cheng committed -
* tree-predcom.c (ref_at_iteration): Add parameter NITERS. Compute memory reference to DR at (NITERS + ITERS)-th iteration of loop. From-SVN: r250667
Bin Cheng committed -
* tree-predcom.c (struct chain): New field init_seq. (release_chain): Release init_seq. (prepare_initializers_chain): Record intialization stmts in above field. (insert_init_seqs): New function. (tree_predictive_commoning_loop): Call insert_init_seqs. From-SVN: r250666
Bin Cheng committed -
From-SVN: r250665
Bin Cheng committed -
2017-07-28 Richard Biener <rguenther@suse.de> * match.pd: Remove superfluous :c. * genmatch.c (simplify::id): Add member. (lower_commutative, lower_opt_convert, lower_cond, lower_for): Copy id. (current_id): New global. (dt_node::parent): Move from ... (dt_operand::parent): ... here. Add for_id member. (is_a_helper <dt_operand *>::test): DT_TRUE is also a dt_operand. (decision_tree::find_node): Relax order requirement when merging DT_TRUE nodes to ones inbetween the current simplify and the one we try to merge with. Add diagnostic whenever we need to enforce pattern order by not merging. (decision_tree::insert): Set current_id. (decision_tree::print_node): Dump parent node and for_id. (parser::last_id): Add member. (parser::push_simplify): Assign unique id. (parser::parser): Initialize last_id. From-SVN: r250664
Richard Biener committed -
2017-07-28 Martin Liska <mliska@suse.cz> PR sanitizer/81340 * sanopt.c (sanitize_rewrite_addressable_params): Set VALUE_EXPR after gimple_build_debug_bind. 2017-07-28 Martin Liska <mliska@suse.cz> PR sanitizer/81340 * g++.dg/asan/pr81340.C: New test. From-SVN: r250660
Martin Liska committed -
re PR middle-end/81502 (In some cases the data is moved to memory unnecessarily [partial regression]) 2017-07-28 Richard Biener <rguenther@suse.de> PR tree-optimization/81502 * match.pd: Add pattern combining BIT_INSERT_EXPR with BIT_FIELD_REF. * tree-cfg.c (verify_expr): Verify types of BIT_FIELD_REF size/pos operands. (verify_gimple_assign_ternary): Likewise for BIT_INSERT_EXPR pos. * gimple-fold.c (maybe_canonicalize_mem_ref_addr): Use bitsizetype for BIT_FIELD_REF args. * fold-const.c (make_bit_field_ref): Likewise. * tree-vect-stmts.c (vectorizable_simd_clone_call): Likewise. * gcc.target/i386/pr81502.c: New testcase. From-SVN: r250659
Richard Biener committed -
PR sanitizer/80998 * sanopt.c (pass_sanopt::execute): Handle IFN_UBSAN_PTR. * tree-ssa-alias.c (call_may_clobber_ref_p_1): Likewise. * flag-types.h (enum sanitize_code): Add SANITIZER_POINTER_OVERFLOW. Or it into SANITIZER_UNDEFINED. * ubsan.c: Include gimple-fold.h and varasm.h. (ubsan_expand_ptr_ifn): New function. (instrument_pointer_overflow): New function. (maybe_instrument_pointer_overflow): New function. (instrument_object_size): Formatting fix. (pass_ubsan::execute): Call instrument_pointer_overflow and maybe_instrument_pointer_overflow. * internal-fn.c (expand_UBSAN_PTR): New function. * ubsan.h (ubsan_expand_ptr_ifn): Declare. * sanitizer.def (__ubsan_handle_pointer_overflow, __ubsan_handle_pointer_overflow_abort): New builtins. * tree-ssa-tail-merge.c (merge_stmts_p): Handle IFN_UBSAN_PTR. * internal-fn.def (UBSAN_PTR): New internal function. * opts.c (sanitizer_opts): Add pointer-overflow. * lto-streamer-in.c (input_function): Handle IFN_UBSAN_PTR. * fold-const.c (build_range_check): Compute pointer range check in integral type if pointer arithmetics would be needed. Formatting fixes. gcc/testsuite/ * c-c++-common/ubsan/ptr-overflow-1.c: New test. * c-c++-common/ubsan/ptr-overflow-2.c: New test. libsanitizer/ * ubsan/ubsan_handlers.cc: Cherry-pick upstream r304461. * ubsan/ubsan_checks.inc: Likewise. * ubsan/ubsan_handlers.h: Likewise. From-SVN: r250656
Jakub Jelinek committed -
2017-07-28 Martin Liska <mliska@suse.cz> PR sanitizer/81460 * sanopt.c (sanitize_rewrite_addressable_params): Do not rewrite parameters that are of a variable-length. 2017-07-28 Martin Liska <mliska@suse.cz> PR sanitizer/81460 * gcc.dg/asan/pr81460.c: New test. From-SVN: r250655
Martin Liska committed -
Add 64-bit support for RTEMS using the ELFv2 ABI with 64-bit long double. gcc/ * config.gcc (powerpc-*-rtems*): Remove rs6000/eabi.h. Add rs6000/biarch64.h. * config/rs6000/rtems.h (ASM_DECLARE_FUNCTION_SIZE): New macro. (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Likewise. (CRT_CALL_STATIC_FUNCTION): Likewise. (ASM_DEFAULT_SPEC): New define. (ASM_SPEC32): Likewise. (ASM_SPEC64): Likewise. (ASM_SPEC_COMMON): Likewise. (ASM_SPEC): Likewise. (INVALID_64BIT): Likewise. (LINK_OS_DEFAULT_SPEC): Likewise. (LINK_OS_SPEC32): Likewise. (LINK_OS_SPEC64): Likewise. (POWERPC_LINUX): Likewise. (PTRDIFF_TYPE): Likewise. (RESTORE_FP_PREFIX): Likewise. (RESTORE_FP_SUFFIX): Likewise. (SAVE_FP_PREFIX): Likewise. (SAVE_FP_SUFFIX): Likewise. (SIZE_TYPE): Likewise. (SUBSUBTARGET_OVERRIDE_OPTIONS): Likewise. (TARGET_64BIT): Likewise. (TARGET_64BIT): Likewise. (TARGET_AIX): Likewise. (WCHAR_TYPE_SIZE): Likewise. (WCHAR_TYPE): Undefine. (TARGET_OS_CPP_BUILTINS): Add 64-bit PowerPC defines. (CPP_OS_DEFAULT_SPEC): Use previous CPP_OS_RTEMS_SPEC. (CPP_OS_RTEMS_SPEC): Delete. (SUBSUBTARGET_EXTRA_SPECS): Remove cpp_os_rtems. Add asm_spec_common, asm_spec32, asm_spec64, link_os_spec32, and link_os_spec64. * config/rs6000/t-rtems: Add mcpu=e6500/m64 multilibs. libgcc/ * config/rs6000/ibm-ldouble.c: Disable if defined __rtems__. From-SVN: r250652
Sebastian Huber committed -
PR tree-optimization/81578 * tree-parloops.c (build_new_reduction): Bail out if reduction_code isn't one of the standard OpenMP reductions. Move the details printing after that decision. * gcc.dg/pr81578.c: New test. From-SVN: r250651
Jakub Jelinek committed -
2017-07-28 Richard Biener <rguenther@suse.de> PR tree-optimization/81573 * gcc.dg/torture/pr81573.c: Explicitely use signed char. From-SVN: r250650
Richard Biener committed -
* go-backend.c (go_write_export_data): Use EXCLUDE section for AIX. From-SVN: r250648
Tony Reix committed -
From-SVN: r250647
GCC Administrator committed
-
- 27 Jul, 2017 19 commits
-
-
* config/rs6000/predicates.md (volatile_mem_operand): Remove code related to reload_in_progress. (splat_input_operand): Likewise. * config/rs6000/rs6000-protos.h (rs6000_secondary_memory_needed_rtx): Delete prototype. * config/rs6000/rs6000.c (machine_function): Remove sdmode_stack_slot field. (TARGET_EXPAND_TO_RTL_HOOK): Delete. (TARGET_INSTANTIATE_DECLS): Likewise. (legitimate_indexed_address_p): Delete reload_in_progress code. (rs6000_debug_legitimate_address_p): Likewise. (rs6000_eliminate_indexed_memrefs): Likewise. (rs6000_emit_le_vsx_store): Likewise. (rs6000_emit_move_si_sf_subreg): Likewise. (rs6000_emit_move): Likewise. (register_to_reg_type): Likewise. (rs6000_pre_atomic_barrier): Likewise. (rs6000_machopic_legitimize_pic_address): Likewise. (rs6000_allocate_stack_temp): Likewise. (rs6000_address_for_fpconvert): Likewise. (rs6000_address_for_altivec): Likewise. (rs6000_secondary_memory_needed_rtx): Delete function. (rs6000_check_sdmode): Likewise. (rs6000_alloc_sdmode_stack_slot): Likewise. (rs6000_instantiate_decls): Likewise. * config/rs6000/rs6000.h (SECONDARY_MEMORY_NEEDED_RTX): Delete. * config/rs6000/rs6000.md (splitter for *movsi_got_internal): Delete reload_in_progress. (*vec_reload_and_plus_<mptrsize>): Likewise. * config/rs6000/vsx.md (vsx_mul_v2di): Likewise. (vsx_div_v2di): Likewise. (vsx_udiv_v2di): Likewise. From-SVN: r250638
Peter Bergner committed -
gcc/ * config/rs6000/rs6000.opt (mlra): Replace with stub. * config/rs6000/rs6000-cpus.def (POWERPC_MASKS): Delete OPTION_MASK_LRA. * config/rs6000/rs6000.c (TARGET_LRA_P): Delete. (rs6000_debug_reg_global): Delete print of LRA status. (rs6000_option_override_internal): Delete dead LRA related code. (rs6000_lra_p): Delete function. * doc/invoke.texi (RS/6000 and PowerPC Options): Delete -mlra. gcc/testsuite/ * g++.dg/pr69667.C: Remove option -mlra. * gcc.target/powerpc/dform-1.c: Likewise. * gcc.target/powerpc/dform-2.c: Likewise. * gcc.target/powerpc/dform-3.c: Likewise. * gcc.target/powerpc/p8vector-int128-1.c: Likewise. * gcc.target/powerpc/p9-vparity.c: Likewise. * gcc.target/powerpc/pr63491.c: Likewise. * gcc.target/powerpc/pr67808.c: Likewise. * gcc.target/powerpc/pr68805.c: Likewise. * gcc.target/powerpc/pr69461.c: Likewise. * gcc.target/powerpc/pr71680.c: Likewise. * gcc.target/powerpc/pr77289.c: Likewise. * gcc.target/powerpc/pr78458.c: Likewise. * gcc.target/powerpc/pr78543.c: Likewise. * g++.dg/pr71294.C: Remove option -mno-lra. * gcc.target/powerpc/pr71656-1.c: Likewise. * gcc.target/powerpc/pr71656-2.c: Likewise. * gcc.target/powerpc/pr71698.c: Likewise. From-SVN: r250637
Peter Bergner committed -
PR c/45784 * c-omp.c (c_finish_omp_for): If the condition is wrapped in rhs of COMPOUND_EXPR(s), skip them and readd their lhs into new COMPOUND_EXPRs around the rhs of the comparison. * testsuite/libgomp.c/pr45784.c: New test. * testsuite/libgomp.c++/pr45784.C: New test. From-SVN: r250635
Jakub Jelinek committed -
gcc/ChangeLog 2017-07-27 Sebastian Huber <sebastian.huber@embedded-brains.de> * config.gcc (riscv*-*-elf*): Add (riscv*-*-rtems*). * config/riscv/rtems.h: New file. From-SVN: r250632
Sebastian Huber committed -
During combine GCC tries to merge CMP (with zero) and AND into a TST. However, in cases where an ANDS operand is not compatible, this was being missed. Adding a define_split where this operand was moved to a register seems to help out. Committed on behalf of Sudi Das --- gcc/ 2017-07-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com> Sudakshina Das <sudi.das@arm.com> * config/aarch64/aarch64.md (define_split for and<mode>3nr_compare): Move non aarch64_logical_operand to a register. (define_split for and_<SHIFT:optab><mode>3nr_compare0): Move non register immediate operand to a register. * config/aarch64/predicates.md (aarch64_mov_imm_operand): New. gcc/testsuite 2017-07-27 Kyrylo Tkachov <kyrylo.tkachov@arm.com> Sudakshina Das <sudi.das@arm.com> * gcc.target/aarch64/tst_imm_split_1.c: New Test. Co-Authored-By: Sudakshina Das <sudi.das@arm.com> From-SVN: r250631
Kyrylo Tkachov committed -
PR c/81417 * c-warn.c (warn_for_sign_compare): Tweak the warning message. Print the types. * c-c++-common/Wsign-compare-1.c: New test. * g++.dg/warn/Wsign-compare-2.C: Update dg-warning. * g++.dg/warn/Wsign-compare-4.C: Likewise. * g++.dg/warn/Wsign-compare-6.C: Likewise. * g++.dg/warn/compare1.C: Likewise. * gcc.dg/compare1.c: Likewise. * gcc.dg/compare2.c: Likewise. * gcc.dg/compare4.c: Likewise. * gcc.dg/compare5.c: Likewise. * gcc.dg/pr35430.c: Likewise. * gcc.dg/pr60087.c: Likewise. From-SVN: r250630
Marek Polacek committed -
gcc/ PR middle-end/81564 * tree-cfg.c (group_case_labels_stmt): Handle already deleted blocks. gcc/testsuite/ PR middle-end/81564 * gcc.dg/pr81564.c: New test. From-SVN: r250628
Peter Bergner committed -
2017-07-27 Richard Biener <rguenther@suse.de> PR tree-optimization/81573 PR tree-optimization/81494 * tree-vect-loop.c (vect_create_epilog_for_reduction): Handle multi defuse cycle case. * gcc.dg/torture/pr81573.c: New testcase. From-SVN: r250627
Richard Biener committed -
re PR tree-optimization/81571 (ICE at -O3 in both 32-bit and 64-bit modes (internal compiler error: in as_a, at is-a.h:192)) 2017-07-27 Richard Biener <rguenther@suse.de> PR tree-optimization/81571 * tree-vect-slp.c (vect_build_slp_tree): Properly verify reduction PHIs. * gcc.dg/torture/pr81571.c: New testcase. From-SVN: r250626
Richard Biener committed -
2017-07-27 Martin Liska <mliska@suse.cz> * opt-functions.awk: Add validation of value of Init. * optc-gen.awk: Pass new argument. From-SVN: r250625
Martin Liska committed -
* config/sparc/sparc.c (sparc_option_override): Set MASK_FSMULD flag earlier and only if MASK_FPU is set. Adjust formatting. From-SVN: r250623
Eric Botcazou committed -
2017-07-27 Martin Liska <mliska@suse.cz> * auto-profile.c (autofdo_source_profile::update_inlined_ind_target): Fix wrong condition. From-SVN: r250622
Martin Liska committed -
2017-07-27 Martin Liska <mliska@suse.cz> * auto-profile.c (afdo_annotate_cfg): Assign zero counts to BBs and edges seen by autoFDO. From-SVN: r250621
Martin Liska committed -
re PR middle-end/81502 (In some cases the data is moved to memory unnecessarily [partial regression]) 2017-07-27 Richard Biener <rguenther@suse.de> PR tree-optimization/81502 * tree-ssa.c (non_rewritable_lvalue_p): Handle BIT_INSERT_EXPR with incompatible but same sized type. (execute_update_addresses_taken): Likewise. * gcc.target/i386/vect-insert-1.c: New testcase. From-SVN: r250620
Richard Biener committed -
While answering a user question on the equivalence of -ftree-loop-vectorize + -ftree-slp-vectorize and -ftree-vectorize I spotted one case which broke the equivalence. pass_ch::process_loop_p was guarded on flag_tree_vectorize, meaning you would get it for -ftree-vectorize, but not for -ftree-loop-vectorize/-ftree-slp-vectorize. This patch fixes that, getting rid of the only use of flag_tree_vectorize in the code base. gcc/ * tree-ssa-loop-ch.c (pass_ch::process_loop_p): Guard on flag_tree_loop_vectorize rather than flag_tree_vectorize. From-SVN: r250619
James Greenhalgh committed -
The HI/QI atomic_fetch_<atomic><mode>" expander accepted symbolic references and emitted CAS patterns whose insn predicates rejected them. Fixed by allowing symbolic references there as well. Reload will get rid of them due to the constraint letter. Regression tested on s390x. gcc/ChangeLog: 2017-07-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/81534 * config/s390/s390.md ("*atomic_compare_and_swap<mode>_1") ("*atomic_compare_and_swapdi_2", "*atomic_compare_and_swapsi_3"): Change s_operand to memory_operand. gcc/testsuite/ChangeLog: 2017-07-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com> PR target/81534 * gcc.target/s390/pr81534.c: New test. From-SVN: r250617
Andreas Krebbel committed -
The little-endian VSX code uses rotates to swap the two 64-bit halves of 128-bit scalar modes. This is fine for TImode and V1TImode, but it isn't really valid to use RTL rotates on floating-point modes like KFmode and TFmode, and doing that triggered an assert added by the SVE series. This patch uses bit-casts to V1TImode instead. 2017-07-27 Richard Sandiford <richard.sandiford@linaro.org> gcc/ * config/rs6000/rs6000-protos.h (rs6000_emit_le_vsx_permute): Declare. * config/rs6000/rs6000.c (rs6000_gen_le_vsx_permute): Replace with... (rs6000_emit_le_vsx_permute): ...this. Take the destination as input. Emit instructions rather than returning an expression. Handle TFmode and KFmode by casting to TImode. (rs6000_emit_le_vsx_load): Update to use rs6000_emit_le_vsx_permute. (rs6000_emit_le_vsx_store): Likewise. * config/rs6000/vsx.md (VSX_TI): New iterator. (*vsx_le_permute_<mode>): Use it instead of VSX_LE_128. (*vsx_le_undo_permute_<mode>): Likewise. (*vsx_le_perm_load_<mode>): Use rs6000_emit_le_vsx_permute to emit the split sequence. (*vsx_le_perm_store_<mode>): Likewise. From-SVN: r250615
Richard Sandiford committed -
PR tree-optimization/81555 PR tree-optimization/81556 * tree-ssa-reassoc.c (rewrite_expr_tree): Add NEXT_CHANGED argument, if true, force CHANGED for the recursive invocation. (reassociate_bb): Remember original length of ops array, pass len != orig_len as NEXT_CHANGED in rewrite_expr_tree call. * gcc.c-torture/execute/pr81555.c: New test. * gcc.c-torture/execute/pr81556.c: New test. From-SVN: r250609
Jakub Jelinek committed -
* attribs.c (decl_attributes): Imply noinline, noclone and no_icf attributes for noipa attribute. For naked attribute use lookup_attribute first before lookup_attribute_spec. * final.c (rest_of_handle_final): Disable IPA RA for functions with noipa attribute. * ipa-visibility.c (non_local_p): Fix comment typos. Return true for functions with noipa attribute. (cgraph_externally_visible_p): Return true for functions with noipa attribute. * cgraph.c (cgraph_node::get_availability): Return AVAIL_INTERPOSABLE for functions with noipa attribute. * doc/extend.texi: Document noipa function attribute. * tree-ssa-structalias.c (refered_from_nonlocal_fn): Set *nonlocal_p also for functions with noipa attribute. (ipa_pta_execute): Set nonlocal_p also for nodes with noipa attribute. c-family/ * c-attribs.c (c_common_attribute_table): Add noipa attribute. (handle_noipa_attribute): New function. testsuite/ * gcc.dg/attr-noipa.c: New test. * gcc.dg/ipa/ipa-pta-18.c: New test. * gcc.dg/ipa/ipa-sra-11.c: New test. From-SVN: r250607
Jakub Jelinek committed
-