1. 02 May, 2018 8 commits
  2. 01 May, 2018 16 commits
  3. 30 Apr, 2018 16 commits
    • PR c++/84701 - unsigned typeof. · fe43c635
      	* decl.c (grokdeclarator): Overhaul diagnostics for invalid use
      	of long/short/signed/unsigned.
      
      From-SVN: r259780
      Jason Merrill committed
    • PR c++/85305 - pack in lambda init-capture. · f026530a
      	* parser.c (cp_parser_initializer): Add subexpression_p parm; don't
      	check_for_bare_parameter_packs in a subexpression.
      	(cp_parser_lambda_introducer): Use it.
      
      From-SVN: r259779
      Jason Merrill committed
    • argv.c (expandargv): Fix memory leak for expanded arguments. · d6df811e
             * argv.c (expandargv): Fix memory leak for expanded
              arguments.
      
      From-SVN: r259775
      Daniel van Gerpen committed
    • Clarify documentation for -fpie and -fPIE · 98c2d5ae
      	* doc/invoke.texi (-fpie, -fPIE): Fix grammar and clarify
      	interaction with -pie.
      
      From-SVN: r259774
      Jonathan Wakely committed
    • selftest.h: fix alphabetization of per-source-file selftest declarations · 2099cb2d
      gcc/ChangeLog:
      	* selftest.h: Fix alphabetization of per-source-file selftest
      	declarations.
      
      From-SVN: r259773
      David Malcolm committed
    • PR c++/61982 - dead stores to destroyed objects. · cdc18417
      gcc/cp/
      	* call.c (build_trivial_dtor_call): New, assigns a clobber.
      	(build_over_call, build_special_member_call): Use it.
      	* cp-tree.h: Declare it.
      	* init.c (build_delete): Remove trivial path.
      gcc/
      	* gimplify.c (gimplify_modify_expr): Simplify complex lvalue on LHS
      	of clobber.
      
      From-SVN: r259772
      Jason Merrill committed
    • init.c (build_dtor_call): Use build_special_member_call. · 4d20f490
      	* init.c (build_dtor_call): Use build_special_member_call.
      
      	(build_delete): Remove redundant uses of save_addr.
      
      From-SVN: r259771
      Jason Merrill committed
    • tree.c (build_clobber): New. · 94b2a1e5
      	* tree.c (build_clobber): New.
      
      	* tree.h: Declare it.
      	* gimplify.c (gimplify_bind_expr, gimplify_target_expr): Use it.
      
      From-SVN: r259770
      Jason Merrill committed
    • Use char_span for return type of location_get_source_line · 7761dfbe
      location_get_source_line returns a const char * that isn't 0-terminated,
      writing back a length through an int * param.
      
      This is error-prone, as all call-sites have to take into account the
      lack of 0-termination, and respect the length of the buffer.
      
      It's cleaner to bundle together this pointer+length state into a class,
      so this patch does so, reusing the "char_span" class that I introduced
      in r250187 (as part of the fix for PR c/81405).
      
      The patch also adds assertions to all access to the char_span.
      
      gcc/c-family/ChangeLog:
      	* c-format.c (get_corrected_substring): Update for
      	location_get_source_line returning a char_span.  Use a char_span
      	when handling the prefix of the correction.
      	* c-indentation.c (get_visual_column): Update for
      	location_get_source_line returning a char_span.
      	(get_first_nws_vis_column): Likewise.
      
      gcc/ChangeLog:
      	* diagnostic-show-locus.c (layout::layout): Update for
      	location_get_source_line returning a char_span.
      	(struct char_span): Move to input.h.
      	(struct correction): Update for fields in char_span becoming
      	private.
      	(struct source_line): Update for location_get_source_line
      	returning a char_span.
      	(layout::print_line): Likewise.
      	* edit-context.c (edited_file::print_content): Likewise.
      	(edited_file::print_diff_hunk): Likewise.
      	(edited_file::print_run_of_changed_lines): Likewise.
      	(edited_file::get_num_lines): Likewise.
      	(edited_line::edited_line): Likewise.
      	* final.c (asm_show_source): Likewise.
      	* input.c (location_get_source_line): Convert return type
      	from const char * to char_span, losing the final "line_len"
      	param.
      	(dump_location_info): Update for the above.
      	(get_substring_ranges_for_loc): Likewise.  Use a char_span
      	when handling the literal within the line.
      	(test_reading_source_line): Update for location_get_source_line
      	returning a char_span.
      	* input.h (class char_span): Move here from
      	diagnostic-show-locus.c, converting from a struct to a class.
      	Make data members private.
      	(char_span::operator bool): New.
      	(char_span::length): New.
      	(char_span::get_buffer): New.
      	(char_span::operator[]): New.
      	(char_span::subspan): Make const.
      	(char_span::xstrdup): New.
      	(location_get_source_line): Convert return type from const char *
      	to char_span, losing the final "line_size" param.
      
      gcc/testsuite/ChangeLog:
      	* gcc.dg/plugin/diagnostic_plugin_test_show_locus.c
      	(test_show_locus): Update for location_get_source_line returning a
      	char_span.  Use char_span for handling words in the
      	"test_many_nested_locations" fix-it example.
      
      From-SVN: r259768
      David Malcolm committed
    • lto-wrapper.c (ltrans_priorities): New static var. · b6e33d73
      	* lto-wrapper.c (ltrans_priorities): New static var.
      	(cmp_priority): New.
      	(run_gcc): Read priorities and if doing parallel build order
      	the Makefile by them.
      
      	* lto.c (cmp_partitions_size): Remove.
      	(lto_wpa_write_files): Also output priorities; do not sort partitions.
      	(cmp_partition_order): Move to ...
      	* lto-partition.c (cmp_partition_order): ...
      	(lto_1_to_1_map): Sort partitions.
      
      From-SVN: r259767
      Jan Hubicka committed
    • input.h: use STATIC_ASSERT · fee69672
      gcc/ChangeLog:
      	* input.h (builtins_location_check): Convert to a STATIC_ASSERT.
      
      From-SVN: r259766
      David Malcolm committed
    • tree-cfg.c (verify_address): Remove base argument, add flag whether to check… · c7b8bff7
      tree-cfg.c (verify_address): Remove base argument, add flag whether to check TREE_ADDRESSABLE and do that.
      
      2018-04-30  Richard Biener  <rguenther@suse.de>
      
      	* tree-cfg.c (verify_address): Remove base argument, add
      	flag whether to check TREE_ADDRESSABLE and do that.
      	(verify_expr): Remove.
      	(verify_types_in_gimple_reference): Add pieces from verify_expr.
      	(verify_gimple_assign_single): Likewise.
      	(verify_gimple_switch): Likewise.
      	(verify_expr_location_1): Dereference tp once.  Add (disabled)
      	piece from verify_expr.
      	(verify_gimple_in_cfg): Do not call verify_expr on all ops.
      
      From-SVN: r259765
      Richard Biener committed
    • [ARC] Clear the instruction cache using syscalls. · 6fe3b9fd
      Clear the instruction cache from `beg' to `end'.  This makes an inline
      system call to SYS_cacheflush.
      
      gcc/
      2017-03-28  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/linux.h (CLEAR_INSN_CACHE): Define.
      
      From-SVN: r259764
      Claudiu Zissulescu committed
    • [ARC] Cleanup sdata handling. · e0be3321
      Clean up how we handle small data load/store operations.
      
      gcc/
      2018-01-18  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc-protos.h (prepare_extend_operands): Remove.
      	(small_data_pattern): Likewise.
      	(arc_rewrite_small_data): Likewise.
      	* config/arc/arc.c (LEGITIMATE_SMALL_DATA_OFFSET_P): Remove.
      	(LEGITIMATE_SMALL_DATA_ADDRESS_P): Likewise.
      	(get_symbol_alignment): New function.
      	(legitimate_small_data_address_p): Likewise.
      	(legitimate_scaled_address): Update, call
      	legitimate_small_data_address_p.
      	(output_sdata): New static variable.
      	(arc_print_operand): Update how we handle small data operands.
      	(arc_print_operand_address): Likewise.
      	(arc_legitimate_address_p): Update, use
      	legitimate_small_data_address_p.
      	(arc_rewrite_small_data_p): Remove.
      	(arc_rewrite_small_data_1): Likewise.
      	(arc_rewrite_small_data): Likewise.
      	(small_data_pattern): Likewise.
      	(compact_sda_memory_operand): Update to use
      	legitimate_small_data_address_p and get_symbol_alignment.
      	(prepare_move_operands): Don't rewite sdata pattern.
      	(prepare_extend_operands): Remove.
      	* config/arc/arc.md (zero_extendqihi2): Don't rewrite sdata
      	pattern.
      	(zero_extendqisi2): Likewise.
      	(zero_extendhisi2): Likewise.
      	(extendqihi2): Likewise.
      	(extendqisi2): Likewise.
      	(extendhisi2): Likewise.
      	(addsi3): Likewise.
      	(subsi3): Likewise.
      	(andsi3): Likewise.
      	* config/arc/constraints.md (Usd): Change it to memory constraint.
      
      gcc/testsuite
      2018-01-18  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* gcc.target/arc/interrupt-8.c: Update test.
      	* gcc.target/arc/loop-4.c: Likewise.
      	* gcc.target/arc/loop-hazard-1.c: Likewise.
      	* gcc.target/arc/sdata-3.c: Likewise.
      
      From-SVN: r259763
      Claudiu Zissulescu committed
    • [ARC] Update movhi and movdi patterns. · 2295aa75
      Allow signed 6-bit short immediates into st[d] instructions.
      
      2017-10-19  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* config/arc/arc.c (arc_split_move): Allow signed 6-bit constants
      	as source of std instructions.
      	* config/arc/arc.md (movsi_insn): Update pattern predicate to
      	allow 6-bit constants as source for store instructions.
      	(movdi_insn): Update instruction pattern to allow 6-bit constants
      	as source for store instructions.
      
      testsuite/
      2017-10-19  Claudiu Zissulescu  <claziss@synopsys.com>
      
      	* gcc.target/arc/store-merge-1.c: New test.
      	* gcc.target/arc/add_n-combine.c: Update test.
      
      From-SVN: r259762
      Claudiu Zissulescu committed
    • * doc/invoke.texi (-fdebug-types-section): Fix grammar. · e2df7e6d
      From-SVN: r259761
      Jonathan Wakely committed