1. 20 Aug, 2014 19 commits
  2. 19 Aug, 2014 21 commits
    • re PR preprocessor/51303 (-Wmissing-include-dirs warnings reported as [enabled by default]) · b4413594
      gcc/ChangeLog:
      
      2014-08-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR preprocessor/51303
      	* incpath.c (remove_duplicates): Use cpp_warning.
      
      gcc/c-family/ChangeLog:
      
      2014-08-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR preprocessor/51303
      	* c-common.c (struct reason_option_codes_t option_codes):
      	Add CPP_W_MISSING_INCLUDE_DIRS. Sort alphabetically.
      
      gcc/testsuite/ChangeLog:
      
      2014-08-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR preprocessor/51303
      	* gcc.dg/cpp/Wmissingdirs.c: Test for the warning option.
      
      From-SVN: r214201
      Manuel López-Ibáñez committed
    • re PR preprocessor/60975 (-Wvariadic-macros does not print warning) · 43f9a13c
      gcc/ChangeLog:
      
      2014-08-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c/60975
      	PR c/53063
      	* doc/options.texi (CPP): Document it.
      	* doc/invoke.texi (Wvariadic-macros): Fix documentation.
      	* optc-gen.awk: Handle CPP.
      	* opth-gen.awk: Likewise.
      
      gcc/c-family/ChangeLog:
      
      2014-08-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c/60975
      	PR c/53063
      	* c.opt (Wvariadic-macros): Use CPP and LangEnabledBy.
      	* c-opts.c (c_common_handle_option): Call cpp_handle_option_auto.
      	(c_common_post_options): Call init_global_opts_from_cpp.
      	(sanitize_cpp_opts): Do not handle Wvariadic-macros here.
      
      gcc/testsuite/ChangeLog:
      
      2014-08-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c/60975
      	PR c/53063
      	* gcc.dg/cpp/Wvariadic-1p.c: New test.
      
      From-SVN: r214200
      Manuel López-Ibáñez committed
    • * lib/target-supports.exp · cd0059f5
      	(check_effective_target_arm_v8_neon_ok_nocache): Add
      	"-march-armv8-a" to compile flags.
      
      From-SVN: r214198
      Janis Johnson committed
    • Return types of unlink_insn_chain and duplicate_insn_chain · a90c614a
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (unlink_insn_chain): Strengthen return type from rtx to
      	rtx_insn *.
      	(duplicate_insn_chain): Likewise.
      	* cfgrtl.c (unlink_insn_chain): Strengthen return type from rtx to
      	rtx_insn *, also for locals "prevfirst" and "nextlast".  Add a
      	checked cast for now (until we can strengthen the params in the
      	same way).
      	(duplicate_insn_chain): Likewise.
      
      From-SVN: r214197
      David Malcolm committed
    • next_cc0_user and prev_cc0_setter scaffolding · 75b46023
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (next_cc0_user): Strengthen return type from rtx to
      	rtx_insn *.
      	(prev_cc0_setter): Likewise.
      
      	* emit-rtl.c (next_cc0_user): Strengthen return type from rtx to
      	rtx_insn *, adding checked casts for now as necessary.
      	(prev_cc0_setter): Likewise.
      
      From-SVN: r214196
      David Malcolm committed
    • emit_move et al return rtx_insn * · f3222b79
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* expr.h (emit_move_insn): Strengthen return type from rtx to
      	rtx_insn *.
      	(emit_move_insn_1): Likewise.
      	(emit_move_complex_push): Likewise.
      	(emit_move_complex_parts): Likewise.
      
      	* expr.c (emit_move_via_integer): Strengthen return type from rtx
      	to rtx_insn *.  Replace use of NULL_RTX with NULL when working
      	with insns.
      	(emit_move_complex_push): Strengthen return type from rtx to
      	rtx_insn *.
      	(emit_move_complex): Likewise, also for local "ret".
      	(emit_move_ccmode): Likewise.
      	(emit_move_multi_word): Likewise for return type and locals
      	"last_insn", "seq".
      	(emit_move_insn_1): Likewise for return type and locals "result",
      	"ret".
      	(emit_move_insn): Likewise for return type and local "last_insn".
      	(compress_float_constant): Likewise.
      
      From-SVN: r214195
      David Malcolm committed
    • emit_* functions return rtx_insn · cd459bf8
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* emit-rtl.h (emit_copy_of_insn_after): Strengthen return type
      	from rtx to rtx_insn *.
      
      	* rtl.h (emit_insn_before): Likewise.
      	(emit_insn_before_noloc): Likewise.
      	(emit_insn_before_setloc): Likewise.
      	(emit_jump_insn_before): Likewise.
      	(emit_jump_insn_before_noloc): Likewise.
      	(emit_jump_insn_before_setloc): Likewise.
      	(emit_call_insn_before): Likewise.
      	(emit_call_insn_before_noloc): Likewise.
      	(emit_call_insn_before_setloc): Likewise.
      	(emit_debug_insn_before): Likewise.
      	(emit_debug_insn_before_noloc): Likewise.
      	(emit_debug_insn_before_setloc): Likewise.
      	(emit_label_before): Likewise.
      	(emit_insn_after): Likewise.
      	(emit_insn_after_noloc): Likewise.
      	(emit_insn_after_setloc): Likewise.
      	(emit_jump_insn_after): Likewise.
      	(emit_jump_insn_after_noloc): Likewise.
      	(emit_jump_insn_after_setloc): Likewise.
      	(emit_call_insn_after): Likewise.
      	(emit_call_insn_after_noloc): Likewise.
      	(emit_call_insn_after_setloc): Likewise.
      	(emit_debug_insn_after): Likewise.
      	(emit_debug_insn_after_noloc): Likewise.
      	(emit_debug_insn_after_setloc): Likewise.
      	(emit_label_after): Likewise.
      	(emit_insn): Likewise.
      	(emit_debug_insn): Likewise.
      	(emit_jump_insn): Likewise.
      	(emit_call_insn): Likewise.
      	(emit_label): Likewise.
      	(gen_clobber): Likewise.
      	(emit_clobber): Likewise.
      	(gen_use): Likewise.
      	(emit_use): Likewise.
      	(emit): Likewise.
      
      	(emit_barrier_before): Strengthen return type from rtx to
      	rtx_barrier *.
      	(emit_barrier_after): Likewise.
      	(emit_barrier): Likewise.
      
      	* emit-rtl.c (emit_pattern_before_noloc):  Strengthen return type
      	from rtx to rtx_insn *.  Add checked casts for now when converting
      	"last" from rtx to rtx_insn *.
      	(emit_insn_before_noloc): Likewise for return type.
      	(emit_jump_insn_before_noloc): Likewise.
      	(emit_call_insn_before_noloc): Likewise.
      	(emit_debug_insn_before_noloc): Likewise.
      	(emit_barrier_before): Strengthen return type and local "insn"
      	from rtx to rtx_barrier *.
      	(emit_label_before): Strengthen return type from rtx to
      	rtx_insn *.  Add checked cast for now when returning param
      	(emit_pattern_after_noloc): Strengthen return type from rtx to
      	rtx_insn *.  Add checked casts for now when converting "last" from
      	rtx to rtx_insn *.
      	(emit_insn_after_noloc): Strengthen return type from rtx to
      	rtx_insn *.
      	(emit_jump_insn_after_noloc): Likewise.
      	(emit_call_insn_after_noloc): Likewise.
      	(emit_debug_insn_after_noloc): Likewise.
      	(emit_barrier_after): Strengthen return type from rtx to
      	rtx_barrier *.
      	(emit_label_after): Strengthen return type from rtx to rtx_insn *.
      	Add checked cast for now when converting "label" from rtx to
      	rtx_insn *.
      	(emit_pattern_after_setloc): Strengthen return type from rtx to
      	rtx_insn *.  Add checked casts for now when converting "last" from
      	rtx to rtx_insn *.
      	(emit_pattern_after): Strengthen return type from rtx to
      	rtx_insn *.
      	(emit_insn_after_setloc): Likewise.
      	(emit_insn_after): Likewise.
      	(emit_jump_insn_after_setloc): Likewise.
      	(emit_jump_insn_after): Likewise.
      	(emit_call_insn_after_setloc): Likewise.
      	(emit_call_insn_after): Likewise.
      	(emit_debug_insn_after_setloc): Likewise.
      	(emit_debug_insn_after): Likewise.
      	(emit_pattern_before_setloc): Likewise.  Add checked casts for now
      	when converting "last" from rtx to rtx_insn *.
      	(emit_pattern_before): Strengthen return type from rtx to
      	rtx_insn *.
      	(emit_insn_before_setloc): Likewise.
      	(emit_insn_before): Likewise.
      	(emit_jump_insn_before_setloc): Likewise.
      	(emit_jump_insn_before): Likewise.
      	(emit_call_insn_before_setloc): Likewise.
      	(emit_call_insn_before): Likewise.
      	(emit_debug_insn_before_setloc): Likewise.
      	(emit_debug_insn_before): Likewise.
      	(emit_insn): Strengthen return type and locals "last", "insn",
      	"next" from rtx to rtx_insn *.  Add checked cast to rtx_insn
      	within cases where we know we have an insn.
      	(emit_debug_insn): Likewise.
      	(emit_jump_insn): Likewise.
      	(emit_call_insn): Strengthen return type and local "insn" from rtx
      	to rtx_insn *.
      	(emit_label): Strengthen return type from rtx to rtx_insn *.  Add
      	a checked cast to rtx_insn * for now on "label".
      	(emit_barrier): Strengthen return type from rtx to rtx_barrier *.
      	(emit_clobber): Strengthen return type from rtx to rtx_insn *.
      	(emit_use): Likewise.
      	(gen_use): Likewise, also for local "seq".
      	(emit): Likewise for return type and local "insn".
      	(rtx_insn): Likewise for return type and local "new_rtx".
      
      	* cfgrtl.c (emit_barrier_after_bb): Strengthen local "barrier"
      	from rtx to rtx_barrier *.
      
      	* config/sh/sh.c (output_stack_adjust): Since emit_insn has
      	changed return type from rtx to rtx_insn *, we must update
      	"emit_fn" type, and this in turn means updating...
      	(frame_insn): ...this.  Strengthen return type from rtx to
      	rtx_insn *.  Introduce a new local "insn" of the appropriate type.
      
      From-SVN: r214194
      David Malcolm committed
    • emit_jump_table_data returns an rtx_jump_table_data * · 4598afdd
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* emit-rtl.c (emit_jump_table_data): Strengthen return type from
      	rtx to rtx_jump_table_data *.  Also for local.
      	* rtl.h (emit_jump_table_data): Likewise.
      
      From-SVN: r214193
      David Malcolm committed
    • Convert various rtx to rtx_note * · 66e8df53
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* basic-block.h (create_basic_block_structure): Strengthen third
      	param "bb_note" from rtx to rtx_note *.
      	* rtl.h (emit_note_before): Strengthen return type from rtx to
      	rtx_note *.
      	(emit_note_after): Likewise.
      	(emit_note): Likewise.
      	(emit_note_copy): Likewise.  Also, strengthen param similarly.
      	* function.h (struct rtl_data): Strengthen field
      	"x_stack_check_probe_note" from rtx to rtx_note *.
      
      	* cfgexpand.c (expand_gimple_basic_block): Strengthen local "note"
      	from rtx to rtx_note *.
      	* cfgrtl.c (create_basic_block_structure): Strengthen third param
      	"bb_note" from rtx to rtx_note *.
      	(duplicate_insn_chain): Likewise for local "last".  Add a checked cast
      	when calling emit_note_copy.
      	* emit-rtl.c (make_note_raw): Strengthen return type from rtx to
      	rtx_note *.
      	(emit_note_after): Likewise.
      	(emit_note_before): Likewise.
      	(emit_note_copy): Likewise.  Also, strengthen param similarly.
      	(emit_note): Likewise.
      	* except.c (emit_note_eh_region_end): Likewise for return type.
      	Strengthen local "next" from rtx to rtx_insn *.
      	(convert_to_eh_region_ranges): Strengthen local "note"
      	from rtx to rtx_note *.
      	* final.c (change_scope): Likewise.
      	(reemit_insn_block_notes): Likewise, for both locals named "note".
      	Also, strengthen local "insn" from rtx to rtx_insn *.
      	* haifa-sched.c (sched_extend_bb): Strengthen local "note" from
      	rtx to rtx_note *.
      	* reg-stack.c (compensate_edge): Likewise for local "after". Also,
      	strengthen local "seq" from rtx to rtx_insn *.
      	* reload1.c (reload_as_needed): Strengthen local "marker" from rtx
      	to rtx_note *.
      	* sel-sched-ir.c (bb_note_pool): Strengthen from rtx_vec_t to
      	vec<rtx_note *>.
      	(get_bb_note_from_pool): Strengthen return type from rtx to
      	rtx_note *.
      	(sel_create_basic_block): Strengthen local "new_bb_note" from
      	insn_t to rtx_note *.
      	* var-tracking.c (emit_note_insn_var_location): Strengthen local
      	"note" from rtx to rtx_note *.
      	(emit_notes_in_bb): Likewise.
      
      From-SVN: r214192
      David Malcolm committed
    • rtl_data.x_parm_birth_insn is an insn · 7a688d52
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* function.h (struct rtl_data): Strengthen field
      	"x_parm_birth_insn" from rtx to rtx_insn *.
      	* function.c (struct assign_parm_data_all): Strengthen fields
      	"first_conversion_insn" and "last_conversion_insn" from rtx to
      	rtx_insn *.
      
      From-SVN: r214191
      David Malcolm committed
    • cfgexpand.c: Use rtx_insn · b47aae36
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* cfgexpand.c (expand_used_vars): Strengthen return type from rtx
      	to rtx_insn *; also for local "var_end_seq".
      	(maybe_dump_rtl_for_gimple_stmt): Likewise for param "since".
      	(maybe_cleanup_end_of_block): Likewise for param "last" and local
      	"insn".
      	(expand_gimple_cond): Likewise for locals "last2" and "last".
      	(mark_transaction_restart_calls): Likewise for local "insn".
      	(expand_gimple_stmt): Likewise for return type and locals "last"
      	and "insn".
      	(expand_gimple_tailcall): Likewise for locals "last2" and "last".
      	(avoid_complex_debug_insns): Likewise for param "insn".
      	(expand_debug_locations): Likewise for locals "insn", "last",
      	"prev_insn" and "insn2".
      	(expand_gimple_basic_block): Likewise for local "last".
      	(construct_exit_block): Likewise for locals "head", "end",
      	"orig_end".
      	(pass_expand::execute): Likewise for locals "var_seq",
      	"var_ret_seq", "next".
      
      From-SVN: r214190
      David Malcolm committed
    • asan_emit_stack_protection returns an insn · 3a4abd2f
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* asan.h (asan_emit_stack_protection): Strengthen return type from
      	rtx to rtx_insn *.
      	* asan.c (asan_emit_stack_protection): Likewise.  Add local
      	"insns" to hold the return value.
      
      From-SVN: r214189
      David Malcolm committed
    • bb_note returns a rtx_note * · ed270997
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* basic-block.h (bb_note): Strengthen return type from rtx to
      	rtx_note *.
      	* sched-int.h (bb_note): Likewise.
      	* cfgrtl.c (bb_note): Likewise.  Add a checked cast to rtx_note *.
      
      From-SVN: r214188
      David Malcolm committed
    • make_insn_raw returns an rtx_insn · 167b9fae
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (make_insn_raw): Strengthen return type from rtx to
      	rtx_insn *.
      
      	* emit-rtl.c (make_insn_raw): Strengthen return type and local
      	"insn" from rtx to rtx_insn *.
      	(make_debug_insn_raw): Strengthen return type from rtx to
      	rtx_insn *; strengthen local "insn" from rtx to rtx_debug_insn *.
      	(make_jump_insn_raw):  Strengthen return type from rtx to
      	rtx_insn *; strengthen local "insn" from rtx to rtx_jump_insn *.
      	(make_call_insn_raw):  Strengthen return type from rtx to
      	rtx_insn *; strengthen local "insn" from rtx to rtx_call_insn *.
      	(emit_pattern_before_noloc): Strengthen return type of "make_raw"
      	callback from rtx to rtx_insn *; likewise for local "insn" and
      	"next", adding a checked cast to rtx_insn in the relevant cases of
      	the switch statement.
      	(emit_pattern_after_noloc): Strengthen return type of "make_raw"
      	callback from rtx to rtx_insn *.
      	(emit_pattern_after_setloc): Likewise.
      	(emit_pattern_after): Likewise.
      	(emit_pattern_before_setloc): Likewise.
      	(emit_pattern_before): Likewise.
      
      From-SVN: r214187
      David Malcolm committed
    • last_call_insn returns an rtx_call_insn * · 049cfc4a
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* emit-rtl.c (last_call_insn): Strengthen return type from rtx to
      	rtx_call_insn *.
      	* rtl.h (is_a_helper <rtx_call_insn *>::test): New overload,
      	accepting an rtx_insn *.
      	(last_call_insn): Strengthen return type from rtx to
      	rtx_call_insn *.
      
      From-SVN: r214186
      David Malcolm committed
    • delete_trivially_dead_insns works on insns · 169d13f5
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (delete_trivially_dead_insns): Strengthen initial param
      	"insns" from rtx to rtx_insn *.
      	* cse.c (delete_trivially_dead_insns): Likewise, also do it for
      	locals "insn" and "prev".
      
      From-SVN: r214185
      David Malcolm committed
    • Make tablejump_p accept a rtx_jump_table_data ** · 8942ee0f
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (tablejump_p): Strengthen third param from rtx * to
      	rtx_jump_table_data **.
      
      	* cfgbuild.c (make_edges): Introduce local "table", using it in
      	place of "tmp" for jump table data.
      	(find_bb_boundaries): Strengthen local "table" from rtx to
      	rtx_jump_table_data *.
      	* cfgcleanup.c (merge_blocks_move_successor_nojumps): Likewise.
      	(outgoing_edges_match): Likewise for locals "table1" and "table2".
      	(try_crossjump_to_edge): Likewise.
      	* cfgrtl.c (try_redirect_by_replacing_jump): Likewise for local
      	"table".
      	(patch_jump_insn): Introduce local "table", using it in place of
      	"tmp" for jump table data.
      	(force_nonfallthru_and_redirect): Introduce local "table", so that
      	call to tablejump_p can receive an rtx_jump_table_data **.  Update
      	logic around the call to overwrite "note" appropriately if
      	tablejump_p returns non-zero.
      	(get_last_bb_insn): Introduce local "table", using it in place of
      	"tmp" for jump table data.
      	* dwarf2cfi.c (create_trace_edges): Likewise.
      
      	* config/arm/arm.c (get_jump_table_size): Strengthen param "insn"
      	from rtx to rtx_jump_table_data *.
      	(create_fix_barrier): Strengthen local "tmp" from rtx to
      	rtx_jump_table_data *.
      	(arm_reorg): Likewise for local "table".
      
      	* config/s390/s390.c (s390_chunkify_start): Likewise.
      
      	* config/spu/spu.c (spu_emit_branch_hint): Likewise.
      
      	* jump.c (delete_related_insns): Strengthen local "lab_next" from
      	rtx to rtx_jump_table_data *.
      
      	* rtlanal.c (tablejump_p): Strengthen param "tablep" from rtx * to
      	rtx_jump_table_data **.  Add a checked cast when writing through
      	the pointer: we know there that local "table" is non-NULL and that
      	JUMP_TABLE_DATA_P (table) holds.
      	(label_is_jump_target_p): Introduce local "table", using it in
      	place of "tmp" for jump table data.
      
      From-SVN: r214184
      David Malcolm committed
    • re PR c++/62153 (warn for bool expression compared with integer different from 0/1) · 04159acf
      	PR c++/62153
      	* doc/invoke.texi: Document -Wbool-compare.
      c-family/
      	* c-common.c (maybe_warn_bool_compare): New function.
      	* c-common.h (maybe_warn_bool_compare): Declare.
      	* c.opt (Wbool-compare): New option.
      c/
      	* c-typeck.c (build_binary_op): If either operand of a comparison
      	is a boolean expression, call maybe_warn_bool_compare.
      cp/
      	* call.c (build_new_op_1): Remember the type of arguments for
      	a comparison.  If either operand of a comparison is a boolean
      	expression, call maybe_warn_bool_compare.
      testsuite/
      	* c-c++-common/Wbool-compare-1.c: New test.
      
      From-SVN: r214183
      Marek Polacek committed
    • entry_of_function returns an insn · 8a2e8325
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* rtl.h (entry_of_function): Strengthen return type from rtx to
      	rtx_insn *.
      	* cfgrtl.c (entry_of_function): Likewise.
      
      From-SVN: r214182
      David Malcolm committed
    • re PR tree-optimization/62091 (ice in before_dom_children) · 27093ee4
      	PR tree-optimization/62091
      	* decl2.c (decl_needed_p): Return true for virtual functions when
      	devirtualizing.
      
      From-SVN: r214181
      Jason Merrill committed
    • Return rtx_insn from get_insns/get_last_insn · 981ac3c7
      2014-08-19  David Malcolm  <dmalcolm@redhat.com>
      
      	* emit-rtl.h (get_insns): Strengthen return type from rtx to
      	rtx_insn *, adding a checked cast for now.
      	(get_last_insn): Likewise.
      
      From-SVN: r214180
      David Malcolm committed