1. 09 Apr, 2018 16 commits
  2. 08 Apr, 2018 10 commits
    • invoke.texi (-Wrestrict, [...]): Tweak text. · de8a29bd
      gcc/ChangeLog:
      
      	* invoke.texi (-Wrestrict, -fprintf-return-value): Tweak text.
      
      From-SVN: r259224
      Martin Sebor committed
    • [NDS32] Add intrinsic functions for interrupt control. · 8b9322f0
      gcc/
      	* config.gcc (nds32le-*-*, nds32be-*-*): Add nds32/nds32_intrinsic.h
      	into tm_file.
      	* config/nds32/constants.md (unspec_volatile_element): Add enum values
      	for interrupt control.
      	* config/nds32/nds32-intrinsic.c: Implementation of intrinsic
      	functions for interrupt control.
      	* config/nds32/nds32-intrinsic.md: Likewise.
      	* config/nds32/nds32_intrinsic.h: Likewise.
      	* config/nds32/nds32.h (nds32_builtins): Likewise.
      
      From-SVN: r259223
      Monk Chiang committed
    • [NDS32] Add strict_aligned_p to machine_function and implement TARGET_EXPAND_TO_RTL_HOOK. · 5f2a98c3
      gcc/
      	* config/nds32/nds32.c (nds32_init_machine_status,
      	nds32_legitimate_index_p, nds32_legitimate_address_p): Consider
      	strict_aligned_p field.
      	(nds32_expand_to_rtl_hook): New function.
      	(TARGET_EXPAND_TO_RTL_HOOK): Define.
      	* config/nds32/nds32.h (machine_function): Add strict_aligned_p field.
      
      From-SVN: r259222
      Chung-Ju Wu committed
    • [NDS32] Implement n7 pipeline. · 63ab910d
      gcc/
      	* config.gcc (nds32*-*-*): Check that n7 is valid to --with-cpu.
      	* config/nds32/nds32-n7.md: New file.
      	* config/nds32/nds32-opts.h (nds32_cpu_type): Add CPU_N7.
      	* config/nds32/nds32-pipelines-auxiliary.c: Implementation for n7
      	pipeline.
      	* config/nds32/nds32-protos.h: More declarations for n7 pipeline.
      	* config/nds32/nds32.md (pipeline_model): Add n7.
      	* config/nds32/nds32.opt (mcpu): Support n7 pipeline cpus.
      	* config/nds32/pipelines.md: Include n7 settings.
      
      Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com>
      
      From-SVN: r259221
      Kito Cheng committed
    • [NDS32] Implement e8 pipeline. · 7c1583bd
      gcc/
      	* config.gcc (nds32*-*-*): Check that e8 is valid to --with-cpu.
      	* config/nds32/nds32-e8.md: New file.
      	* config/nds32/nds32-opts.h (nds32-cpu_type): Add CPU_E8.
      	* config/nds32/nds32-pipelines-auxiliary.c: Implementation for e8
      	pipeline.
      	* config/nds32/nds32-protos.h: More declarations for e8 pipeline.
      	* config/nds32/nds32.md (pipeline_model): Add e8.
      	* config/nds32/nds32.opt (mcpu): Support e8 pipeline cpus.
      	* config/nds32/pipelines.md: Include e8 settings.
      
      Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com>
      
      From-SVN: r259220
      Kito Cheng committed
    • [NDS32] Implement n8 pipeline. · 8fd52141
      gcc/
      	* config.gcc (nds32*-*-*): Check that n6/n8/s8 are valid to --with-cpu.
      	* config/nds32/nds32-n8.md: New file.
      	* config/nds32/nds32-opts.h (nds32_cpu_type): Add CPU_N6 and CPU_N8.
      	* config/nds32/nds32-pipelines-auxiliary.c: Implementation for n8
      	pipeline.
      	* config/nds32/nds32-protos.h: More declarations for n8 pipeline.
      	* config/nds32/nds32-utils.c: More implementations for n8 pipeline.
      	* config/nds32/nds32.md (pipeline_model): Add n8.
      	* config/nds32/nds32.opt (mcpu): Support n8 pipeline cpus.
      	* config/nds32/pipelines.md: Include n8 settings.
      
      Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com>
      
      From-SVN: r259219
      Kito Cheng committed
    • [NDS32] Implment n9 pipeline. · b99353a2
      gcc/
      	* config.gcc (nds32*): Add nds32-utils.o into extra_objs.
      	* config/nds32/nds32-n9-2r1w.md: New file.
      	* config/nds32/nds32-n9-3r2w.md: New file.
      	* config/nds32/nds32-opts.h (nds32_cpu_type, nds32_mul_type,
      	nds32_register_ports): New or modify for cpu n9.
      	* config/nds32/nds32-pipelines-auxiliary.c: Implementation for n9
      	pipeline.
      	* config/nds32/nds32-protos.h: More declarations for n9 pipeline.
      	* config/nds32/nds32-utils.c: New file.
      	* config/nds32/nds32.h (TARGET_PIPELINE_N9, TARGET_PIPELINE_SIMPLE,
      	TARGET_MUL_SLOW): Define.
      	* config/nds32/nds32.md (pipeline_model): New attribute.
      	* config/nds32/nds32.opt (mcpu, mconfig-mul, mconfig-register-ports):
      	New options that support cpu n9.
      	* config/nds32/pipelines.md: Include n9 settings.
      	* config/nds32/t-nds32 (nds32-utils.o): Add dependency.
      
      Co-Authored-By: Chung-Ju Wu <jasonwucj@gmail.com>
      
      From-SVN: r259218
      Kito Cheng committed
    • [NDS32] New option -malways-align and -malign-functions. · 43fa41c1
      gcc/
      	* config/nds32/nds32-md-auxiliary.c (output_cond_branch): Output align
      	information if necessary.
      	(output_cond_branch_compare_zero): Likewise.
      	* config/nds32/nds32.c (nds32_adjust_insn_length): Consider align case.
      	(nds32_target_alignment): Refine for alignment.
      	* config/nds32/nds32.h (NDS32_ALIGN_P): Define.
      	(FUNCTION_BOUNDARY): Modify.
      	* config/nds32/nds32.md (call_internal, call_value_internal): Consider
      	align case.
      	* config/nds32/nds32.opt (malways-align, malign-functions): New.
      
      From-SVN: r259217
      Chung-Ju Wu committed
    • [NDS32] Add intrinsic functions for TLB operation and data prefech. · 57aaf0cc
      gcc/
      	* config/nds32/constants.md (unspec_volatile_element): Add values for
      	TLB operation and data prefetch.
      	* config/nds32/nds32-intrinsic.c: Implementation of intrinsic
      	functions for TLB operation and data prefetch.
      	* config/nds32/nds32-intrinsic.md: Likewise.
      	* config/nds32/nds32_intrinsic.h: Likewise.
      	* config/nds32/nds32.c (nds32_dpref_names): Likewise.
      	(nds32_print_operand): Likewise.
      	* config/nds32/nds32.h (nds32_builtins): Likewise.
      
      From-SVN: r259216
      Monk Chiang committed
    • Daily bump. · 82d800ce
      From-SVN: r259215
      GCC Administrator committed
  3. 07 Apr, 2018 13 commits
    • re PR middle-end/82976 (Error: non-trivial conversion at assignment since r254526) · f913ff2a
      2018-04-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
      	Andrew Pinski <pinsika@gcc.gnu.org>
      
      	PR middle-end/82976
      	* match.pd: Use constant_boolean_node of correct type instead of
      	boolean_true_node or boolean_false_node for simplifying
      	pointer comparisons to zero.
      
      2018-04-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR middle-end/82976
      	* gfortran.dg/realloc_on_assign_16a.f90: New test.
      
      
      Co-Authored-By: Andrew Pinski <pinskia@gcc.gnu.org>
      
      From-SVN: r259212
      Thomas Koenig committed
    • re PR tree-optimization/80021 (untranslateable diagnostic "type variant differs by " #flag ".") · 7c75d646
      	PR tree-optimization/80021
      	* tree.c (verify_type_variant): Make error call in verify_variant_match
      	translatable and remove final full stop.
      
      From-SVN: r259211
      Jakub Jelinek committed
    • [NDS32] Support dwarf exception handling. · ca3a4a55
      gcc/
      	* config/nds32/constants.md (unspec_volatile_element): Add
      	UNSPEC_VOLATILE_EH_RETURN.
      	* config/nds32/nds32-md-auxiliary.c (nds32_output_stack_push,
      	nds32_output_stack_pop): Support dwarf exception handling process.
      	* config/nds32/nds32-protos.h (nds32_dynamic_chain_address): Declare.
      	* config/nds32/nds32.c (nds32_init_machine_status): Support dwarf
      	exception handling process.
      	(nds32_compute_stack_frame): Likewise.
      	(nds32_return_addr_rtx): Likewise.
      	(nds32_initial_elimination_offset): Likewise.
      	(nds32_expand_prologue): Likewise.
      	(nds32_expand_epilogue): Likewise.
      	(nds32_dynamic_chain_address): New function.
      	* config/nds32/nds32.h (machine_function): Add fields for dwarf
      	exception handling.
      	(DYNAMIC_CHAIN_ADDRESS): Define.
      	(EH_RETURN_DATA_REGNO): Define.
      	(EH_RETURN_STACKADJ_RTX): Define.
      	* config/nds32/nds32.md (eh_return, nds32_eh_return): Implement
      	patterns for dwarf exception handling.
      
      From-SVN: r259210
      Chung-Ju Wu committed
    • [NDS32] Clean up nds32.h. · 30044989
      gcc/
      	* config/nds32/nds32.h: Clean up obsolete macros.
      
      From-SVN: r259209
      Chung-Ju Wu committed
    • [NDS32] Add intrinsic functions for particular instructions. · 2feae6cd
      gcc/
      	* config/nds32/constants.md (unspec_element, unspec_volatile_element):
      	Add enum values for particular instructions.
      	* config/nds32/nds32-intrinsic.c: Implementation of expanding
      	particular intrinsic functions.
      	* config/nds32/nds32-intrinsic.md: Likewise.
      	* config/nds32/nds32_intrinsic.h: Likewise.
      	* config/nds32/nds32.h (nds32_builtins): Likewise.
      	* config/nds32/nds32.md (type): Add pbsad and pbsada.
      	(btst, ave): New patterns for particular instructions.
      
      From-SVN: r259208
      Monk Chiang committed
    • [NDS32] Add intrinsic functions for atomic load/store and memory sync. · 154e3ea6
      gcc/
      	* config/nds32/constants.md (unspec_element, unspec_volatile_element):
      	Add enum values for atomic load/store and memory sync.
      	* config/nds32/nds32-intrinsic.c: Implementation for atomic load/store
      	and memory sync.
      	* config/nds32/nds32-intrinsic.md: Likewise.
      	* config/nds32/nds32_intrinsic.h: Likewise.
      	* config/nds32/nds32.h (nds32_builtins): Likewise.
      
      From-SVN: r259207
      Monk Chiang committed
    • re PR tree-optimization/85257 (wrong code with -O -fno-tree-ccp and reading zeroed vector member) · eda71a9e
      	PR tree-optimization/85257
      	* fold-const.c (native_encode_vector): If not all elts could fit
      	and off is -1, return 0 rather than offset.
      	* tree-ssa-sccvn.c (vn_reference_lookup_3): Pass
      	(offseti - offset2) / BITS_PER_UNIT as 4th argument to
      	native_encode_expr.  Verify len * BITS_PER_UNIT >= maxsizei.  Don't
      	adjust buffer in native_interpret_expr call.
      
      	* gcc.dg/pr85257.c: New test.
      
      From-SVN: r259206
      Jakub Jelinek committed
    • [NDS32] Add intrinsic functions for cache control. · f1a0afe2
      gcc/
      	* config/nds32/constants.md (unspec_volatile_element): Add cache
      	control enum values.
      	* config/nds32/nds32-intrinsic.c: Add cache control expand functions.
      	* config/nds32/nds32-intrinsic.md: Add cache control patterns.
      	* config/nds32/nds32.c (nds32_cctl_names): New.
      	(nds32_print_operand): Handle cache control register names.
      	* config/nds32/nds32.h (nds32_builtins): New enum values.
      	* config/nds32/nds32_intrinsic.h: Add cache control enum types and
      	macros.
      	* config/nds32/nds32.md (type): Add mmu.
      	* config/nds32/pipelines.md (simple_insn): Add mmu.
      
      From-SVN: r259205
      Monk Chiang committed
    • [NDS32] Remove unused insn type: call. · 79f0e157
      gcc/
      	* config/nds32/nds32.md (type): Remove call.
      	* config/nds32/pipelines.md (simple_insn): Likewise.
      
      From-SVN: r259204
      Chung-Ju Wu committed
    • [NDS32] Add intrinsic functions for FPU. · 0bb4423d
      gcc/
      	* config/nds32/constants.md (unspec_volatile_element): Add
      	UNSPEC_VOLATILE_FMFCSR, UNSPEC_VOLATILE_FMTCSR and
      	UNSPEC_VOLATILE_FMFCFG.
      	* config/nds32/nds32-intrinsic.c (bdesc_noarg): New builtin
      	description for fmfcfg and fmfcsr.
      	(bdesc_1arg): Add fmtcsr.
      	(bdesc_2arg): Add fcpynss, fcpyss, fcpynsd and fcpysd.
      	(nds32_expand_builtin_impl): Deal with FPU intrinsic functions.
      	* config/nds32/nds32-intrinsic.md (unspec_fcpynsd, unspec_fcpysd,
      	unspec_fcpynss, unspec_fcpysd, unspec_fcpyss, unspec_fmfcsr,
      	unspec_fmfcfg): New patterns.
      	* config/nds32/nds32.h (nds32_builtins): Add NDS32_BUILTIN_FMFCFG,
      	NDS32_BUILTIN_FMFCSR, NDS32_BUILTIN_FMTCSR, NDS32_BUILTIN_FCPYNSS,
      	NDS32_BUILTIN_FCPYSS,NDS32_BUILTIN_FCPYNSD and NDS32_BUILTIN_FCPYSD.
      	* config/nds32/nds32_intrinsic.h (__nds32__fcpynsd, __nds32__fcpynss,
      	__nds32__fcpysd, __nds32__fcpyss, __nds32__fmfcsr, __nds32__fmtcsr,
      	__nds32__fmfcfg): Define.
      
      From-SVN: r259203
      Monk Chiang committed
    • [NDS32] Add more intrinsic register names. · 2095a9d5
      gcc/
      	* config/nds32/nds32.c (nds32_intrinsic_register_names): Add more
      	intrinsic register names.
      	* config/nds32/nds32_intrinsic.h (nds32_intrinsic_registers): Add more
      	intrinsic register enum values and macros.
      
      From-SVN: r259202
      Monk Chiang committed
    • [NDS32] Support [$ra + $rb << 3] form for load/store address. · f62a2af5
      gcc/
      	* config/nds32/nds32.c (nds32_legitimate_index_p): Modify condition
      	for load/store addressing form.
      	(nds32_print_operand_address): Likewise.
      
      From-SVN: r259201
      Chung-Ju Wu committed
    • Daily bump. · e0617fb6
      From-SVN: r259200
      GCC Administrator committed
  4. 06 Apr, 2018 1 commit
    • re PR middle-end/85196 (ICE in extract_insn, at recog.c:2311: unrecognizable insn) · 69128a17
      	PR target/85196
      	* config/sparc/sparc.c (sparc_expand_move): Deal with symbolic operands
      	based on LABEL_REF.  Remove useless assertion.
      	(pic_address_needs_scratch): Fix formatting.
      	(sparc_legitimize_pic_address): Minor tweaks.
      	(sparc_delegitimize_address): Adjust assertion accordingly.
      	* config/sparc/sparc.md (movsi_pic_label_ref): Change label_ref_operand
      	into symbolic_operand.
      	(movsi_high_pic_label_ref): Likewise.
      	(movsi_lo_sum_pic_label_ref): Likewise.
      	(movdi_pic_label_ref): Likewise.
      	(movdi_high_pic_label_ref): Likewise.
      	(movdi_lo_sum_pic_label_ref): Likewise.
      
      From-SVN: r259194
      Eric Botcazou committed