Age | Commit message (Collapse) | Author | Files | Lines |
|
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* function.h: Flatten file. Remove includes, adjust prototypes to
reflect only what is in function.h.
(enum direction, struct args_size, struct locate_and_pad_arg_data,
ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE, ARGS_SIZE_RTX): Relocate
from expr.h.
(ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD): Relocate from rtl.h.
(optimize_function_for_size_p, optimize_function_for_speed_p): Move
prototypes to predict.h.
(init_varasm_status): Move prototype to varasm.h.
* expr.h: Adjust include files.
(enum direction, struct args_size, struct locate_and_pad_arg_data,
ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE, ARGS_SIZE_RTX): Move
to function.h.
(locate_and_pad_parm): Move prototype to function.h.
* rtl.h: (assign_stack_local, ASLK_REDUCE_ALIGN, ASLK_RECORD_PAD,
assign_stack_local_1, assign_stack_temp, assign_stack_temp_for_type,
assign_temp, reposition_prologue_and_epilogue_notes,
prologue_epilogue_contains, sibcall_epilogue_contains,
update_temp_slot_address, maybe_copy_prologue_epilogue_insn,
set_return_jump_label): Move prototypes to function.h.
* predict.h (optimize_function_for_size_p,
optimize_function_for_speed_p): Relocate prototypes from function.h.
* shrink-wrap.h (emit_return_into_block, active_insn_between,
convert_jumps_to_returns, emit_return_for_exit): Move prototypes to
function.h.
* varasm.h (init_varasm_status): Relocate prototype from function.h.
* genattrtab.c (write_header): Add predict.h to include list.
* genconditions.c (write_header): Add predict.h to include list.
* genemit.c (main): Adjust header file includes.
* gengtype.c (ifiles): Add flattened function.h header files.
* genoutput.c (output_prologue): Add predict.h to include list.
* genpreds.c (write_insn_preds_c): Adjust header file includes.
* genrecog.c (write_header): Add flattened function.h header files.
* alias.c: Adjust include files.
* auto-inc-dec.c: Likewise.
* basic-block.h: Likewise.
* bb-reorder.c: Likewise.
* bt-load.c: Likewise.
* builtins.c: Likewise.
* caller-save.c: Likewise.
* calls.c: Likewise.
* cfgbuild.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfgloop.c: Likewise.
* cfgloop.h: Likewise.
* cfgrtl.c: Likewise.
* cgraph.h: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* combine-stack-adj.c: Likewise.
* combine.c: Likewise.
* coverage.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* cselib.c: Likewise.
* dbxout.c: Likewise.
* ddg.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* dojump.c: Likewise.
* dwarf2cfi.c: Likewise.
* dwarf2out.c: Likewise.
* emit-rtl.c: Likewise.
* except.c: Likewise.
* explow.c: Likewise.
* expr.c: Likewise.
* final.c: Likewise.
* function.c: Likewise.
* gcse.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-low.c: Likewise.
* gimple-streamer.h: Likewise.
* haifa-sched.c: Likewise.
* ifcvt.c: Likewise.
* ira.c: Likewise.
* jump.c: Likewise.
* lcm.c: Likewise.
* loop-invariant.c: Likewise.
* lra-assigns.c: Likewise.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-eliminations.c: Likewise.
* lra-lives.c: Likewise.
* lra-spills.c: Likewise.
* lra.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-section-in.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* mode-switching.c: Likewise.
* modulo-sched.c: Likewise.
* omp-low.c: Likewise.
* optabs.c: Likewise.
* passes.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* predict.c: Likewise.
* profile.c: Likewise.
* recog.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* reginfo.c: Likewise.
* regrename.c: Likewise.
* reload.c: Likewise.
* reload1.c: Likewise.
* reorg.c: Likewise.
* resource.c: Likewise.
* rtlanal.c: Likewise.
* sched-deps.c: Likewise.
* sched-ebb.c: Likewise.
* sched-rgn.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched.c: Likewise.
* shrink-wrap.c: Likewise.
* simplify-rtx.c: Likewise.
* statistics.c: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* symtab.c: Likewise.
* targhooks.c: Likewise.
* toplev.c: Likewise.
* trans-mem.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-dfa.c: Likewise.
* tree-eh.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-nested.c: Likewise.
* tree-nrv.c: Likewise.
* tree-profile.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-tailcall.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* valtrack.c: Likewise.
* varasm.c: Likewise.
* vmsdbgout.c: Likewise.
* web.c: Likewise.
* testsuite/g++.dg/plugin/pragma_plugin.c: Adjust include files.
* config/aarch64/aarch64.c: Add flattened includes from function.h.
* config/alpha/alpha.c: Likewise.
* config/arc/arc.c: Likewise.
* config/arm/arm.c: Likewise.
* config/avr/avr-log.c: Likewise.
* config/avr/avr.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/cr16/cr16.c: Likewise.
* config/cris/cris.c: Likewise.
* config/darwin.c: Likewise.
* config/epiphany/epiphany.c: Likewise.
* config/epiphany/mode-switch-use.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.
* config/fr30/fr30.c: Likewise.
* config/frv/frv.c: Likewise.
* config/h8300/h8300.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/iq2000/iq2000.c: Likewise.
* config/lm32/lm32.c: Likewise.
* config/m32c/m32c.c: Likewise.
* config/m32r/m32r.c: Likewise.
* config/m68k/m68k.c: Likewise.
* config/mcore/mcore.c: Likewise.
* config/mep/mep-pragma.c: Likewise.
* config/mep/mep.c: Likewise.
* config/microblaze/microblaze.c: Likewise.
* config/mips/mips.c: Likewise.
* config/mmix/mmix.c: Likewise.
* config/mn10300/mn10300.c: Likewise.
* config/moxie/moxie.c: Likewise.
* config/msp430/msp430.c: Likewise.
* config/nds32/nds32-cost.c: Likewise.
* config/nds32/nds32-fp-as-gp.c: Likewise.
* config/nds32/nds32-intrinsic.c: Likewise.
* config/nds32/nds32-isr.c: Likewise.
* config/nds32/nds32-md-auxiliary.c: Likewise.
* config/nds32/nds32-memory-manipulation.c: Likewise.
* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
* config/nds32/nds32-predicates.c: Likewise.
* config/nds32/nds32.c: Likewise.
* config/nios2/nios2.c: Likewise.
* config/pa/pa.c: Likewise.
* config/pdp11/pdp11.c: Likewise.
* config/rl78/rl78.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/s390/s390.c: Likewise.
* config/score/score.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/v850/v850.c: Likewise.
* config/vax/vax.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* ada/gcc-interface/misc.c: Adjust include files.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* c/c-decl.c: Adjust include files.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* c-family/c-pragma.c: Adjust include files.
* c-family/c-semantics.c: Likewise.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* cp/cp-tree.h: Adjust include files.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* fortran/f95-lang.c: Adjust include files.
* fortran/trans-decl.c: Likewise.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* java/class.c: Adjust include files.
* java/resource.c: Likewise.
2014-10-16 Andrew MacLeod <amacleod@redhat.com>
* objc/objc-act.c: Adjust include files.
From-SVN: r216337
|
|
* config/aarch64/aarch64.c (aarch64_legitimize_address): New function.
(TARGET_LEGITIMIZE_ADDRESS): Redefine.
From-SVN: r216336
|
|
* g++.dg/ipa/ipa-icf-4.C: Correct number of equivalences set.
* g++.dg/ipa/ipa-icf-5.C: Likewise
From-SVN: r216335
|
|
gcc/
* config/sh/sh-protos.h (fldi_ok): Remove.
* config/sh/sh.c (fldi_ok): Likewise.
(sh_secondary_reload): Don't use fldi_ok.
* config/sh/constraints.md (G constraint, H constraint): Don't use
fldi_ok.
From-SVN: r216320
|
|
* ipa-icf.c (sem_item_optimizer::process_cong_reduction):
Cast to unsigned long.
(sem_item_optimizer::dump_cong_classes): Likewise.
From-SVN: r216319
|
|
2014-10-16 Tom de Vries <tom@codesourcery.com>
* tree-into-ssa.c (update_ssa): Assert that there's no ssa use operand
with SSA_NAME_IN_FREELIST.
From-SVN: r216318
|
|
use fpscr)
gcc/testsuite/
PR target/63260
* gcc.target/sh/pr63260.c: Fix typo __builtin_fabs vs. __builtin_abs.
From-SVN: r216317
|
|
2014-10-16 Richard Biener <rguenther@suse.de>
PR middle-end/63554
* builtins.c (fold_builtin_4): Do not call fold_builtin_strncat_chk.
(fold_builtin_strncat_chk): Move ...
* gimple-fold.c (gimple_fold_builtin_strncat_chk): ... here.
(gimple_fold_builtin): Call gimple_fold_builtin_strncat_chk.
* gcc.dg/torture/pr63554.c: New testcase.
From-SVN: r216315
|
|
gcc/
PR target/59401
* config/sh/sh.h (CALL_REALLY_USED_REGISTERS): Expand macro and set
GBR to 0.
From-SVN: r216314
|
|
* gcc.target/powerpc/pr58673-1.c: Fix defaulting to int.
* gcc.target/powerpc/pr58673-2.c: Add declarations.
From-SVN: r216313
|
|
* gcc.dg/graphite/id-1.c: Fix defaulting to int.
* gcc.dg/graphite/id-2.c: Likewise.
* gcc.dg/graphite/id-4.c: Likewise.
* gcc.dg/graphite/id-8.c: Likewise.
* gcc.dg/graphite/id-pr45230-1.c: Likewise.
* gcc.dg/graphite/id-pr45230.c: Likewise.
* gcc.dg/graphite/id-pr45231.c: Likewise.
* gcc.dg/graphite/pr38073.c: Likewise.
* gcc.dg/graphite/pr38125.c: Likewise.
* gcc.dg/graphite/pr38409.c: Likewise.
* gcc.dg/graphite/pr38413.c: Likewise.
* gcc.dg/graphite/pr38510.c: Likewise.
* gcc.dg/graphite/pr38786.c: Likewise.
* gcc.dg/graphite/pr39260.c: Likewise.
* gcc.dg/graphite/scop-19.c: Likewise.
* gcc.dg/graphite/id-13.c: Fix implicit declarations.
* gcc.dg/graphite/id-17.c: Likewise.
* gcc.dg/graphite/id-23.c: Likewise.
* gcc.dg/graphite/id-26.c: Likewise.
* gcc.dg/graphite/id-pr43464-1.c: Likewise.
* gcc.dg/graphite/pr37485.c: Likewise.
* gcc.dg/graphite/pr38500.c: Likewise.
* gcc.dg/graphite/pr42284.c: Likewise.
* gcc.dg/graphite/pr42914.c: Likewise.
* gcc.dg/graphite/pr46404-1.c: Likewise.
* gcc.dg/graphite/pr60979.c: Likewise.
* gcc.dg/graphite/id-pr43464.c: Fix implicit declarations and
defaulting to int.
From-SVN: r216312
|
|
gcc/
* config/i386/i386.c (ix86_expand_mul_widen_hilo): Handle V32HI, V16SI,
V64QI modes.
Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r216311
|
|
gcc/
* config/i386/i386.c (ix86_expand_vector_set): Handle V8DF, V8DI, V16SF,
V16SI, V32HI, V64QI modes.
Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r216310
|
|
* g++.dg/ipa/ipa-icf-1.C: New test.
* g++.dg/ipa/ipa-icf-2.C: New test.
* g++.dg/ipa/ipa-icf-3.C: New test.
* g++.dg/ipa/ipa-icf-4.C: New test.
* g++.dg/ipa/ipa-icf-5.C: New test.
* gcc.dg/ipa/ipa-icf-1.c: New test.
* gcc.dg/ipa/ipa-icf-10.c: New test.
* gcc.dg/ipa/ipa-icf-11.c: New test.
* gcc.dg/ipa/ipa-icf-12.c: New test.
* gcc.dg/ipa/ipa-icf-13.c: New test.
* gcc.dg/ipa/ipa-icf-14.c: New test.
* gcc.dg/ipa/ipa-icf-15.c: New test.
* gcc.dg/ipa/ipa-icf-16.c: New test.
* gcc.dg/ipa/ipa-icf-17.c: New test.
* gcc.dg/ipa/ipa-icf-18.c: New test.
* gcc.dg/ipa/ipa-icf-19.c: New test.
* gcc.dg/ipa/ipa-icf-2.c: New test.
* gcc.dg/ipa/ipa-icf-20.c: New test.
* gcc.dg/ipa/ipa-icf-21.c: New test.
* gcc.dg/ipa/ipa-icf-22.c: New test.
* gcc.dg/ipa/ipa-icf-23.c: New test.
* gcc.dg/ipa/ipa-icf-24.c: New test.
* gcc.dg/ipa/ipa-icf-25.c: New test.
* gcc.dg/ipa/ipa-icf-26.c: New test.
* gcc.dg/ipa/ipa-icf-27.c: New test.
* gcc.dg/ipa/ipa-icf-28.c: New test.
* gcc.dg/ipa/ipa-icf-29.c: New test.
* gcc.dg/ipa/ipa-icf-3.c: New test.
* gcc.dg/ipa/ipa-icf-30.c: New test.
* gcc.dg/ipa/ipa-icf-4.c: New test.
* gcc.dg/ipa/ipa-icf-5.c: New test.
* gcc.dg/ipa/ipa-icf-6.c: New test.
* gcc.dg/ipa/ipa-icf-7.c: New test.
* gcc.dg/ipa/ipa-icf-8.c: New test.
* gcc.dg/ipa/ipa-icf-9.c: New test.
Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
From-SVN: r216308
|
|
gcc/
PR target/53513
* config/sh/sh-protos.h (emit_sf_insn, emit_df_insn, expand_sf_unop,
expand_sf_binop, expand_df_unop, expand_df_binop): Remove.
* config/sh/sh.c (sh_emit_set_t_insn): Adjust generated insn pattern
to match fp insn patterns.
(calc_live_regs): Add FPSCR_MODES_REG and FPSCR_STAT_REG to the ignore
list.
(emit_sf_insn, emit_df_insn, expand_sf_unop, expand_sf_binop,
expand_df_unop, expand_df_binop): Remove.
(sh_conditional_register_usage): Mark FPSCR_MODES_REG and
FPSCR_STAT_REG as not call clobbered.
(sh_emit_mode_set): Emit fpscr store-modify-load sequence instead of
invoking fpscr_set_from_mem.
* config/sh/sh.h (MAX_REGISTER_NAME_LENGTH): Increase to 6.
(SH_REGISTER_NAMES_INITIALIZER): Add names for FPSCR_MODES_REG and
FPSCR_STAT_REG.
(REGISTER_NAMES): Adjust.
(SPECIAL_REGISTER_P): Add FPSCR_MODES_REG and FPSCR_STAT_REG.
(FIRST_PSEUDO_REGISTER): Increase to 156.
(DWARF_FRAME_REGISTERS): Define as 153 to keep the original value.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Add FPSCR_MODES_REG and
FPSCR_STAT_REG.
(REG_CLASS_CONTENTS): Adjust ALL_REGS bit mask to include
FPSCR_MODES_REG and FPSCR_STAT_REG.
(REG_ALLOC_ORDER): Add FPSCR_MODES_REG and FPSCR_STAT_REG.
* config/sh/sh.md (FPSCR_MODES_REG, FPSCR_STAT_REG, FPSCR_PR,
FPSCR_SZ): Add new constants.
(UNSPECV_FPSCR_MODES, UNSPECV_FPSCR_STAT): Add new unspecv constants.
(movpsi): Use TARGET_FPU_ANY condition, invoke gen_fpu_switch.
(fpu_switch): Add use and set of FPSCR_STAT_REG and FPSCR_MODES_REG.
Use TARGET_FPU_ANY condition.
(fpu_switch peephole2): Remove.
(fpu_switch split): Use simple_mem_operand to capture the mem and
adjust split implementation.
(extend_psi_si, truncate_si_psi): New insns.
(toggle_sz, toggle_pr): Use FPSCR_SZ, FPSCR_PR constants. Add
set of FPSCR_MODES_REG.
(push_e, push_4, pop_e, pop_4, movdf_i4, reload_indf__frn, movsf_ie,
reload_insf__frn, force_mode_for_call, calli, calli_tbr_rel,
calli_pcrel, call_pcrel, call_compact, call_compact_rettramp,
call_valuei, call_valuei_tbr_rel, call_valuei_pcrel, call_value_pcrel,
call_value_compact, call_value_compact_rettramp, call,
call_pop_compact, call_pop_compact_rettramp, call_value, sibcalli,
sibcalli_pcrel, sibcalli_thunk, sibcall_pcrel, sibcall_compact,
sibcall, sibcall_valuei, sibcall_valuei_pcrel, sibcall_value_pcrel,
sibcall_value_compact, sibcall_value, call_value_pop_compact,
call_value_pop_compact_rettramp, various unnamed splits):
Replace use of FPSCR_REG with use of FPSCR_MODES_REG. Adjust gen_*
function uses.
(floatsisf2_i4, *floatsisf2_ie): Merge into floatsisf2_i4.
(fix_truncsfsi2_i4, *fixsfsi): Merge into fix_truncsfsi2_i4.
(cmpgtsf_t, cmpgtsf_t_i4): Merge into cmpgtsf_t.
(cmpeqsf_t, cmpeqsf_t_i4): Merge into cmpeqsf_t.
(ieee_ccmpeqsf_t, *ieee_ccmpeqsf_t_4): Merge into ieee_ccmpeqsf_t.
(udivsi3_i4, divsi3_i4, addsf3_i, subsf3_i, mulsf3_i, fmasf4_i,
*fmasf4, divsf3_i, floatsisf2_i4, fix_truncsfsi2_i4, cmpgtsf_t,
cmpeqsf_t, ieee_ccmpeqsf_t, sqrtsf2_i, rsqrtsf2, fsca, adddf3_i,
subdf3_i, muldf3_i, divdf3_i, floatsidf2_i, fix_truncdfsi2_i,
cmpgtdf_t, cmpeqdf_t, *ieee_ccmpeqdf_t, sqrtdf2_i, extendsfdf2_i4,
truncdfsf2_i4): Replace use of FPSCR_REG with clobber of FPSCR_STAT_REG
and use of FPSCR_MODES_REG. Adjust gen_* function uses.
gcc/testsuite/
PR target/53513
* gcc.target/sh/pr54680.c: Adjust matching of lds insn.
From-SVN: r216307
|
|
* c-c++-common/rotate-1.c: Options changed to not collide
with a new IPA ICF pass.
* c-c++-common/rotate-2.c: Likewise.
* c-c++-common/rotate-3.c: Likewise.
* c-c++-common/rotate-4.c: Likewise.
* g++.dg/cpp0x/rv-return.C: Likewise.
* g++.dg/cpp0x/rv1n.C: Likewise.
* g++.dg/cpp0x/rv1p.C: Likewise.
* g++.dg/cpp0x/rv2n.C: Likewise.
* g++.dg/cpp0x/rv3n.C: Likewise.
* g++.dg/cpp0x/rv4n.C: Likewise.
* g++.dg/cpp0x/rv5n.C: Likewise.
* g++.dg/cpp0x/rv6n.C: Likewise.
* g++.dg/cpp0x/rv7n.C: Likewise.
* g++.dg/ipa/devirt-g-1.C: Likewise.
* g++.dg/ipa/inline-1.C: Likewise.
* g++.dg/ipa/inline-2.C: Likewise.
* g++.dg/ipa/inline-3.C: Likewise.
* g++.dg/opt/pr30965.C: Likewise.
* g++.dg/tree-ssa/pr19637.C: Likewise.
* gcc.dg/guality/csttest.c: Likewise.
* gcc.dg/ipa/iinline-4.c (struct S): Likewise.
* gcc.dg/ipa/iinline-7.c: Likewise.
* gcc.dg/ipa/ipa-pta-13.c: Likewise.
* gcc.dg/ipa/ipacost-1.c: Likewise.
* gcc.dg/ipa/ipacost-2.c: Likewise.
* gcc.dg/ipa/ipcp-agg-6.c: Likewise.
* gcc.dg/ipa/remref-2a.c: Likewise.
* gcc.dg/ipa/remref-2b.c: Likewise.
* gcc.dg/pr46309-2.c: Likewise.
* gcc.dg/torture/ipa-pta-1.c: Likewise.
* gcc.dg/tree-ssa/andor-3.c (int f): Likewise.
* gcc.dg/tree-ssa/andor-4.c: Likewise.
* gcc.dg/tree-ssa/andor-5.c: Likewise.
* gcc.dg/vect/no-vfa-pr29145.c: Likewise.
* gcc.dg/vect/vect-cond-10.c: Likewise.
* gcc.dg/vect/vect-cond-9.c: Likewise.
* gcc.dg/vect/vect-widen-mult-const-s16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-const-u16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-half-u8.c: Likewise.
* gcc.target/i386/bmi-1.c: Likewise.
* gcc.target/i386/bmi-2.c: Likewise.
* gcc.target/i386/pr56564-2.c: Likewise.
From-SVN: r216306
|
|
* Makefile.in: New object files included.
* cgraph.c (cgraph_node::dump): New cgraph_node flag icf_merged
is printed.
(verify_edge_corresponds_to_fndecl): More sensitive verification
of nodes that are merged by IPA ICF.
* cgraph.h (cgraph_node::num_references): New function.
* cgraphunit.c (cgraph_node::expand_thunk): White space fixed.
* common.opt: New options ipa-icf, ipa-icf-functions and
ipa-icf-variables introduced.
* doc/invoke.texi: Documentation of new options introduced.
* ipa-icf-gimple.c: New file.
* ipa-icf-gimple.h: New file.
* ipa-icf.c: New file.
* ipa-icf.h: New file.
* lto-cgraph.c (lto_output_node): Streaming of icf_merged flag added.
(input_overwrite_node): Likewise.
* lto-section-in.c: New icf section added.
* lto-streamer.h (enum lto_section_type): Likewise.
* opts.c (common_handle_option): New option added.
* passes.def: New pass included.
* timevar.def: Time variable for IPA ICF added.
* tree-pass.h: New IPA ICF pass entry point added.
Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
From-SVN: r216305
|
|
latch block not empty)
2014-10-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/63168
* tree-cfg.c (gimple_can_merge_blocks_p): Only protect
latches if after merging they are no longer simple.
* cfghooks.c (merge_blocks): Handle merging a latch block
into another block.
* gcc.dg/tree-ssa/loop-40.c: New testcase.
From-SVN: r216304
|
|
From-SVN: r216303
|
|
* gcc.target/ia64/20090324-1.c: Fix implicit declarations and
implicit int.
* gcc.target/ia64/mfused-madd-vect.c: Likewise.
* gcc.target/ia64/mno-fused-madd-vect.c: Likewise.
* gcc.target/ia64/pr29682.c: Likewise.
* gcc.target/ia64/pr43603.c: Likewise.
* gcc.target/ia64/pr48496.c: Likewise.
From-SVN: r216302
|
|
From-SVN: r216301
|
|
* gcc.dg/20020122-2.c: Use dg-additional-options. Fix implicit
declarations.
* gcc.dg/pr32176.c: Likewise.
* gcc.dg/builtin-apply4.c: Use dg-additional-options.
* gcc.dg/ia64-sync-1.c: Fix implicit declarations.
* gcc.dg/ia64-sync-2.c: Likewise.
* gcc.dg/ia64-sync-3.c: Likewise.
* gcc.dg/sync-2.c: Likewise.
* gcc.dg/sync-3.c: Likewise.
* gcc.target/i386/990524-1.c: Likewise.
* gcc.target/i386/avx512f-pr57233.c: Likewise.
* gcc.target/i386/avx512f-typecast-1.c: Likewise.
* gcc.target/i386/pr26826.c: Likewise.
* gcc.target/i386/pr37184.c: Likewise.
* gcc.target/i386/20060125-1.c: Fix defaulting to int.
* gcc.target/i386/20060125-2.c: Likewise.
* gcc.target/i386/memcpy-1.c: Likewise.
* gcc.target/i386/pr40934.c: Likewise.
* gcc.target/i386/sse-5.c: Likewise.
* gcc.target/i386/stackalign/asm-1.c: Likewise.
* gcc.target/i386/vectorize4.c: Likewise.
* gcc.target/i386/980312-1.c: Fix defaulting to int. Use
-fgnu89-inline.
* gcc.target/i386/980313-1.c: Likewise.
* gcc.target/i386/builtin-apply-mmx.c: Use -fgnu89-inline.
* gcc.target/i386/crc32-2.c: Use -std=gnu89.
* gcc.target/i386/crc32-3.c: Likewise.
* gcc.target/i386/intrinsics_3.c: Likewise.
* gcc.target/i386/loop-1.c: Likewise.
* gcc.target/i386/pr44948-2a.c: Likewise.
* gcc.target/i386/pr47564.c: Likewise.
* gcc.target/i386/pr50712.c: Likewise.
* gcc.target/i386/stackalign/return-2.c: Likewise.
Co-Authored-By: Marek Polacek <polacek@redhat.com>
From-SVN: r216300
|
|
gcc/
* config/i386/sse.md
(define_expand "floatuns<sseintvecmodelower><mode>2"): Extend to
support AVX-512VL instructions.
Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r216297
|
|
* tree-core.h: Fix comment to not assume pointers are multiples of
bytes.
* c-cppbuiltin.c (cpp_atomic_builtins): Don't assume pointers are
multiples of bytes.
From-SVN: r216296
|
|
From-SVN: r216295
|
|
Patch authored by Tom Tromey; originally contributed by him to jit
branch on 2014-03-19.
gcc/ChangeLog:
* timevar.h (class auto_timevar): New class.
From-SVN: r216288
|
|
PR go/59432
* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
Remove the second alternative.
(regprefix): Remove mode attribute.
(atomic_compare_and_swap<mode>): Do not fixup operand 2.
* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Remove.
Revert:
2013-11-05 Ian Lance Taylor <iant@google.com>
* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
If possible, add .cfi directives to record change to bx.
* config/i386/i386.c (ix86_emit_cfi): New function.
* config/i386/i386-protos.h (ix86_emit_cfi): Declare.
From-SVN: r216281
|
|
PR target/63536
gcc/java/
* lang.c (java_print_error_function): Add check on NULL function
context.
From-SVN: r216280
|
|
variadic trait)
PR c++/63528
* pt.c (lookup_template_variable): Call coerce_template_parms.
From-SVN: r216279
|
|
PR lto/62026
* lto/pr62026.C: New testcase.
* cgraphclones.c (duplicate_thunk_for_node): Get body to have args
to duplicate.
* lto-streamer-out.c (lto_output): Handle correctly thunks that was born
at WPA time.
From-SVN: r216278
|
|
2014-10-15 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/63448
* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Remove.
(LRA_MAX_ASSIGNMENT_ITERATION_NUMBER): New.
(LRA_MAX_INHERITANCE_PASSES): Use it.
(lra_constraint_iter_after_spill): Remove.
(lra_assignment_iter): New.
(lra_assignment_iter_after_spill): New.
* lra-assigns.c (lra_assignment_iter): New.
(lra_assignment_iter_after_spill): New.
(former_reload_pseudo_spill_p): New.
(spill_for): Set up former_reload_pseudo_spill_p.
(setup_live_pseudos_and_spill_after_risky): Ditto.
(assign_by_spills): Ditto.
(lra_assign): Increment lra_assignment_iter. Print the iteration
number. Reset former_reload_pseudo_spill_p. Check
lra_assignment_iter_after_spill.
* lra.c (lra): Remove lra_constraint_iter_after_spill. Initialize
lra_assignment_iter and lra_assignment_iter_after_spill.
* lra-constraints.c (lra_constraint_iter_after_spill): Remove.
(lra_constraints): Remove code with
lra_assignment_iter_after_spill.
2014-10-15 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/63448
* gcc.target/i386/pr63448.c: New test.
From-SVN: r216270
|
|
2014-10-15 Teresa Johnson <tejohnson@google.com>
PR bootstrap/63432
* tree-ssa-threadupdate.c (recompute_probabilities): Better
overflow checking.
From-SVN: r216269
|
|
2014-10-15 Renlin Li <renlin.li@arm.com>
* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define
__ARM_BIG_ENDIAN, __ARM_SIZEOF_MINIMAL_ENUM. Add __ARM_64BIT_STATE,
__ARM_ARCH_ISA_A64, __ARM_FEATURE_CLZ, __ARM_FEATURE_IDIV,
__ARM_FEATURE_UNALIGNED, __ARM_PCS_AAPCS64, __ARM_SIZEOF_WCHAR_T.
From-SVN: r216267
|
|
when...
2014-10-15 Richard Biener <rguenther@suse.de>
* gimple-fold.c (gimple_fold_call): Properly keep virtual
SSA form up-to-date when devirtualizing a call to
__builtin_unreachable and avoid fixing up EH info here.
From-SVN: r216266
|
|
Remove stray space from ChangeLog entry
From-SVN: r216264
|
|
2014-10-15 Paolo Carlini <paolo.carlini@oracle.com>
* semantics.c (is_instantiation_of_constexpr, literal_type_p,
ensure_literal_type_for_constexpr_object,
constexpr_fundef_hasher::equal, constexpr_fundef_hasher::hash,
retrieve_constexpr_fundef, is_valid_constexpr_fn,
build_anon_member_initialization, build_data_member_initialization,
check_constexpr_bind_expr_vars, check_constexpr_ctor_body_1,
check_constexpr_ctor_body, sort_constexpr_mem_initializers,
build_constexpr_constructor_member_initializers, constexpr_fn_retval,
massage_constexpr_body, cx_check_missing_mem_inits,
register_constexpr_fundef, explain_invalid_constexpr_fn,
constexpr_call_hasher::hash, constexpr_call_hasher::equal,
maybe_initialize_constexpr_call_table, get_function_named_in_call,
get_nth_callarg, lookup_parameter_binding,
cxx_eval_builtin_function_call, adjust_temp_type,
cxx_bind_parameters_in_call, push_cx_call_context,
pop_cx_call_context, cx_error_context, cxx_eval_call_expression,
reduced_constant_expression_p, verify_constant,
cxx_eval_unary_expression, cxx_eval_binary_expression,
cxx_eval_conditional_expression, cxx_eval_array_reference,
cxx_eval_component_reference, cxx_eval_bit_field_ref,
cxx_eval_logical_expression, base_field_constructor_elt,
cxx_eval_bare_aggregate, cxx_eval_vec_init_1, cxx_eval_vec_init,
cxx_fold_indirect_ref, cxx_eval_indirect_ref, non_const_var_error,
cxx_eval_trinary_expression, var_in_constexpr_fn,
cxx_eval_constant_expression, cxx_eval_outermost_constant_expr,
is_sub_constant_expr, cxx_constant_value, maybe_constant_value,
maybe_constant_init, potential_constant_expression_1,
potential_constant_expression, potential_rvalue_constant_expression,
require_potential_constant_expression,
require_potential_rvalue_constant_expression): Moved definitions...
* constexpr.c: ... here, new file.
* Make-lang.in: Update.
* config-lang.in: Likewise.
From-SVN: r216263
|
|
in cp_parser_abort_tentative_parse, at cp/parser.c:25062)
PR c++/63455
c-family/
* c-common.h (CPP_PREPARSED_EXPR): New.
(N_CP_TTYPES): Adjust.
cp/
* parser.c (struct saved_token_sentinel): New.
(cp_parser_statement): Use it.
(cp_parser_start_tentative_firewall): New.
(cp_parser_end_tentative_firewall): New.
(cp_parser_lambda_expression): Use them.
(cp_parser_statement_expr): New.
(cp_parser_primary_expression): Use it.
From-SVN: r216260
|
|
gcc/
* config/i386/sse.md (define_mode_iterator VI_AVX2): Extend
to support AVX-512BW.
(define_mode_iterator VI124_AVX2_48_AVX512F): Remove.
(define_expand "<plusminus_insn><mode>3"): Remove masking support.
(define_insn "*<plusminus_insn><mode>3"): Ditto.
(define_expand "<plusminus_insn><VI48_AVX512VL:mode>3_mask"): New.
(define_expand "<plusminus_insn><VI12_AVX512VL:mode>3_mask"): Ditto.
(define_insn "*<plusminus_insn><VI48_AVX512VL:mode>3_mask"): Ditto.
(define_insn "*<plusminus_insn><VI12_AVX512VL:mode>3_mask"): Ditto.
(define_expand "<sse2_avx2>_andnot<mode>3"): Remove masking support.
(define_insn "*andnot<mode>3"): Ditto.
(define_expand "<sse2_avx2>_andnot<VI48_AVX512VL:mode>3_mask"): New.
(define_expand "<sse2_avx2>_andnot<VI12_AVX512VL:mode>3_mask"): Ditto.
(define_insn "*andnot<VI48_AVX512VL:mode>3<mask_name>"): Ditto.
(define_insn "*andnot<VI12_AVX512VL:mode>3<mask_name>"): Ditto.
(define_insn "*abs<mode>2"): Remove masking support.
(define_insn "abs<VI48_AVX512VL:mode>2_mask"): New.
(define_insn "abs<VI12_AVX512VL:mode>2_mask"): Ditto.
(define_expand "abs<mode>2"): Use VI_AVX2 mode iterator.
Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r216255
|
|
gcc/
* config/i386/predicates.md (define_predicate "constm1_operand"): New.
* config/i386/sse.md
(define_c_enum "unspec"): Add UNSPEC_CVTINT2MASK.
(define_insn "<avx512>_cvt<ssemodesuffix>2mask<VI12_AVX512VL:mode>"): New.
(define_insn "<avx512>_cvt<ssemodesuffix>2mask<VI48_AVX512VL:mode>"): Ditto.
(define_expand "<avx512>_cvtmask2<ssemodesuffix><VI12_AVX512VL:mode>"): Ditto.
(define_insn "*<avx512>_cvtmask2<ssemodesuffix><VI12_AVX512VL:mode>"): Ditto.
(define_expand "<avx512>_cvtmask2<ssemodesuffix><VI48_AVX512VL:mode>"): Ditto.
(define_insn "*<avx512>_cvtmask2<ssemodesuffix><VI48_AVX512VL:mode>"): Ditto.
Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r216254
|
|
gcc/ChangeLog
2014-10-15 Renlin Li <renlin.Li@arm.com>
* config/aarch64/aarch64.h (ARM_DEFAULT_PCS, arm_pcs_variant): Delete.
From-SVN: r216253
|
|
unsigned type to avoid undefined behavior.
* tree-ssa-reassoc.c (optimize_range_tests_diff): Perform
MINUS_EXPR in unsigned type to avoid undefined behavior.
From-SVN: r216252
|
|
From-SVN: r216249
|
|
* doc/invoke.texi: Update to reflect that GNU11 is the default
mode for C.
* c-common.h (c_language_kind): Update comment.
c-family/
* c-opts.c (c_common_init_options): Make -std=gnu11 the default for C.
From-SVN: r216247
|
|
2014-10-15 Richard Biener <rguenther@suse.de>
* hash-table.c: Include bconfig.h if building for the host.
* hash-table.h: Do not include ggc.h on the host but just declare
a few ggc allocation templates.
From-SVN: r216246
|
|
2014-10-15 Joern Rennecke <joern.rennecke@embecosm.com>
Jeff Law <law@redhat.com>
* caller-save.c (replace_reg_with_saved_mem): If saved_mode covers
multiple hard registers, use smaller mode derived from MODE.
Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r216243
|
|
2014-10-15 Richard Biener <rguenther@suse.de>
* g++.dg/torture/pr63419.C: Add -Wno-psabi.
From-SVN: r216241
|
|
ATTRIBUTE_UNUSED.
* explow.c (convert_memory_address_addr_space_1): Mark in_const
as ATTRIBUTE_UNUSED.
From-SVN: r216240
|
|
* loop-unroll.c: (decide_unrolling_and_peeling): Rename to
(decide_unrolling): ... this one.
(peel_loops_completely): Remove.
(decide_peel_simple): Remove.
(decide_peel_once_rolling): Remove.
(decide_peel_completely): Remove.
(peel_loop_simple): Remove.
(peel_loop_completely): Remove.
(unroll_and_peel_loops): Rename to ...
(unroll_loops): ... this one; handle only unrolling.
* cfgloop.h (lpt_dec): Remove LPT_PEEL_COMPLETELY and
LPT_PEEL_SIMPLE.
(UAP_PEEL): Remove.
(unroll_and_peel_loops): Remove.
(unroll_loops): New.
* passes.def: Replace
pass_rtl_unroll_and_peel_loops by pass_rtl_unroll_loops.
* loop-init.c (gate_rtl_unroll_and_peel_loops,
rtl_unroll_and_peel_loops): Rename to ...
(gate_rtl_unroll_loops, rtl_unroll_loops): ... these; update.
(pass_rtl_unroll_and_peel_loops): Rename to ...
(pass_rtl_unroll_loops): ... this one.
* tree-pass.h (make_pass_rtl_unroll_and_peel_loops): Remove.
(make_pass_rtl_unroll_loops): New.
* tree-ssa-loop-ivcanon.c: (estimated_peeled_sequence_size, try_peel_loop): New.
(canonicalize_loop_induction_variables): Update.
* gcc.dg/tree-prof/peel-1.c: Update.
* gcc.dg/tree-prof/unroll-1.c: Update.
* gcc.dg/gcc.dg/unroll_1.c: Update.
* gcc.dg/gcc.dg/unroll_2.c: Update.
* gcc.dg/gcc.dg/unroll_3.c: Update.
* gcc.dg/gcc.dg/unroll_4.c: Update.
From-SVN: r216238
|
|
Earlier versions of xtensa FPU used to support preincrement FP load and
store instructions (lsiu/ssiu). Recent FPU supports postincrement FP
load and store instructions only (lsip/ssip). Use configuration macro to
decide which version is available.
2014-10-14 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.h (TARGET_HARD_FLOAT_POSTINC): new macro.
* config/xtensa/xtensa.md (*lsiu, *ssiu): add dependency on
!TARGET_HARD_FLOAT_POSTINC.
(*lsip, *ssip): new instructions.
From-SVN: r216234
|
|
xtensa ISA never implemented FP division, reciprocal, square root and
inverse square root as single opcode. Remove patterns that can emit
them.
2014-10-09 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.md (divsf3, *recipsf2, sqrtsf2, *rsqrtsf2):
remove.
From-SVN: r216233
|