aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-09-06re PR middle-end/58094 (IPA devirt testsuite errors)Jan Hubicka2-34/+77
PR middle-end/58094 * ipa-inline.c (has_caller_p): New function. (want_inline_function_to_all_callers_p): Use it. (sum_callers, inline_to_all_callers): Break out from ... (ipa_inline): ... here. From-SVN: r202337
2013-09-06i386.c (ix86_hard_regno_mode_ok): AVX modes are valid only when AVX is enabled.Jan Hubicka2-1/+6
* i386.c (ix86_hard_regno_mode_ok): AVX modes are valid only when AVX is enabled. From-SVN: r202335
2013-09-06[AArch64] Use neon_<ldm,stm>_2 where appropriate as "type".James Greenhalgh2-4/+12
gcc/ * config/aarch64/aarch64.md (*movtf_aarch64): Use neon_<ls>dm_2 as type where v8type is fpsimd_<load/store>2. (load_pair<mode>): Likewise. (store_pair<mode>): Likewise. From-SVN: r202334
2013-09-06[AArch64, ARM] Introduce "mrs" type attribute.James Greenhalgh16-14/+37
gcc/ * config/arm/types.md (type): Add "mrs" type. * config/aarch64/aarch64.md (aarch64_load_tp_hard): Make type "mrs". * config/arm/arm.md (load_tp_hard): Make type "mrs". * config/arm/cortex-a15.md: Update with new attributes. * config/arm/cortex-a5.md: Update with new attributes. * config/arm/cortex-a53.md: Update with new attributes. * config/arm/cortex-a7.md: Update with new attributes. * config/arm/cortex-a8.md: Update with new attributes. * config/arm/cortex-a9.md: Update with new attributes. * config/arm/cortex-m4.md: Update with new attributes. * config/arm/cortex-r4.md: Update with new attributes. * config/arm/fa526.md: Update with new attributes. * config/arm/fa606te.md: Update with new attributes. * config/arm/fa626te.md: Update with new attributes. * config/arm/fa726te.md: Update with new attributes. From-SVN: r202333
2013-09-06[AArch64, ARM] Use "multiple" for type, where more than one instruction is ↵James Greenhalgh3-5/+16
used for a move gcc/ * config/aarch64/aarch64.md (*movti_aarch64): Use "multiple" for type where v8type is "move2". (*movtf_aarch64): Likewise. * config/arm/arm.md (thumb1_movdi_insn): Use "multiple" for type where more than one instruction is used for a move. (*arm32_movhf): Likewise. (*thumb_movdf_insn): Likewise. From-SVN: r202332
2013-09-06[AArch64, ARM] Rename the FCPYS type to FMOVJames Greenhalgh18-30/+65
gcc/ * config/arm/types.md (type): Rename fcpys to fmov. * config/arm/vfp.md (*arm_movsi_vfp): Rename type fcpys as fmov. (*thumb2_movsi_vfp): Likewise (*movhf_vfp_neon): Likewise (*movhf_vfp): Likewise (*movsf_vfp): Likewise (*thumb2_movsf_vfp): Likewise (*movsfcc_vfp): Likewise (*thumb2_movsfcc_vfp): Likewise * config/aarch64/aarch64-simd.md (move_lo_quad_<mode>): Replace type mov_reg with fmovs. * config/aarch64/aarch64.md (*movsi_aarch64): Replace type mov_reg with fmovs. (*movdi_aarch64): Likewise (*movsf_aarch64): Likewise (*movdf_aarch64): Likewise * config/arm/arm.c (cortexa7_older_only): Rename TYPE_FCPYS to TYPE_FMOV. * config/arm/iwmmxt.md (*iwmmxt_movsi_insn): Rename type fcpys as fmov. * config/arm/arm1020e.md: Update with new attributes. * config/arm/cortex-a15-neon.md: Update with new attributes. * config/arm/cortex-a5.md: Update with new attributes. * config/arm/cortex-a53.md: Update with new attributes. * config/arm/cortex-a7.md: Update with new attributes. * config/arm/cortex-a8-neon.md: Update with new attributes. * config/arm/cortex-a9.md: Update with new attributes. * config/arm/cortex-m4-fpu.md: Update with new attributes. * config/arm/cortex-r4f.md: Update with new attributes. * config/arm/marvell-pj4.md: Update with new attributes. * config/arm/vfp11.md: Update with new attributes. From-SVN: r202331
2013-09-06[Patch AArch64] Fix types for some multiply instructions.James Greenhalgh2-6/+16
gcc/ * config/aarch64/aarch64.md (*madd<mode>): Fix type attribute. (*maddsi_uxtw): Likewise. (*msub<mode>): Likewise. (*msubsi_uxtw): Likewise. (<su_optab>maddsidi4): Likewise. (<su_optab>msubsidi4): Likewise. From-SVN: r202330
2013-09-06[Patch ARM AARCH64] Split "type" attributes: fdivJames Greenhalgh16-25/+48
gcc/ * config/arm/types.md: Split fdiv<sd> as fsqrt<sd>, fdiv<sd>. * config/arm/arm.md (core_cycles): Remove fdiv. * config/arm/vfp.md: (*sqrtsf2_vfp): Update for attribute changes. (*sqrtdf2_vfp): Likewise. * config/aarch64/aarch64.md: (sqrt<mode>2): Update for attribute changes. * config/arm/arm1020e.md: Update with new attributes. * config/arm/cortex-a15-neon.md: Update with new attributes. * config/arm/cortex-a5.md: Update with new attributes. * config/arm/cortex-a53.md: Update with new attributes. * config/arm/cortex-a7.md: Update with new attributes. * config/arm/cortex-a8-neon.md: Update with new attributes. * config/arm/cortex-a9.md: Update with new attributes. * config/arm/cortex-m4-fpu.md: Update with new attributes. * config/arm/cortex-r4f.md: Update with new attributes. * config/arm/marvell-pj4.md: Update with new attributes. * config/arm/vfp11.md: Update with new attributes. From-SVN: r202329
2013-09-06[ARM,AARCH64] Insn type reclassification. Split f_cvt type.James Greenhalgh15-26/+67
gcc/ * config/arm/types.md (type): Split f_cvt as f_cvt, f_cvtf2i, f_cvti2f. * config/aarch64/aarch64.md (l<fcvt_pattern><su_optab><GPF:mode><GPI:mode>2): Update with new attributes. (fix_trunc<GPF:mode><GPI:mode>2): Likewise. (fixuns_trunc<GPF:mode><GPI:mode>2): Likewise. (float<GPI:mode><GPF:mode>2): Likewise. * config/arm/vfp.md (*truncsisf2_vfp): Update with new attributes. (*truncsidf2_vfp): Likewise. (fixuns_truncsfsi2): Likewise. (fixuns_truncdfsi2): Likewise. (*floatsisf2_vfp): Likewise. (*floatsidf2_vfp): Likewise. (floatunssisf2): Likewise. (floatunssidf2): Likewise. (*combine_vcvt_f32_<FCVTI32typename>): Likewise. (*combine_vcvt_f64_<FCVTI32typename>): Likewise. * config/arm/arm1020e.md: Update with new attributes. * config/arm/cortex-a15-neon.md: Update with new attributes. * config/arm/cortex-a5.md: Update with new attributes. * config/arm/cortex-a53.md: Update with new attributes. * config/arm/cortex-a7.md: Update with new attributes. * config/arm/cortex-a8-neon.md: Update with new attributes. * config/arm/cortex-a9.md: Update with new attributes. * config/arm/cortex-m4-fpu.md: Update with new attributes. * config/arm/cortex-r4f.md: Update with new attributes. * config/arm/marvell-pj4.md: Update with new attributes. * config/arm/vfp11.md: Update with new attributes. From-SVN: r202328
2013-09-06[AArch64] Fix types of second parameter to qtbl/qtbx intrinsicsJames Greenhalgh4-32/+46
gcc/ * config/aarch64/arm_neon.h (vqtbl<1,2,3,4><q>_s8): Fix control vector parameter type. (vqtbx<1,2,3,4><q>_s8): Likewise. gcc/testsuite/ * gcc.target/aarch64/table-intrinsics.c (qtbl_tests8_< ,2,3,4>): Fix control vector parameter type. (qtb_tests8_< ,2,3,4>): Likewise. (qtblq_tests8_< ,2,3,4>): Likewise. (qtbxq_tests8_< ,2,3,4>): Likewise. From-SVN: r202327
2013-09-06[Patch ARM] Add "type" attribute to Everything!James Greenhalgh22-260/+752
gcc/ * config/arm/types.md: Add "no_insn", "multiple" and "untyped" types. * config/arm/arm-fixed.md: Add type attribute to all insn patterns. * config/arm/vfp.md: Add type attribute to all insn patterns. * config/arm/arm.md: Add type attribute to all insn patterns. * config/arm/thumb2.md: Add type attribute to all insn patterns. * config/arm/arm1020e.md: Update with new attributes. * config/arm/arm1026ejs.md: Update with new attributes. * config/arm/arm1136jfs.md: Update with new attributes. * config/arm/arm926ejs.md: Update with new attributes. * config/arm/cortex-a15.md: Update with new attributes. * config/arm/cortex-a5.md: Update with new attributes. * config/arm/cortex-a53.md: Update with new attributes. * config/arm/cortex-a7.md: Update with new attributes. * config/arm/cortex-a8.md: Update with new attributes. * config/arm/cortex-a9.md: Update with new attributes. * config/arm/cortex-m4.md: Update with new attributes. * config/arm/cortex-r4.md: Update with new attributes. * config/arm/fa526.md: Update with new attributes. * config/arm/fa606te.md: Update with new attributes. * config/arm/fa626te.md: Update with new attributes. * config/arm/fa726te.md: Update with new attributes. From-SVN: r202323
2013-09-06[Patch AArch64] Fix register constraints for lane intrinsics.James Greenhalgh3-73/+96
gcc/ * config/aarch64/aarch64-simd.md (aarch64_sqdml<SBINQOPS:as>l_n<mode>_internal): Use <vwx> iterator to ensure correct register choice. (aarch64_sqdml<SBINQOPS:as>l2_n<mode>_internal): Likewise. (aarch64_sqdmull_n<mode>): Likewise. (aarch64_sqdmull2_n<mode>_internal): Likewise. * config/aarch64/arm_neon.h (vml<as><q>_lane<q>_<su>16): Use 'x' constraint for element vector. (vml<as><q>_n_<su>16): Likewise. (vml<as>l_high_lane<q>_<su>16): Likewise. (vml<as>l_high_n_<su>16): Likewise. (vml<as>l_lane<q>_<su>16): Likewise. (vml<as>l_n_<su>16): Likewise. (vmul<q>_lane<q>_<su>16): Likewise. (vmul<q>_n_<su>16): Likewise. (vmull_lane<q>_<su>16): Likewise. (vmull_n_<su>16): Likewise. (vmull_high_lane<q>_<su>16): Likewise. (vmull_high_n_<su>16): Likewise. (vqrdmulh<q>_n_s16): Likewise. From-SVN: r202322
2013-09-06arm_neon.h: Fix all vdup<bhsd_lane<q> intrinsics to have the correct lane ↵Tejas Belagod2-41/+46
parameter. 2013-09-06 Tejas Belagod <tejas.belagod@arm.com> gcc/ * config/aarch64/arm_neon.h: Fix all vdup<bhsd_lane<q> intrinsics to have the correct lane parameter. From-SVN: r202321
2013-09-06cfganal.c (control_dependences::~control_dependences): Properly free all of ↵Richard Biener2-1/+6
the vector. 2013-09-06 Richard Biener <rguenther@suse.de> * cfganal.c (control_dependences::~control_dependences): Properly free all of the vector. From-SVN: r202320
2013-09-06Makefile.in (tree-sra.o): Update dependencies.Jan Hubicka2-4/+14
* Makefile.in (tree-sra.o): Update dependencies. * tree-sra.c: Include ipa-utils.h (scan_function): Use recursive_call_p. (has_caller_p): New function. (cgraph_for_node_and_aliases): Count also callers of aliases. From-SVN: r202319
2013-09-06re PR target/58269 (ICE when building libobjc on x86_64-apple-darwin* after ↵Kirill Yukhin2-1/+7
revision 201915) PR target/58269 * config/i386/i386.c (ix86_conditional_register_usage): Proper initialize extended SSE registers. From-SVN: r202318
2013-09-06re PR tree-optimization/58311 (ICE: SIGSEGV in ↵Jan Hubicka2-3/+14
hash_table::find_slot_with_hash() with -fdevirtualize) PR tree-optimization/58311 * ipa-devirt.c (gate_ipa_devirt): Only execute when optimizing. From-SVN: r202317
2013-09-06re PR middle-end/58094 (IPA devirt testsuite errors)Jan Hubicka8-7/+73
PR middle-end/58094 * cgraph.h (symtab_semantically_equivalent_p): Declare. * tree-tailcall.c: Include ipa-utils.h. (find_tail_calls): Use it. * ipa-pure-const.c (check_call): Likewise. * ipa-utils.c (recursive_call_p): New function. * ipa-utils.h (recursive_call_p): Dclare. * symtab.c (symtab_nonoverwritable_alias): Fix formatting. (symtab_semantically_equivalent_p): New function. * Makefile.in (tree-tailcall.o): Update dependencies. From-SVN: r202316
2013-09-06ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the ↵Eric Botcazou6-0/+48
non-inlinable part. * ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the non-inlinable part. From-SVN: r202315
2013-09-06ipa-pta-14.c (scan-ipa-dump): Don't expect NULL in foo.result set.Joern Rennecke5-4/+17
* gcc.dg/ipa/ipa-pta-14.c (scan-ipa-dump) [keeps_null_pointer_checks]: Don't expect NULL in foo.result set. * gcc.dg/tree-ssa/pta-escape-1.c (scan-tree-dump): Don't expect NULL in ESCAPED set. * gcc.dg/tree-ssa/pta-escape-2.c: Likewise. * gcc.dg/tree-ssa/pta-escape-3.c: Likewise. From-SVN: r202314
2013-09-06lto-streamer.h (lto_global_var_decls): Remove.Richard Biener9-11/+30
2013-09-06 Richard Biener <rguenther@suse.de> * lto-streamer.h (lto_global_var_decls): Remove. * Makefile.in (OBJS): Remove lto-symtab.o. (lto-symtab.o): Remove. (GTFILES): Remove lto-symtab.c * lto-symtab.c: Move to lto/ lto/ * lto-symtab.c: Move from gcc/ * lto.h: Include vec.h. (lto_global_var_decls): Declare. * lto.c (lto_global_var_decls): Move definition here. * Make-lang.in (LTO_OBJS): Add lto-symtab.o. (lto-symtab.o): Add. * config-lang.in (gtfiles): Add lto.h. From-SVN: r202313
2013-09-062013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>Andreas Krebbel5-2/+170
* config/s390/s390.md (UNSPEC_FPINT_FLOOR, UNSPEC_FPINT_BTRUNC) (UNSPEC_FPINT_ROUND, UNSPEC_FPINT_CEIL, UNSPEC_FPINT_NEARBYINT) (UNSPEC_FPINT_RINT): New constant definitions. (FPINT, fpint_name, fpint_roundingmode): New integer iterator definition with 2 attributes. ("<FPINT:fpint_name><BFP:mode>2", "rint<BFP:mode>2") ("<FPINT:fpint_name><DFP:mode>2", "rint<DFP:mode>2"): New pattern definitions. 2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * gcc.target/s390/nearestint-1.c: New testcase. From-SVN: r202312
2013-09-06s390.md: Add "bcr_flush" value to mnemonic attribute.Andreas Krebbel2-5/+15
2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * config/s390/s390.md: Add "bcr_flush" value to mnemonic attribute. ("mem_thread_fence_1"): Use bcr 14,0 for z196 and later. Set the mnemonic attribute to "bcr_flush". Set the "z196prop" attribute to "z196_alone". * config/s390/2827.md: Add "bcr_flush" to "ooo_groupalone" and "zEC12_simple". From-SVN: r202311
2013-09-06basic-block.h (class control_dependences): New.Richard Biener4-125/+169
2013-09-06 Richard Biener <rguenther@suse.de> * basic-block.h (class control_dependences): New. * tree-ssa-dce.c (control_dependence_map): Remove. (cd): New global. (EXECUTE_IF_CONTROL_DEPENDENT): Remove. (set_control_dependence_map_bit, clear_control_dependence_bitmap, find_pdom, find_control_dependence, find_all_control_dependences): Move to cfganal.c. (mark_control_dependent_edges_necessary, find_obviously_necessary_stmts, propagate_necessity, tree_dce_init, tree_dce_done, perform_tree_ssa_dce): Adjust. * cfganal.c (set_control_dependence_map_bit, clear_control_dependence_bitmap, find_pdom, find_control_dependence, find_all_control_dependences): Move from tree-ssa-dce.c and implement as methods of control_dependences class. (control_dependences::control_dependences): New. (control_dependences::~control_dependences): Likewise. (control_dependences::get_edges_dependent_on): Likewise. (control_dependences::get_edge): Likewise. From-SVN: r202309
2013-09-06Daily bump.GCC Administrator1-1/+1
From-SVN: r202305
2013-09-05tree.c (types_same_for_odr): Drop overactive check.Jan Hubicka3-10/+5
* tree.c (types_same_for_odr): Drop overactive check. * ipa-devirt.c (hash_type_name): Likewise. From-SVN: r202302
2013-09-0620101011-1.c [__arc__] (DO_TEST): Define as 0.Joern Rennecke19-3/+292
* gcc.c-torture/execute/20101011-1.c [__arc__] (DO_TEST): Define as 0. * testsuite/gcc.target/arc: New directory. * gcc.dg/torture/pr37868.c: Also skip for arc*-*-*. * gcc.dg/stack-usage-1.c [__arc__] (SIZE): Define. * testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c [__arc__] (STACK_ARGUMENTS_SIZE): Set to 0. * testsuite/gcc.dg/builtin-apply2.c [__arc__] (STACK_ARGUMENTS_SIZE): Set to 0. Co-Authored-By: Vineet Gupta <Vineet.Gupta@synopsys.com> From-SVN: r202301
2013-09-05cgraphunit.c (walk_polymorphic_call_targets): Break out from ...Jan Hubicka2-62/+79
* cgraphunit.c (walk_polymorphic_call_targets): Break out from ... (analyze_functions): ... here. From-SVN: r202299
2013-09-05re PR c++/58201 (Undefined reference to `B::B(void const**)')Jan Hubicka6-0/+63
PR middle-end/58201 * cgraphunit.c (analyze_functions): Clear AUX fields after processing; initialize assembler name has. * g++.dg/torture/pr58201_0.C: New testcase. * g++.dg/torture/pr58201_1.C: New testcase. * g++.dg/torture/pr58201.h: New testcase. From-SVN: r202298
2013-09-05* gcc.dg/autopar/pr49960.c: Disable partial inliningJan Hubicka2-2/+8
From-SVN: r202297
2013-09-05tree-ssa-threadedge.c (thread_around_empty_blocks): Renamed from ↵Jeff Law2-77/+88
thread_around_empty_block. * tree-ssa-threadedge.c (thread_around_empty_blocks): Renamed from thread_around_empty_block. Record threading path into PATH. Recurse if threading through the initial block is successful. (thread_across_edge): Corresponding changes to slightly simplify. From-SVN: r202296
2013-09-05[AArch64] Fix categorisation of the frecp* insns.James Greenhalgh3-30/+25
gcc/ * config/aarch64/aarch64.md (type): Remove frecpe, frecps, frecpx. (aarch64_frecp<FRECP:frecp_suffix><mode>): Move to aarch64-simd.md, fix to be a TARGET_SIMD instruction. (aarch64_frecps): Remove. * config/aarch64/aarch64-simd.md (aarch64_frecp<FRECP:frecp_suffix><mode>): New, moved from aarch64.md (aarch64_frecps<mode>): Handle all float/vector of float modes. From-SVN: r202292
2013-09-05[AARCH64][Insn classification unification 3/N] ALU/shift typesJames Greenhalgh25-299/+619
2013-09-05 James Greenhalgh <james.greenhalgh@arm.com> Sofiane Naci <sofiane.naci@arm.com> * config/arm/types.md (define_attr "type"): Expand "arlo_imm" into "adr", "alu_imm", "alus_imm", "logic_imm", "logics_imm". Expand "arlo_reg" into "adc_reg", "adc_imm", "adcs_reg", "adcs_imm", "alu_ext", "alu_reg", "alus_ext", "alus_reg", "bfm", "csel", "logic_reg", "logics_reg", "rev". Expand "arlo_shift" into "alu_shift_imm", "alus_shift_imm", "logic_shift_imm", "logics_shift_imm". Expand "arlo_shift_reg" into "alu_shift_reg", "alus_shift_reg", "logic_shift_reg", "logics_shift_reg". Expand "clz" into "clz, "rbit". Rename "shift" to "shift_imm". * config/arm/arm.md (define_attr "core_cycles"): Update for attribute changes. Update for attribute changes all occurrences of arlo_* and shift* types. * config/arm/arm-fixed.md: Update for attribute changes all occurrences of arlo_* types. * config/arm/thumb2.md: Update for attribute changes all occurrences of arlo_* types. * config/arm/arm.c (xscale_sched_adjust_cost): (rtx insn, rtx (cortexa7_older_only): Likewise. (cortexa7_younger): Likewise. * config/arm/arm1020e.md (1020alu_op): Update for attribute changes. (1020alu_shift_op): Likewise. (1020alu_shift_reg_op): Likewise. * config/arm/arm1026ejs.md (alu_op): Update for attribute changes. (alu_shift_op): Likewise. (alu_shift_reg_op): Likewise. * config/arm/arm1136jfs.md (11_alu_op): Update for attribute changes. (11_alu_shift_op): Likewise. (11_alu_shift_reg_op): Likewise. * config/arm/arm926ejs.md (9_alu_op): Update for attribute changes. (9_alu_shift_reg_op): Likewise. * config/arm/cortex-a15.md (cortex_a15_alu): Update for attribute changes. (cortex_a15_alu_shift): Likewise. (cortex_a15_alu_shift_reg): Likewise. * config/arm/cortex-a5.md (cortex_a5_alu): Update for attribute changes. (cortex_a5_alu_shift): Likewise. * config/arm/cortex-a53.md (cortex_a53_alu): Update for attribute changes. (cortex_a53_alu_shift): Likewise. * config/arm/cortex-a7.md (cortex_a7_alu_imm): Update for attribute changes. (cortex_a7_alu_reg): Likewise. (cortex_a7_alu_shift): Likewise. * config/arm/cortex-a8.md (cortex_a8_alu): Update for attribute changes. (cortex_a8_alu_shift): Likewise. (cortex_a8_alu_shift_reg): Likewise. * config/arm/cortex-a9.md (cortex_a9_dp): Update for attribute changes. (cortex_a9_dp_shift): Likewise. * config/arm/cortex-m4.md (cortex_m4_alu): Update for attribute changes. * config/arm/cortex-r4.md (cortex_r4_alu): Update for attribute changes. (cortex_r4_mov): Likewise. (cortex_r4_alu_shift_reg): Likewise. * config/arm/fa526.md (526_alu_op): Update for attribute changes. (526_alu_shift_op): Likewise. * config/arm/fa606te.md (606te_alu_op): Update for attribute changes. * config/arm/fa626te.md (626te_alu_op): Update for attribute changes. (626te_alu_shift_op): Likewise. * config/arm/fa726te.md (726te_alu_op): Update for attribute changes. (726te_alu_shift_op): Likewise. (726te_alu_shift_reg_op): Likewise. * config/arm/fmp626.md (mp626_alu_op): Update for attribute changes. (mp626_alu_shift_op): Likewise. * config/arm/marvell-pj4.md (pj4_alu): Update for attribute changes. (pj4_alu_conds): Likewise. (pj4_shift): Likewise. (pj4_shift_conds): Likewise. (pj4_alu_shift): Likewise. (pj4_alu_shift_conds): Likewise. * config/aarch64/aarch64.md: Update for attribute change all occurrences of arlo_* and shift* types. Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com> From-SVN: r202291
2013-09-05tree.h: Move documentation for tree_function_decl to tree-core.h with the ↵Mike Stump3-5/+10
declaration. * tree.h: Move documentation for tree_function_decl to tree-core.h with the declaration. From-SVN: r202289
2013-09-05re PR target/58139 (PowerPC volatile VSX register live across call)Peter Bergner2-13/+14
PR target/58139 * reginfo.c (choose_hard_reg_mode): Scan through all mode classes looking for widest mode. From-SVN: r202286
2013-09-05* config.gcc (*-*-vxworks*): Do not override an existing extra_objs.Eric Botcazou2-1/+5
From-SVN: r202284
2013-09-05re PR tree-optimization/58137 ([trunk, ICE] full unroll + AVX2 vectorization)Richard Biener6-31/+67
2013-09-05 Richard Biener <rguenther@suse.de> PR tree-optimization/58137 * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): Do not create vectors of pointers. * tree-vect-loop.c (get_initial_def_for_induction): Use proper types for the components of the vector initializer. * tree-cfg.c (verify_gimple_assign_binary): Remove special-casing allowing pointer vectors with PLUS_EXPR/MINUS_EXPR. * gcc.target/i386/pr58137.c: New testcase. From-SVN: r202282
2013-09-05ipa-prop.c (remove_described_reference): Accept missing references, return ↵Martin Jambor6-12/+182
false if that hppens, otherwise return true. 2013-09-05 Martin Jambor <mjambor@suse.cz> * ipa-prop.c (remove_described_reference): Accept missing references, return false if that hppens, otherwise return true. (cgraph_node_for_jfunc): New function. (try_decrement_rdesc_refcount): Likewise. (try_make_edge_direct_simple_call): Use them. (ipa_edge_removal_hook): Remove references from rdescs. (ipa_edge_duplication_hook): Clone rdescs and their references when the new edge has the same caller as the old one. * cgraph.c (cgraph_resolve_speculation): Remove speculative reference before removing any edges. testsuite/ * g++.dg/ipa/remref-1.C: New test. * g++.dg/ipa/remref-2.C: Likewise. From-SVN: r202281
2013-09-05arm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on initial store.Richard Earnshaw3-95/+158
* arm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on initial store. * thumb2.md (thumb2_storewb_parisi): New pattern. From-SVN: r202279
2013-09-05[AArch64] Support the 'crc' extension in -march and -mcpu options.Yufeng Zhang4-0/+14
gcc/ * config/aarch64/aarch64-option-extensions.def: Add AARCH64_OPT_EXTENSION of 'crc'. * config/aarch64/aarch64.h (AARCH64_FL_CRC): New define. (AARCH64_ISA_CRC): Ditto. * doc/invoke.texi (-march and -mcpu feature modifiers): Add description of the CRC extension. From-SVN: r202275
2013-09-05linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC.Alexander Ivchenko11-2/+43
* config/rs6000/linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC. * config/rs6000/linux.h: Ditto. * alpha/linux.h: Ditto. * config/bfin/uclinux.h: Define TARGET_LIBC_HAS_FUNCTION as no_c99_libc_has_function. * config/c6x/uclinux-elf.h: Ditto. * config/lm32/uclinux-elf.h: Ditto. * config/m68k/uclinux.h: Ditto. * config/moxie/uclinux.h: Ditto. * config.gcc (bfin*-linux-uclibc*): Add t-linux-android to tmake_file. (crisv32-*-linux*, cris-*-linux*): Ditto. * config/bfin/bfin.c: Include "tm_p.h". From-SVN: r202274
2013-09-05tree-vect-loop.c (vect_analyze_loop_operations): Properly check for a ↵Richard Biener2-1/+6
definition without a basic-block. 2013-09-05 Richard Biener <rguenther@suse.de> * tree-vect-loop.c (vect_analyze_loop_operations): Properly check for a definition without a basic-block. From-SVN: r202273
2013-09-05[AArch64, AArch32][Insn classification refactoring 6/N] Remove "neon_type" ↵James Greenhalgh25-721/+1221
attribute gcc/ * config/aarch64/aarch64.md: Rename r_2_f and f_2_r where appropriate. * config/arm/arm.md (attribute "neon_type"): Delete. Move attribute values to config/arm/types.md. Update patterns where appropriate. * config/arm/types.md (type): Add Neon types. * config/arm/neon.md: Remove "neon_type" attribute, use "type" attribute everywhere appropriate. * doc/md.texi: Change references to neon_type to refer to type. * config/arm/vfp.md: Update patterns for attribute changes. * config/arm/arm.c (cortexa7_older_only): Update for attribute change. * config/arm/arm1020e.md: Update for attribute change. * config/arm/cortex-a15-neon.md: Update for attribute change. * config/arm/cortex-a15.md: Update for attribute change. * config/arm/cortex-a5.md: Update for attribute change. * config/arm/cortex-a53.md: Update for attribute change. * config/arm/cortex-a7.md: Update for attribute change. * config/arm/cortex-a8-neon.md: Update for attribute change. * config/arm/cortex-a8.md: Update for attribute change. * config/arm/cortex-a9-neon.md: Update for attribute change. * config/arm/cortex-a9.md: Update for attribute change. * config/arm/cortex-m4-fpu.md: Update for attribute change. * config/arm/cortex-r4f.md: Update for attribute change. * config/arm/iterators.md: Update comment referring to neon_type. * config/arm/iwmmxt.md: Update for attribute change. * config/arm/marvell-pj4.md: Update for attribute change. * config/arm/neon-schedgen.ml (emit_insn_reservations): Update for attribute change. * config/arm/vfp11.md: Update for attribute change. Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com> From-SVN: r202272
2013-09-05Fix typo in commentDodji Seketeli2-1/+5
gcc/ * tree.h (DECL_BUILT_INT): Fix typo in comment. From-SVN: r202271
2013-09-05Daily bump.GCC Administrator1-1/+1
From-SVN: r202269
2013-09-04re PR c++/24926 (gcc ignores access level violation for anonymous structs)Paolo Carlini4-50/+128
/cp 2013-09-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/24926 * class.c (finish_struct_anon_r): New. (finish_struct_anon): Use it. /testsuite 2013-09-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/24926 * g++.dg/parse/access11.C: New. From-SVN: r202266
2013-09-04rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit lglobl if not weak.David Edelsohn2-6/+14
* config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit lglobl if not weak. From-SVN: r202264
2013-09-04* g++.dg/warn/weak1.C: Skip on AIX.David Edelsohn2-0/+5
From-SVN: r202263
2013-09-04re PR tree-optimization/57370 (compiler hangs in reassoc)Easwaran Raman5-12/+118
2013-09-04 Easwaran Raman <eraman@google.com> PR middle-end/57370 PR tree-optimization/58011 * tree-ssa-reassoc.c (get_stmt_uid_with_default): New function, (build_and_add_sum): Use it. (appears_later_in_bb): Simplify code. gcc/testsuite/ChangeLog: 2013-09-04 Easwaran Raman <eraman@google.com> PR middle-end/57370 PR tree-optimization/58011 * gfortran.dg/reassoc_12.f90: New testcase. * gcc.dg/tree-ssa/reassoc-31.c: New testcase. From-SVN: r202262
2013-09-04attr-weakref-1.c: Skip on AIX.David Edelsohn4-1/+11
* gcc.dg/attr-weakref-1.c: Skip on AIX. * gcc.dg/torture/pr53922.c: Skip on AIX. * lib/file-format.exp (gcc_target_object_format): AIX is COFF. From-SVN: r202261