ian [Wed, 2 Sep 2015 00:46:23 +0000 (00:46 +0000)]
compiler: Accept out of range integer -> unicode conversions.
When converting a signed or unsigned integer value into a constant
string, if the integer does not fit into the Go "int" type, the string
will become "\uFFFD."
Fixes golang/go#11525.
Reviewed-on: https://go-review.googlesource.com/13906
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227395
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 2 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227394
138bc75d-0d04-0410-961f-
82ee72b054a4
zadeck [Tue, 1 Sep 2015 23:37:20 +0000 (23:37 +0000)]
fixed misplaced testcase
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227390
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Tue, 1 Sep 2015 23:03:19 +0000 (23:03 +0000)]
[RS6000] Weak functions may not be file local
A weak symbol defined in the current object file may not turn out to
be the definition used at link time, if other copies of the symbol
exist. This means they can't be considered file local.
PR target/67417
* config/rs6000/predicates.md (current_file_function_operand): Don't
return true for weak symbols.
* config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227386
138bc75d-0d04-0410-961f-
82ee72b054a4
mpf [Tue, 1 Sep 2015 22:41:08 +0000 (22:41 +0000)]
MIPS compact branch support
gcc/
* config/mips/mips-opts.h (mips_cb_setting): New enum.
* config/mips/mips-protos.h: Add definitions for
mips_output_jump and mips_output_equal_conditional_branch
* gcc/config/mips/mips.c (MIPS_JR): Change to support the
JIC instruction.
(mips_emit_compare): Add support for the MIPS R6 conditional
compact branches.
(mips_process_sync_loop): Likewise.
(mips_output_order_conditional_branch): Likewise.
(mips16_build_call_stub): Change MIPS_CALL to
mips_output_jump.
(mips_print_operand_punctuation): Update 's' case to only
apply to micromips r2.
(mips_adjust_insn_length): Add support for forbidden slot
hazards.
(mips_avoid_hazard): Likewise.
(mips_reorg_process_insns): Likewise.
(mips_output_jump): New function.
(mips_output_equal_conditional_branch): Likewise.
(mips_output_conditional_branch): Use jrc/bc if compact
branch support is enabled. Ensure the forbidden slots
between the two branch instructions is filled with a nop.
(mips_option_override): Add support to process the compact
branch option and set the correct defaults. Prevent
non-explict relocs being using for MIPS R6.
(mips_trampoline_init): Add compact branch support.
(mips_mult_zero_zero_cost): Allow zero initialisation of
accumulators with TARGET_DSP.
* gcc/config/mips/mips.h (TARGET_CB_NEVER): New define.
(TARGET_CB_MAYBE): New define.
(TARGET_CB_ALWAYS): New define.
(ISA_HAS_DELAY_SLOTS): New define.
(ISA_HAS_COMPACT_BRANCHES): New define.
(ISA_HAS_JRC): New define.
(MIPS_BRANCH_C): New define.
(MIPS_CALL): Removed.
(MICROMIPS_J): Removed.
* config/mips/mips.md (compact_form): New attr.
(hazard): Add support for forbidden slots.
(define_delay): Add support for compact branches.
(*branch_order<mode>): Likewise.
(*branch_order<mode>_inverted): Likewise.
(*branch_equality<mode>): Likewise.
(*branch_equality<mode>_inverted): Likewise.
(*jump_absolute): Likewise.
(*jump_pic): Likewise.
(indirect_jump): Use mips_output_jump to produce assembly output.
(tablejump_<mode>"): Likewise.
(*<optab>"): Likewise.
(<optab>_internal): Likewise.
(sibcall_internal): Likewise.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_split): Likewise.
(call_internal_direct): Likewise.
(call_direct_split): Likewise.
(call_value_internal): Likewise.
(call_value_split): Likewise.
(call_value_internal_direct): Likewise.
(call_value_direct_split): Likewise.
(call_value_multiple_internal): Likewise.
(call_value_multiple_split): Likewise.
(mips_get_fcsr_mips16_<mode>): Likewise.
(mips_set_fcsr_mips16_<mode>): Likewise.
(tls_get_tp_mips16_<mode>): Likewise.
* config/mips/mips.opt: Add -mcompact-branches option.
* config/mips/predicates.md (order_operator): Ensure the
conditional compact branches are only used if the ISA them.
* doc/invoke.texi: Document -mcompact-branches option.
gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Handle the
dependencies between ISA level and compact-branches.
* gcc.target/mips/branch-10.c: Update expected output to allow
compact forms of b/bal.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/branch-3.c: Likewise.
* gcc.target/mips/branch-4.c: Likewise.
* gcc.target/mips/branch-5.c: Likewise.
* gcc.target/mips/branch-6.c: Likewise.
* gcc.target/mips/branch-7.c: Likewise.
* gcc.target/mips/branch-8.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.
* gcc.target/mips/branch-cost-1.c: Likewise.
* gcc.target/mips/call-1.c: Likewise.
* gcc.target/mips/call-2.c: Likewise.
* gcc.target/mips/call-3.c: Likewise.
* gcc.target/mips/call-4.c: Likewise.
* gcc.target/mips/call-5.c: Likewise.
* gcc.target/mips/call-6.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.
* gcc.target/mips/near-far-1.c: Likewise.
* gcc.target/mips/near-far-2.c: Likewise.
* gcc.target/mips/near-far-3.c: Likewise.
* gcc.target/mips/near-far-4.c: Likewise.
* gcc.target/mips/umips-branch-3.c: Ensure the test is
run with compact branches allowed.
* gcc.target/mips/compact-branches-1.c: New file.
* gcc.target/mips/compact-branches-2.c: Likewise.
* gcc.target/mips/compact-branches-3.c: Likewise.
* gcc.target/mips/compact-branches-4.c: Likewise.
* gcc.target/mips/compact-branches-5.c: Likewise.
* gcc.target/mips/compact-branches-6.c: Likewise.
* gcc.target/mips/compact-branches-7.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227385
138bc75d-0d04-0410-961f-
82ee72b054a4
jamesbowman [Tue, 1 Sep 2015 19:38:16 +0000 (19:38 +0000)]
* MAINTAINERS: add myself
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227383
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Tue, 1 Sep 2015 19:37:52 +0000 (19:37 +0000)]
2015-09-01 Vladimir Makarov <vmakarov@redhat.com>
PR target/61578
* lra-lives.c (process_bb_lives): Process move pseudos with the
same value for copies and preferences
* lra-constraints.c (match_reload): Create match reload pseudo
with the same value from single dying input pseudo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227382
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Tue, 1 Sep 2015 18:06:10 +0000 (18:06 +0000)]
2015-09-01 Steven G. Kargl <kargl@gcc.gnu.org>
* gfortran.dg/read_dir.f90: XFAIL this testcase on FreeBSD.
Clean-up a created directory if testcase fails.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227381
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Tue, 1 Sep 2015 14:38:42 +0000 (14:38 +0000)]
gcc/
PR target/67405
* tree-chkp.c (chkp_find_bound_slots_1): Add NULL check.
gcc/testsuite/
PR target/67405
* g++.dg/pr67405.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227373
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Tue, 1 Sep 2015 13:52:09 +0000 (13:52 +0000)]
+ * trans-mem.c: Add contributed-by.
+ * trans-mem.h: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227372
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 1 Sep 2015 13:48:29 +0000 (13:48 +0000)]
Don't xfail gcc.dg/vect/no-scevccp-outer-11.c
* gcc.dg/vect/no-scevccp-outer-11.c: Don't xfail scan-tree-dump-times.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227371
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 1 Sep 2015 13:27:17 +0000 (13:27 +0000)]
2015-09-01 Richard Biener <rguenther@suse.de>
* expr.c (expand_expr_real_1): For expanding TERed defs
set the current location to that of the def if not UNKNOWN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227370
138bc75d-0d04-0410-961f-
82ee72b054a4
davids [Tue, 1 Sep 2015 12:40:10 +0000 (12:40 +0000)]
2015-09-01 David Sherwood <david.sherwood@arm.com>
gcc/
* genmodes.c: Add CONST_MODE_UNIT_SIZE modifier.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227369
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Tue, 1 Sep 2015 12:33:51 +0000 (12:33 +0000)]
[RTL-ifcvt] Make non-conditional execution if-conversion more aggressive
* ifcvt.c (struct noce_if_info): Add then_simple, else_simple,
then_cost, else_cost fields. Change branch_cost field to unsigned
int.
(end_ifcvt_sequence): Call set_used_flags on each insn in the
sequence.
Include rtl-iter.h.
(noce_simple_bbs): New function.
(noce_try_move): Bail if basic blocks are not simple.
(noce_try_store_flag): Likewise.
(noce_try_store_flag_constants): Likewise.
(noce_try_addcc): Likewise.
(noce_try_store_flag_mask): Likewise.
(noce_try_cmove): Likewise.
(noce_try_minmax): Likewise.
(noce_try_abs): Likewise.
(noce_try_sign_mask): Likewise.
(noce_try_bitop): Likewise.
(bbs_ok_for_cmove_arith): New function.
(noce_emit_all_but_last): Likewise.
(noce_emit_insn): Likewise.
(noce_emit_bb): Likewise.
(noce_try_cmove_arith): Handle non-simple basic blocks.
(insn_valid_noce_process_p): New function.
(contains_mem_rtx_p): Likewise.
(bb_valid_for_noce_process_p): Likewise.
(noce_process_if_block): Allow non-simple basic blocks
where appropriate.
* gcc.dg/ifcvt-1.c: New test.
* gcc.dg/ifcvt-2.c: Likewise.
* gcc.dg/ifcvt-3.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227368
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Tue, 1 Sep 2015 11:50:19 +0000 (11:50 +0000)]
XFAIL gfortran.dg/execute_command_line_2.f90 (PR libfortran/67412)
PR libfortran/67412
* gfortran.dg/execute_command_line_2.f90: XFAIL execution on
*-*-solaris2.10.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227367
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Tue, 1 Sep 2015 10:51:43 +0000 (10:51 +0000)]
Tidy tree-ssa-dom.c: Use dom_valueize more.
* tree-ssa-dom.c (record_equivalences_from_phis,
record_equivalences_from_stmt, optimize_stmt): Use dom_valueize.
(lookup_avail_expr): Likewise, and remove comment and unused temp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227366
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 1 Sep 2015 10:38:17 +0000 (10:38 +0000)]
* config/msp430/msp430.opt (mcpu): Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227364
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Tue, 1 Sep 2015 10:32:24 +0000 (10:32 +0000)]
[AArch64] Fix FAIL: gcc.target/aarch64/target_attr_crypto_ice_1.c (internal compiler error)
* config/aarch64/aarch64.c (aarch64_set_current_function):
Re-layout any vector parameters have non-simd layout.
* config/aarch64/aarch64-builtins.c (aarch64_relayout_simd_param):
Delete.
(aarch64_simd_expand_args): Delete call to the above.
* gcc.target/aarch64/target_attr_crypto_ice_2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227363
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 1 Sep 2015 08:39:47 +0000 (08:39 +0000)]
/cp
2015-09-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61753
* decl.c (smallest_type_quals_location): New.
(check_special_function_return_type): Use the latter; add int and
const location_t* parameters.
(grokdeclarator): Adjust check_special_function_return_type call.
/testsuite
2015-09-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/61753
* g++.dg/other/pr61753.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227361
138bc75d-0d04-0410-961f-
82ee72b054a4
vapier [Tue, 1 Sep 2015 01:04:29 +0000 (01:04 +0000)]
gcc: doc: add missing space in asan-stack desc
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227360
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 1 Sep 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227359
138bc75d-0d04-0410-961f-
82ee72b054a4
jwlemke [Mon, 31 Aug 2015 16:15:01 +0000 (16:15 +0000)]
Update my e-mail address.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227352
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Mon, 31 Aug 2015 14:03:34 +0000 (14:03 +0000)]
* configure.ac: For spu-*-* targets, set have_fcntl to no.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227348
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 31 Aug 2015 14:02:43 +0000 (14:02 +0000)]
PR libfortran/47571
* acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Reinstate.
* configure.ac: Call LIBGFOR_GTHREAD_WEAK again.
* config.h.in: Regenerate.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227347
138bc75d-0d04-0410-961f-
82ee72b054a4
glisse [Mon, 31 Aug 2015 14:02:00 +0000 (14:02 +0000)]
Move some comparison simplifications to match.pd
2015-08-31 Marc Glisse <marc.glisse@inria.fr>
gcc/
* tree.h (zerop): New function.
* tree.c (zerop): Likewise.
(element_precision): Handle expressions.
* match.pd (define_predicates): Add zerop.
(x <= +Inf): Fix comment.
(abs (x) == 0, A & C == C, A & C != 0): Converted from ...
* fold-const.c (fold_binary_loc): ... here. Remove.
gcc/testsuite/
* gcc.dg/tree-ssa/cmp-1.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227346
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 31 Aug 2015 14:01:45 +0000 (14:01 +0000)]
2015-08-31 Richard Biener <rguenther@suse.de>
lto/
* lto.c (compare_tree_sccs_1): Compare DECL_ABSTRACT_ORIGIN.
* lto-symtab.c (lto_symtab_merge): Merge DECL_POSSIBLY_INLINED flag.
(lto_symtab_prevailing_decl): Do not replace a decl that didn't
participate in merging with something else.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227345
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 31 Aug 2015 14:00:16 +0000 (14:00 +0000)]
2015-08-31 Richard Biener <rguenther@suse.de>
PR middle-end/67381
* genmatch.c (dt_node::gen_kids): Also treat matches as barrier.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227344
138bc75d-0d04-0410-961f-
82ee72b054a4
glisse [Mon, 31 Aug 2015 13:58:03 +0000 (13:58 +0000)]
Move some complex simplifications to match.pd
2015-08-31 Marc Glisse <marc.glisse@inria.fr>
gcc/
* match.pd (SIN, COS, TAN, COSH): Reorder for consistency.
(CEXPI): New operator list.
(real (conj (x)), imag (conj (x)), real (x +- y), real (cexpi (x)),
imag (cexpi (x)), conj (conj (x)), conj (complex (x, y))):
Converted from ...
* fold-const.c (fold_unary_loc, fold_binary_loc): ... here. Remove.
gcc/testsuite/
* gcc.dg/tree-ssa/complex-7.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227343
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 31 Aug 2015 13:48:29 +0000 (13:48 +0000)]
Reimplement rewrite_virtuals_into_loop_closed_ssa
2015-08-31 Tom de Vries <tom@codesourcery.com>
* tree-ssa-loop-manip.c (find_uses_to_rename_stmt)
(find_uses_to_rename_bb, find_uses_to_rename): Add and handle use_flags
parameter.
(find_uses_to_rename_def, find_uses_to_rename_in_loop): New function.
(rewrite_into_loop_closed_ssa_1): New function, factored out of ...
(rewrite_into_loop_closed_ssa): ... here.
(replace_uses_in_dominated_bbs): Remove function.
(rewrite_virtuals_into_loop_closed_ssa): Reimplement using
rewrite_into_loop_closed_ssa_1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227342
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Mon, 31 Aug 2015 13:45:48 +0000 (13:45 +0000)]
* cfganal.c (pre_and_rev_post_order_compute_fn): Correctly
enter entry and exit blocks for reverse post order.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227341
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 31 Aug 2015 11:48:11 +0000 (11:48 +0000)]
2015-08-31 Richard Biener <rguenther@suse.de>
lto/
* lto-symtab.c (lto_symtab_prevailing_decl): Remove redundant
test, do not replace a non-builtin with a builtin.
* lto.c (compare_tree_sccs_1): Do not merge things we stream
as builtins vs. non-builtins.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227339
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 31 Aug 2015 11:47:30 +0000 (11:47 +0000)]
2015-08-31 Richard Biener <rguenther@suse.de>
* lto-streamer.h (lto_location_cache::cached_location::sysp): Add.
(lto_location_cache::current_sysp): Likewise.
(output_block::current_sysp): Likewise.
* lto-streamer-in.c (lto_location_cache::cmp_loc): Compare sysp.
(lto_location_cache::apply_location_cache): Properly record
system header locations.
(lto_location_cache::input_location): Input whether a file
is a system header.
* lto-streamer-out.c (lto_output_location): Stream whether a file
is a system header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227338
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Mon, 31 Aug 2015 11:19:42 +0000 (11:19 +0000)]
Avoid strndup in gcc.c (PR bootstrap/67363)
PR bootstrap/67363
* gcc.c (env_manager::xput): Replace strndup by xstrndup.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227337
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 31 Aug 2015 10:54:36 +0000 (10:54 +0000)]
PR fortran/54833
* trans.c (gfc_call_free): Don't check if pointer is NULL.
* trans.h (gfc_call_free): Adjust comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227336
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 31 Aug 2015 10:37:30 +0000 (10:37 +0000)]
PR libfortran/47571
* acinclude.m4 (LIBGFOR_GTHREAD_WEAK): Remove.
(LIBGFOR_CHECK_WEAKREF): New test.
* configure.ac: Call LIBGFOR_CHECK_WEAKREF instead of
LIBGFOR_GTHREAD_WEAK.
* config.h.in: Regenerate.
* configure: Regenerate.
* intrinsics/system_clock.c: Use SUPPORTS_WEAKREF instead of
SUPPORTS_WEAK and GTHREAD_USE_WEAK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227335
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 31 Aug 2015 09:12:15 +0000 (09:12 +0000)]
Improve function header comments in tree-ssa-loop-manip.c
2015-08-31 Tom de Vries <tom@codesourcery.com>
* tree-ssa-loop-manip.c (find_uses_to_rename_use)
(find_uses_to_rename_stmt, find_uses_to_rename_bb, find_uses_to_rename):
Improve function header comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227334
138bc75d-0d04-0410-961f-
82ee72b054a4
collison [Mon, 31 Aug 2015 03:19:48 +0000 (03:19 +0000)]
Rename [su]sum_widen to widen_[su]sum to reflect correct standard names.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227333
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 31 Aug 2015 01:58:48 +0000 (01:58 +0000)]
compiler: Check for invalid UTF8 in Go comments.
Fixes golang/go#11527.
Reviewed-on: https://go-review.googlesource.com/13905
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227332
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Mon, 31 Aug 2015 01:02:47 +0000 (01:02 +0000)]
[gcc]
2015-08-30 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (swap_web_entry): Enlarge
special_handling bitfield.
(special_handling_values): Add SH_XXPERMDI and SH_CONCAT.
(rtx_is_swappable_p): Add handling for vec_select/vec_concat form
that represents a general xxpermdi.
(insn_is_swappable_p): Add handling for vec_concat of two
doublewords, which maps to a specific xxpermdi.
(adjust_xxpermdi): New function.
(adjust_concat): Likewise.
(handle_special_swappables): Call adjust_xxpermdi and
adjust_concat.
(dump_swap_insn_table): Handle SH_XXPERMDI and SH_CONCAT.
[gcc/testsuite]
2015-08-30 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.target/powerpc/swaps-p8-19.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227331
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Mon, 31 Aug 2015 00:18:32 +0000 (00:18 +0000)]
* [SH] config.gcc (supported_defaults): Handle sh[123456ble]*-*-* instead of sh[123456ble]-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227330
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 31 Aug 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227329
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 30 Aug 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227326
138bc75d-0d04-0410-961f-
82ee72b054a4
trippels [Sat, 29 Aug 2015 18:51:26 +0000 (18:51 +0000)]
Fix c++/67371 (issues with throw in constexpr)
As PR67371 shows gcc currently rejects all throw statements in
constant-expressions, even when they are never executed.
PR c++/67371
* constexpr.c (potential_constant_expression_1): Remove IF_STMT
case. Move label to COND_EXPR case. Remove checking of
SWITCH_STMT_BODY.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227323
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sat, 29 Aug 2015 15:52:43 +0000 (15:52 +0000)]
2015-08-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/67367
* gfortran.dg/read_dir.f90: New test. May fail on some platforms.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227321
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Sat, 29 Aug 2015 15:38:39 +0000 (15:38 +0000)]
2015-08-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/67367
* io/unix.c (buf_read): Check for error condition and if found
return the error code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227320
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 29 Aug 2015 13:17:05 +0000 (13:17 +0000)]
* acinclude.m4: Remove LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT.
* configure.ac: Remove checks for strcasestr, execl, close,
getrlimit, readlink, getppid, powl, erfl, j0l, j1l, y0l, y1l,
tgammal, and lgammal.
* config.h.in: Regenerate.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227319
138bc75d-0d04-0410-961f-
82ee72b054a4
aesok [Sat, 29 Aug 2015 13:10:43 +0000 (13:10 +0000)]
Remove redundant use of REG_CLASS_NAMES maros
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227318
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 29 Aug 2015 13:01:54 +0000 (13:01 +0000)]
* io/unix.c (min): Remove unused macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227317
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 29 Aug 2015 08:03:01 +0000 (08:03 +0000)]
* trans.c (gfc_call_malloc, gfc_allocate_using_malloc,
gfc_allocate_using_lib, gfc_allocate_allocatable,
gfc_call_realloc): Simplify code.
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_trans_auto_array_allocation, gfc_conv_array_parameter): Do not
convert gfc_call_free() argument.
* trans-expr.c (gfc_conv_string_tmp, gfc_conv_procedure_call,
fcncall_realloc_result): Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227316
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sat, 29 Aug 2015 07:07:51 +0000 (07:07 +0000)]
Handle mix/max pointer reductions in parloops
2015-08-29 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/46193
* omp-low.c (omp_reduction_init): Handle pointer type for min or max
clause.
* gcc.dg/autopar/pr46193.c: New test.
* testsuite/libgomp.c/pr46193.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227315
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 29 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227314
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 28 Aug 2015 20:46:43 +0000 (20:46 +0000)]
PR fortran/53668
* intrinsic.c (add_functions, add_subroutines): Remove resolution
functions for FREE and MALLOC.
* intrinsic.h (gfc_resolve_malloc, gfc_resolve_free): Remove.
* iresolve.c (gfc_resolve_malloc, gfc_resolve_free): Remove.
* trans-intrinsic.c (conv_intrinsic_free,
gfc_conv_intrinsic_malloc): New functions.
* intrinsics/malloc.c: Adapt comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227311
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Fri, 28 Aug 2015 19:52:28 +0000 (19:52 +0000)]
* gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c: Simply
use exit code for failure.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227310
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Fri, 28 Aug 2015 19:04:45 +0000 (19:04 +0000)]
* gcc/testsuite/gcc.dg/torture/matrix-1.c: Use plain printf.
* gcc/testsuite/gcc.dg/torture/matrix-2.c: Likewise.
* gcc/testsuite/gcc.dg/torture/matrix-5.c: Likewise.
* gcc/testsuite/gcc.dg/torture/matrix-6.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-1.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-2.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-3.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-4.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-5.c: Likewise.
* gcc/testsuite/gcc.dg/torture/transpose-6.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227309
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 28 Aug 2015 16:23:12 +0000 (16:23 +0000)]
[PATCH][lto/66752] Fix missed FSM jump thread
PR lto/66752
* tree-ssa-threadedge.c (simplify_conrol_stmt_condition): If we are
unable to find X NE 0 in the tables, return X as the simplified
condition.
(fsm_find_control_statement_thread_paths): If nodes in NEXT_PATH are
in VISISTED_BBS, then return failure. Else add nodes from NEXT_PATH
to VISISTED_BBS.
* tree-ssa-threadupdate.c (duplicate_thread_path): Fix up edge flags
after removing the control flow statement and unnecessary edges.
PR lto/66752
* gcc.dg/tree-ssa/pr66752-2.c: New test.
* gcc.dg/torture/pr66752-1.c: New test
* g++.dg/torture/pr66752-2.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227307
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Fri, 28 Aug 2015 15:04:17 +0000 (15:04 +0000)]
Revert: completely_scalarize arrays as well as records
gcc/:
Revert:
2015-08-27 Alan Lawrence <alan.lawrence@arm.com>
PR tree-optimization/67283
* tree-sra.c (type_consists_of_records_p): Rename to...
(scalarizable_type_p): ...this, add case for ARRAY_TYPE.
(completely_scalarize_record): Rename to...
(completely_scalarize): ...this, add ARRAY_TYPE case, move some
code to:
(scalarize_elem): New.
gcc/testsuite/:
Revert:
2015-08-27 Alan Lawrence <alan.lawrence@arm.com>
* gcc.dg/tree-ssa/sra-15.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227303
138bc75d-0d04-0410-961f-
82ee72b054a4
jgreenhalgh [Fri, 28 Aug 2015 14:57:57 +0000 (14:57 +0000)]
[Patch] Add to the libgfortran/newlib bodge to "detect" ftruncate support in ARM/AArch64/SH
* configure.ac: Auto-detect newlib function support unless we
know there are issues when configuring for a host.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227301
138bc75d-0d04-0410-961f-
82ee72b054a4
abennett [Fri, 28 Aug 2015 13:35:01 +0000 (13:35 +0000)]
MIPS: Add the lo register to the clobber list in the madd-8.c and msub-8.c testcases.
The lo register is not listed in the clobber list in the inline asm statement
for the madd-8.c and msub-8.c testcases. This means that when building for the
n64 ABI GCC is free to use the lo register instead of the stack when
saving/restoring the clobbered registers. Then then means that it decides to
use the msub/madd instruction to perform the "x - y * z" operation rather than
using mul; addu/subu which the test is looking for.
testsuite/
* gcc.target/mips/madd-8.c: Add lo register to clobber list.
* gcc.target/mips/msub-8.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227299
138bc75d-0d04-0410-961f-
82ee72b054a4
davids [Fri, 28 Aug 2015 10:11:27 +0000 (10:11 +0000)]
2015-08-28 David Sherwood <david.sherwood@arm.com>
* MAINTAINERS: Add myself.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227297
138bc75d-0d04-0410-961f-
82ee72b054a4
jiwang [Fri, 28 Aug 2015 08:53:37 +0000 (08:53 +0000)]
[AArch64] Rename SYMBOL_SMALL_GOTTPREL to SYMBOL_SMALL_TLSIE
2015-08-28 Jiong Wang <jiong.wang@arm.com>
* config/aarch64/aarch64-protos.h (aarch64_symbol_context): Rename
SYMBOL_SMALL_GOTTPREL to SYMBOL_SMALL_TLSIE.
(aarch64_symbol_type): Likewise.
* config/aarch64/aarch64.c (aarch64_load_symref_appropriately):
Likewise.
(aarch64_expand_mov_immediate): Likewise.
(aarch64_print_operand): Likewise.
(aarch64_classify_tls_symbol): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227294
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 28 Aug 2015 07:47:37 +0000 (07:47 +0000)]
2015-08-28 Richard Biener <rguenther@suse.de>
* cgraphunit.c (symbol_table::compile): Move early debug generation
and finish...
(symbol_table::finalize_compilation_unit): ... back here and
add a !seen_error () guard.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227293
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Fri, 28 Aug 2015 02:35:21 +0000 (02:35 +0000)]
PR libstdc++/67362
* include/bits/regex_scanner.tcc (_Scanner<>::_M_scan_normal):
Always returns ordinary char token if the char isn't
considered a special char.
* testsuite/28_regex/regression.cc: New test file for collecting
regression testcases from, typically, bugzilla.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227289
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 28 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227288
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 27 Aug 2015 23:09:37 +0000 (23:09 +0000)]
compiler: Report unused variables initialized to function literals.
Fixes golang/go#12317.
Reviewed-on: https://go-review.googlesource.com/13908
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227285
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 27 Aug 2015 22:41:55 +0000 (22:41 +0000)]
compiler: Allow multiple blank label definitions.
Fixes golang/go#12316.
Reviewed-on: https://go-review.googlesource.com/13907
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227284
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Thu, 27 Aug 2015 22:13:43 +0000 (22:13 +0000)]
2015-08-27 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* lib/target-supports.exp (check-effective_target_vect_double):
Enable for Power targets with VSX hardware available.
* gfortran.dg/vect/O3-pr49957.f: Replace vect_no_align with
vect_no_align && { ! vect_hw_misalign }.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227283
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Thu, 27 Aug 2015 21:59:06 +0000 (21:59 +0000)]
fix compile without ISL
* toplev.c (process_options): Do not use flag_loop_block,
flag_loop_interchange, and flag_loop_strip_mine. Add check for
flag_loop_optimize_isl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227282
138bc75d-0d04-0410-961f-
82ee72b054a4
pmarlier [Thu, 27 Aug 2015 20:06:46 +0000 (20:06 +0000)]
* MAINTAINERS: Add myself.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227279
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Thu, 27 Aug 2015 19:07:04 +0000 (19:07 +0000)]
remove -floop-* flags
2015-08-27 Sebastian Pop <s.pop@samsung.com>
* Makefile.in (OBJS): Remove graphite-blocking.o and
graphite-interchange.o.
* common.opt (floop-strip-mine, floop-interchange, floop-block):
Alias of floop-nest-optimize.
* doc/invoke.texi (floop-strip-mine, floop-interchange, floop-block):
Document as alias of -floop-nest-optimize.
* graphite-blocking.c: Remove.
* graphite-interchange.c: Remove.
* graphite-optimize-isl.c: Include dumpfile.h.
(getScheduleForBand): Add dump for tiled loops. Use
PARAM_LOOP_BLOCK_TILE_SIZE instead of hard coded constant.
* graphite-poly.c (scop_max_loop_depth): Remove.
(print_scattering_function_1): Remove.
(print_scattering_function): Remove.
(print_scattering_functions): Remove.
(debug_scattering_function): Remove.
(debug_scattering_functions): Remove.
(apply_poly_transforms): Remove use of flag_loop_block,
flag_loop_strip_mine, and flag_loop_interchange.
(new_poly_bb): Remove use of PBB_TRANSFORMED, PBB_SAVED, and
PBB_ORIGINAL.
(print_pdr_access_layout): Remove.
(print_pdr): Print ISL representation.
(new_scop): Remove use of SCOP_ORIGINAL_SCHEDULE,
SCOP_TRANSFORMED_SCHEDULE, and SCOP_SAVED_SCHEDULE.
(free_scop): Same.
(openscop_print_pbb_domain): Remove.
(print_pbb): Remove call to print_scattering_function.
(openscop_print_scop_context): Remove.
(print_scop_context): Do not print matrices anymore.
(print_scop): Do not print SCOP_ORIGINAL_SCHEDULE and
SCOP_TRANSFORMED_SCHEDULE.
(print_isl_set): Add printing of a new line.
(print_isl_map): Same.
(print_isl_aff): Same.
(print_isl_constraint): Same.
(loop_to_lst): Remove.
(scop_to_lst): Remove.
(lst_indent_to): Remove.
(print_lst): Remove.
(debug_lst): Remove.
(dot_lst_1): Remove.
(dot_lst): Remove.
(reverse_loop_at_level): Remove.
(reverse_loop_for_pbbs): Remove.
* graphite-poly.h (pdr_dim_iter_domain): Remove.
(pdr_nb_params): Remove.
(pdr_alias_set_dim): Remove.
(pdr_subscript_dim): Remove.
(pdr_iterator_dim): Remove.
(pdr_parameter_dim): Remove.
(same_pdr_p): Remove.
(struct poly_scattering): Remove.
(struct poly_bb): Remove _original, _transformed, _saved.
(PBB_DOMAIN, PBB_ORIGINAL, PBB_ORIGINAL_SCATTERING): Remove.
(PBB_TRANSFORMED, PBB_TRANSFORMED_SCATTERING, PBB_SAVED): Remove.
(PBB_NB_LOCAL_VARIABLES): Remove.
(PBB_NB_SCATTERING_TRANSFORM): Remove.
(schedule_to_scattering): Remove.
(number_of_write_pdrs): Remove.
(pbb_dim_iter_domain): Remove.
(pbb_nb_params): Remove.
(pbb_nb_scattering_orig): Remove.
(pbb_nb_scattering_transform): Remove.
(pbb_nb_dynamic_scattering_transform): Remove.
(pbb_nb_local_vars): Remove.
(pbb_iterator_dim): Remove.
(pbb_parameter_dim): Remove.
(psco_scattering_dim): Remove.
(psct_scattering_dim): Remove.
(psct_local_var_dim): Remove.
(psco_iterator_dim): Remove.
(psct_iterator_dim): Remove.
(psco_parameter_dim): Remove.
(psct_parameter_dim): Remove.
(psct_dynamic_dim): Remove.
(psct_static_dim): Remove.
(psct_add_local_variable): Remove.
(new_lst_loop): Remove.
(new_lst_stmt): Remove.
(free_lst): Remove.
(copy_lst): Remove.
(lst_add_loop_under_loop): Remove.
(lst_depth): Remove.
(lst_dewey_number): Remove.
(lst_dewey_number_at_depth): Remove.
(lst_pred): Remove.
(lst_succ): Remove.
(lst_find_pbb): Remove.
(find_lst_loop): Remove.
(lst_find_first_pbb): Remove.
(lst_empty_p): Remove.
(lst_find_last_pbb): Remove.
(lst_contains_p): Remove.
(lst_contains_pbb): Remove.
(lst_create_nest): Remove.
(lst_remove_from_sequence): Remove.
(lst_remove_loop_and_inline_stmts_in_loop_father): Remove.
(lst_niter_for_loop): Remove.
(pbb_update_scattering): Remove.
(lst_update_scattering_under): Remove.
(lst_update_scattering): Remove.
(lst_insert_in_sequence): Remove.
(lst_replace): Remove.
(lst_substitute_3): Remove.
(lst_distribute_lst): Remove.
(lst_remove_all_before_including_pbb): Remove.
(lst_remove_all_before_excluding_pbb): Remove.
(struct scop): Remove original_schedule, transformed_schedule, and
saved_schedule.
(SCOP_ORIGINAL_SCHEDULE, SCOP_TRANSFORMED_SCHEDULE): Remove.
(SCOP_SAVED_SCHEDULE): Remove.
(poly_scattering_new): Remove.
(poly_scattering_free): Remove.
(poly_scattering_copy): Remove.
(store_scattering_pbb): Remove.
(store_lst_schedule): Remove.
(restore_lst_schedule): Remove.
(store_scattering): Remove.
(restore_scattering_pbb): Remove.
(restore_scattering): Remove.
* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons):
Remove scattering_dimensions. Do not use pbb_dim_iter_domain:
compute the scattering polyhedron dimension from the dimension of
pbb->domain.
(build_scop_scattering): Update call to
build_pbb_scattering_polyhedrons.
(build_poly_scop): Remove call to scop_to_lst.
* graphite.c (graphite_transform_loops): Add call to print_scop.
(gate_graphite_transforms): Remove use of flag_loop_block,
flag_loop_interchange, and flag_loop_strip_mine.
testsuite/
* gcc.dg/graphite/graphite.exp (interchange_files, block_files):
Replaced by opt_files, compile with -floop-nest-optimize.
* g++.dg/graphite/graphite.exp: Same.
* gfortran.dg/graphite/graphite.exp: Same.
* gcc.dg/graphite/block-0.c: Adjust pattern.
* gcc.dg/graphite/block-1.c: Same.
* gcc.dg/graphite/block-3.c: Same.
* gcc.dg/graphite/block-4.c: Same.
* gcc.dg/graphite/block-5.c: Same.
* gcc.dg/graphite/block-6.c: Same.
* gcc.dg/graphite/block-7.c: Same.
* gcc.dg/graphite/block-8.c: Same.
* gcc.dg/graphite/block-pr47654.c: Same.
* gcc.dg/graphite/interchange-0.c: Same.
* gcc.dg/graphite/interchange-1.c: Same.
* gcc.dg/graphite/interchange-10.c: Same.
* gcc.dg/graphite/interchange-11.c: Same.
* gcc.dg/graphite/interchange-12.c: Same.
* gcc.dg/graphite/interchange-13.c: Same.
* gcc.dg/graphite/interchange-14.c: Same.
* gcc.dg/graphite/interchange-15.c: Same.
* gcc.dg/graphite/interchange-3.c: Same.
* gcc.dg/graphite/interchange-4.c: Same.
* gcc.dg/graphite/interchange-5.c: Same.
* gcc.dg/graphite/interchange-6.c: Same.
* gcc.dg/graphite/interchange-7.c: Same.
* gcc.dg/graphite/interchange-8.c: Same.
* gcc.dg/graphite/interchange-9.c: Same.
* gcc.dg/graphite/interchange-mvt.c: Same.
* gcc.dg/graphite/pr37485.c: Same.
* gcc.dg/graphite/uns-block-1.c: Same.
* gcc.dg/graphite/uns-interchange-12.c: Same.
* gcc.dg/graphite/uns-interchange-14.c: Same.
* gcc.dg/graphite/uns-interchange-15.c: Same.
* gcc.dg/graphite/uns-interchange-9.c: Same.
* gcc.dg/graphite/uns-interchange-mvt.c: Same.
* gfortran.dg/graphite/interchange-3.f90: Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227277
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 27 Aug 2015 19:06:59 +0000 (19:06 +0000)]
compiler: Don't record dependencies of invalid redefinitions.
The gofrontend would crash when trying to find the initialization
order of a variable list where one of the listed variables was an
invalid redefinition of another in a call statement. This patch
fixes initialization from call statements to consider invalid
redefinitions before recording dependency information.
Fixes golang/go#11543.
Reviewed-on: https://go-review.googlesource.com/13895
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227276
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Thu, 27 Aug 2015 19:06:56 +0000 (19:06 +0000)]
remove -floop-unroll-and-jam
* common.opt (floop-unroll-and-jam): Make alias of floop-nest-optimize.
* doc/invoke.texi (-floop-unroll-and-jam): Document as alias of
-floop-nest-optimize.
* graphite-isl-ast-to-gimple.c (generate_luj_sepclass_opt): Remove.
(generate_luj_sepclass): Remove.
(generate_luj_options): Remove.
(set_options): Remove opt_luj.
(scop_to_isl_ast): Remove opt_luj.
* graphite-optimize-isl.c (getScheduleForBand): Remove check for
flag_loop_unroll_jam.
(getPrevectorMap_full): Remove.
(getScheduleForBandList): Remove map_sepcl.
(getScheduleMap): Same.
(apply_schedule_map_to_scop): Remove sepcl.
(optimize_isl): Same.
* graphite-poly.c (apply_poly_transforms): Remove check for
flag_loop_unroll_jam.
(new_poly_bb): Remove map_sepclass.
* graphite-poly.h (struct poly_bb): Same.
* graphite.c (gate_graphite_transforms): Remove flag_loop_unroll_jam.
* params.def (PARAM_LOOP_UNROLL_JAM_SIZE)
(PARAM_LOOP_UNROLL_JAM_DEPTH): Remove.
* toplev.c (process_options): Remove flag_loop_unroll_jam.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227275
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 27 Aug 2015 19:05:19 +0000 (19:05 +0000)]
PR libstdc++/67374
* include/bits/range_access.h (valarray, begin, end): Declare.
* testsuite/26_numerics/valarray/range_access.cc: Test const
overloads.
* testsuite/26_numerics/valarray/range_access2.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227274
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 27 Aug 2015 18:29:37 +0000 (18:29 +0000)]
PR target/67317
* config/i386/i386.md (*add<mode>3_cc): Remove insn pattern.
(addqi3_cc): Ditto.
(UNSPEC_ADD_CARRY): Remove.
(addqi3_cconly_overflow): New expander.
(*add<dwi>3_doubleword): Split to add<mode>3_cconly_overflow.
Adjust for changed add<mode>3_carry.
(*neg<dwi>2_doubleword): Adjust for changed add<mode>3_carry.
(*sub<dwi>3_doubleword): Adjust for changed sub<mode>3_carry.
(<plusminus_insn><mode>3_carry): Remove expander.
(*<plusminus_insn><mode>3_carry): Split insn pattern to
add<mode>3_carry and sub<mode>3_carry.
(plusminus_carry_mnemonic): Remove code attribute.
(add<mode>3_carry): Canonicalize insn pattern.
(*addsi3_carry_zext): Ditto.
(sub<mode>3_carry): Ditto.
(*subsi3_carry_zext): Ditto.
(adcx<mode>3): Remove insn pattern.
(addcarry<mode>): New insn pattern.
(subborrow<mode>): Ditto.
* config/i386/i386.c (ix86_expand_strlensi_unroll_1): Use
gen_addqi3_cconly_overflow instead of gen_addqi3_cc.
(ix86_expand_builtin) <case IX86_BUILTIN_SBB32,
case IX86_BUILTIN_SBB64, case IX86_BUILTIN_ADDCARRY32,
case IX86_BUILTIN_ADDCARRY64>: Use CODE_FOR_subborrowsi,
CODE_FOR_subborrowdi, CODE_FOR_addcarrysi and CODE_FOR_addcarrydi.
Rewrite expander to not clobber carry flag chains.
testsuite/ChangeLog:
PR target/67317
* gcc.target/i386/pr67317-1.c: New test.
* gcc.target/i386/pr67317-2.c: Ditto.
* gcc.target/i386/pr67317-3.c: Ditto.
* gcc.target/i386/pr67317-4.c: Ditto.
* gcc.target/i386/adx-addcarryx32-1.c: Also scan for adcl.
* gcc.target/i386/adx-addcarryx32-2.c: Also scan for adcq.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227271
138bc75d-0d04-0410-961f-
82ee72b054a4
pthaugen [Thu, 27 Aug 2015 18:20:45 +0000 (18:20 +0000)]
* config/rs6000/vector.md (vec_shr_<mode>): Fix to do a shift
instead of a rotate.
* gcc.target/powerpc/vec-shr.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227270
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Thu, 27 Aug 2015 17:07:35 +0000 (17:07 +0000)]
PR middle-end/67005
* tree-ssa-dce.c (remove_dead_stmt): Also schedule fixup if removing
an entry into an irreducible region.
* gcc.dg/torture/pr67005.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227268
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Thu, 27 Aug 2015 16:15:45 +0000 (16:15 +0000)]
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227266
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Thu, 27 Aug 2015 15:40:10 +0000 (15:40 +0000)]
completely_scalarize arrays as well as records
gcc/:
PR tree-optimization/67283
* tree-sra.c (type_consists_of_records_p): Rename to...
(scalarizable_type_p): ...this, add case for ARRAY_TYPE.
(completely_scalarize_record): Rename to...
(completely_scalarize): ...this, add ARRAY_TYPE case, move some code to:
(scalarize_elem): New.
gcc/testsuite/:
* gcc.dg/tree-ssa/sra-15.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227265
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Thu, 27 Aug 2015 15:28:39 +0000 (15:28 +0000)]
Refactor completely_scalarize_var
* tree-sra.c (completely_scalarize_var): Rename to...
(create_total_scalarization_access): ... Here. Drop call to
completely_scalarize_record.
(analyze_all_variable_accesses): Replace completely_scalarize_var
with create_total_scalarization_access and completely_scalarize_record.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227264
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Thu, 27 Aug 2015 14:26:08 +0000 (14:26 +0000)]
Update copyrights
libvtv:
Update copyrights.
contrib:
* update-copyright.py (GCCCmdLine): Add libvtv.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227262
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Thu, 27 Aug 2015 14:08:19 +0000 (14:08 +0000)]
* configure.ac: Remove [disable-shared] argument to LT_INIT.
Remove setting PIC_FLAG when building as target library.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227261
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Thu, 27 Aug 2015 13:56:39 +0000 (13:56 +0000)]
[RS6000] Correct constraints for ior<mode>_mask
ior<mode>_mask always splits to rtl matching rotl<mode>3_insert. The
latter requires one of its input operands match the output, so let
reload/lra know the equivalent operand match must also occur for
ior<mode>_mask.
PR target/67356
* config/rs6000/rs6000.md (ior<mode>_mask): Use constraint "0"
for operand 1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227260
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 27 Aug 2015 13:27:02 +0000 (13:27 +0000)]
2015-08-27 Richard Biener <rguenther@suse.de>
* passes.c (rest_of_decl_compilation): Guard early_global_decl
call with !seen_error ().
* cgraphunit.c (symbol_table::finalize_compilation_unit): Move
early debug generation and finish...
(symbol_table::compile): ... here to put it after a !seen_error ()
guard.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227258
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 27 Aug 2015 12:12:41 +0000 (12:12 +0000)]
Provide nearly complete std::locale support for DragonFly
2015-08-27 John Marino <gnugcc@marino.st>
* acinclude.m4 (*-*-dragonfly*): Change 7 locale support files
from generic to new DragonFly versions.
* configure: Regenerate.
* config/locale/dragonfly/c_locale.cc: Improve locale support.
* config/locale/dragonfly/ctype_members.cc: Likewise.
* config/os/bsd/dragonfly/ctype_configure_char.cc: Likewise.
* config/os/bsd/dragonfly/os_defines.h: Define _GLIBCXX_USE_C99.
* config/locale/dragonfly/c_locale.h: New.
* config/locale/dragonfly/codecvt_members.cc: New.
* config/locale/dragonfly/collate_members.cc: New.
* config/locale/dragonfly/monetary_members.cc: New.
* config/locale/dragonfly/numeric_members.cc: New.
* config/locale/dragonfly/time_members.cc: New.
* config/locale/dragonfly/time_members.h: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227257
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Thu, 27 Aug 2015 12:12:31 +0000 (12:12 +0000)]
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227256
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Thu, 27 Aug 2015 12:00:32 +0000 (12:00 +0000)]
Use __cxa_atexit on Solaris 12+
* config.gcc (*-*-solaris2*): Enable default_use_cxa_atexit on
Solaris 12+.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227255
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Thu, 27 Aug 2015 11:26:18 +0000 (11:26 +0000)]
Avoid unstructured procfs on Solaris
* os_dep.c [GC_SOLARIS_THREADS] (GC_dirty_init): Use
/proc/<pid>/pagedata instead of PIOCOPENPD.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227254
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Thu, 27 Aug 2015 10:08:54 +0000 (10:08 +0000)]
2015-08-27 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Andre Vieira <andre.simoesdiasvieira@arm.com>
gcc/
* config/aarch64/aarch64.md (*condjump): Handle functions > 1 MiB.
(*cb<optab><mode>1): Likewise.
(*tb<optab><mode>1): Likewise.
(*cb<optab><mode>1): Likewise.
* config/aarch64/iterators.md (inv_cb): New code attribute.
(inv_tb): Likewise.
* config/aarch64/aarch64.c (aarch64_gen_far_branch): New.
* config/aarch64/aarch64-protos.h (aarch64_gen_far_branch): New.
gcc/testsuite/
* gcc.target/aarch64/long_branch_1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227253
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 27 Aug 2015 08:02:57 +0000 (08:02 +0000)]
2015-08-27 Richard Biener <rguenther@suse.de>
* ipa.c (cgraph_build_static_cdtor_1): Set DECL_IGNORED_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227252
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Thu, 27 Aug 2015 07:38:36 +0000 (07:38 +0000)]
S/390: Add emit_barrier() after trap
gcc/ChangeLog
* config/s390/s390.c (s390_emit_prologue): Add emit_barrier() after
trap to fix ICE.
gcc/testsuite/ChangeLog
* gcc.target/s390/
20150826-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227251
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Thu, 27 Aug 2015 00:44:11 +0000 (00:44 +0000)]
compiler: Don't crash on invalid builtin calls.
Fixes golang/go#11544.
Reviewed-on: https://go-review.googlesource.com/13893
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227245
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 27 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227244
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 26 Aug 2015 21:27:09 +0000 (21:27 +0000)]
Ensure std::generate_canonical doesn't return 1.
2015-08-26 Edward Smith-Rowland <3dw4rd@verizon.net>
Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/64351
PR libstdc++/63176
* include/bits/random.tcc (generate_canonical): Loop until we get a
result less than one.
* testsuite/26_numerics/random/uniform_real_distribution/operators/
64351.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227233
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 26 Aug 2015 21:27:00 +0000 (21:27 +0000)]
Only set std::enable_shared_from_this member once.
* include/bits/shared_ptr.h (__enable_shared_from_this_helper): Use
nullptr.
* include/bits/shared_ptr_base.h (weak_ptr::_M_assign): Don't assign
if ownership is already shared with a shared_ptr object.
(__enable_shared_from_this_helper): Use nullptr.
* testsuite/20_util/enable_shared_from_this/members/const.cc: New.
* testsuite/20_util/enable_shared_from_this/members/reinit.cc: New.
* testsuite/20_util/enable_shared_from_this/requirements/
explicit_instantiation.cc: Instantiate with const and incomplete types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227232
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Wed, 26 Aug 2015 21:23:04 +0000 (21:23 +0000)]
Delete extra blank line
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227231
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Wed, 26 Aug 2015 21:22:23 +0000 (21:22 +0000)]
2015-08-26 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000-protos.h (rs6000_expand_float128_convert):
Add declaration.
* config/rs6000/rs6000.c (rs6000_emit_le_vsx_store): Fix a
comment.
(rs6000_cannot_change_mode_class): Add support for IEEE 128-bit
floating point in VSX registers.
(rs6000_output_move_128bit): Always print out the set insn if we
can't generate an appropriate 128-bit move.
(rs6000_generate_compare): Add support for IEEE 128-bit floating
point in VSX registers comparisons.
(rs6000_expand_float128_convert): Likewise.
* config/rs6000/predicates.md (int_reg_operand_not_pseudo): New
predicate for only GPR hard registers.
* config/rs6000/rs6000.md (FP): Add IEEE 128-bit floating point
modes to iterators. Add new iterators for moving 128-bit values in
scalar FPR registers and VSX registers.
(FMOVE128): Likewise.
(FMOVE128_FPR): Likewise.
(FMOVE128_GPR): Likewise.
(FMOVE128_VSX): Likewise.
(FLOAT128_SFDFTF): New iterators for IEEE 128-bit floating point
in VSX registers.
(IFKF): Likewise.
(IBM128): Likewise.
(TFIFKF): Likewise.
(RELOAD): Add IEEE 128-bit floating point modes.
(signbittf2): Convert TF insns to add support for new IEEE 128-bit
floating point in VSX registers modes.
(signbit<mode>2, IBM128 iterator): Likewise.
(mov<mode>_64bit_dm, FMOVE128_FPR iterator): Likewise.
(mov<mode>_32bit, FMOVE128_FPR iterator): Likewise.
(negtf2): Likewise.
(neg<mode>2, TFIFKF iterator): Likewise.
(negtf2_internal): Likewise.
(abstf2): Likewise.
(abs<mode>2, TFIFKF iterator): Likewise.
(ieee_128bit_negative_zero): New IEEE 128-bit floating point in
VSX insn support for negate, absolute value, and negative absolute
value.
(ieee_128bit_vsx_neg<mode>2): Likewise.
(ieee_128bit_vsx_neg<mode>2_internal): Likewise.
(ieee_128bit_vsx_abs<mode>2): Likewise.
(ieee_128bit_vsx_abs<mode>2_internal): Likewise.
(ieee_128bit_vsx_nabs<mode>2): Likewise.
(ieee_128bit_vsx_nabs<mode>2_internal): Likewise.
(FP128_64): Update pack/unpack 128-bit insns for IEEE 128-bit
floating point in VSX registers.
(unpack<mode>_dm): Likewise.
(unpack<mode>_nodm): Likewise.
(pack<mode>): Likewise.
(unpackv1ti): Likewise.
(unpack<mode>, FMOVE128_VSX iterator): Likewise.
(packv1ti): Likewise.
(pack<mode>, FMOVE128_VSX iterator): Likewise.
(extenddftf2): Add support for IEEE 128-bit floating point in VSX
registers.
(extenddftf2_internal): Likewise.
(trunctfdf2): Likewise.
(trunctfdf2_internal2): Likewise.
(fix_trunc_helper): Likewise.
(fix_trunctfdi2"): Likewise.
(floatditf2): Likewise.
(floatuns<mode>tf2): Likewise.
(extend<FLOAT128_SFDFTF:mode><IFKF:mode>2): Likewise.
(trunc<IFKF:mode><FLOAT128_SFDFTF:mode>2): Likewise.
(fix_trunc<IFKF:mode><SDI:mode>2): Likewise.
(fixuns_trunc<IFKF:mode><SDI:mode>2): Likewise.
(float<SDI:mode><IFKF:mode>2): Likewise.
(floatuns<SDI:mode><IFKF:mode>2): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227230
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 26 Aug 2015 20:58:14 +0000 (20:58 +0000)]
try_emplace and insert_or_assign for Debug Mode.
* include/debug/map.h (map::try_emplace, map::insert_or_assign):
Define.
* include/debug/unordered_map (unordered_map::try_emplace,
unordered_map::insert_or_assign): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227229
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Wed, 26 Aug 2015 20:22:58 +0000 (20:22 +0000)]
libstdc++/66902 Make _S_debug_messages static.
PR libstdc++/66902
* src/c++11/debug.cc (_S_debug_messages): Give internal linkage.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227228
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 26 Aug 2015 19:18:51 +0000 (19:18 +0000)]
compiler: Don't crash on invalid arithmetic ops.
The gofrontend would crash after hitting an unreachable state while
trying to determine the type of an arithmetic expression involving
non-numeric values. Instead of crashing, it should fail gracefully
if the relevant error is already reported.
Fixes golang/go#11537.
Reviewed-on: https://go-review.googlesource.com/13793
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227227
138bc75d-0d04-0410-961f-
82ee72b054a4
renlin [Wed, 26 Aug 2015 17:37:42 +0000 (17:37 +0000)]
[PATCH][AARCH64]Add backend aarch64_bfi pattern.
2015-08-26 Renlin Li <renlin.li@arm.com>
gcc/
* config/aarch64/aarch64.md (aarch64_bfi): New pattern.
gcc/testsuite/
* gcc.target/aarch64/combine_bfi_1.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227226
138bc75d-0d04-0410-961f-
82ee72b054a4
jiwang [Wed, 26 Aug 2015 13:38:40 +0000 (13:38 +0000)]
[AArch64][TLSIE][2/2] Implement TLS IE for tiny model
2015-08-26 Marcus Shawcroft <marcus.shawcroft@arm.com>
Jiong Wang <jiong.wang@arm.com>
gcc/
* config/aarch64/aarch64.md (UNSPEC_GOTTINYTLS): New UNSPEC.
(tlsie_tiny_<mode>): New define_insn.
(tlsie_tiny_sidi): Likewise.
* config/aarch64/aarch64-protos.h (aarch64_symbol_type): Define
SYMBOL_TINY_TLSIE.
(aarch64_symbol_context): New comment for SYMBOL_TINY_TLSIE.
* config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Support
SYMBOL_TINY_TLSIE.
(aarch64_expand_mov_immediate): Likewise.
(aarch64_print_operand): Likewise.
(arch64_classify_tls_symbol): Likewise.
gcc/testsuite/
* gcc.target/aarch64/tlsie_tiny_1.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227220
138bc75d-0d04-0410-961f-
82ee72b054a4