Commit Graph

145205 Commits

Author SHA1 Message Date
Jakub Jelinek
9bc057c8da re PR middle-end/70245 (Miscompilation of ICU on i386 with atom tuning starting with r227382)
PR target/70245
	* rtl.h (replace_rtx): Add ALL_REGS argument.
	* rtlanal.c (replace_rtx): Likewise.  If true, use REGNO
	equality and assert mode is the same, instead of just rtx pointer
	equality.
	* config/i386/i386.md (mov + arithmetics with load peephole): Pass
	true as ALL_REGS argument to replace_rtx.

From-SVN: r234285
2016-03-17 12:53:53 +01:00
H.J. Lu
ea913779b0 Set flag_pic to flag_pie for PIE in LTO
Since PIE implies PIC, we should set flag_pic to flag_pie for PIE in
LTO.

	PR lto/70258
	* lto-lang.c (lto_post_options): Set flag_pic to flag_pie for
	PIE.

From-SVN: r234284
2016-03-17 04:07:10 -07:00
Ilya Enkovich
0c8b64cb58 match.pd (A + (B vcmp C ? 1 : 0) -> A - (B vcmp C)): Apply for boolean vector with vector mode only.
gcc/

	* match.pd (A + (B vcmp C ? 1 : 0) -> A - (B vcmp C)): Apply
	for boolean vector with vector mode only.
	(A - (B vcmp C ? 1 : 0) -> A + (B vcmp C)): Likewise.

gcc/testsuite/

	* gcc.target/i386/pr70251.c: New test.

From-SVN: r234283
2016-03-17 10:58:26 +00:00
Andreas Schwab
a7ceba7d02 Summary: libffi: define FFI_SIZEOF_JAVA_RAW for aarch64 ILP32
* src/aarch64/ffitarget.h (FFI_SIZEOF_JAVA_RAW) [__ILP32__]:
Define.

From-SVN: r234282
2016-03-17 10:47:58 +00:00
Marek Polacek
b1970801f4 re PR c++/70194 (missing -Waddress on constexpr pointer)
PR c++/70194
	* typeck.c (warn_for_null_address): New function.
	(cp_build_binary_op): Call it.

	* g++.dg/warn/constexpr-70194.C: New test.

From-SVN: r234281
2016-03-17 10:29:36 +00:00
Nick Clifton
b14bb68cce re PR target/70162 ([RX] const_int printing causes wrong code on 32 bit host)
PR target/70162
	* config/rx/rx.c (rx_print_integer): Print negative constants in
	decimal.

From-SVN: r234280
2016-03-17 10:16:38 +00:00
Jakub Jelinek
5adb7c859d re PR rtl-optimization/70261 (r234265 causes fails on rs6000)
PR target/70261
	* rtlanal.c (replace_rtx): Revert 2016-03-16 change.

From-SVN: r234279
2016-03-17 09:01:26 +01:00
Joseph Myers
e7c0c2b0db * fr.po: Update.
From-SVN: r234278
2016-03-17 00:21:09 +00:00
Joseph Myers
3eee7bbaba * fr.po: Update.
From-SVN: r234277
2016-03-17 00:20:21 +00:00
GCC Administrator
f90825ba56 Daily bump.
From-SVN: r234276
2016-03-17 00:16:12 +00:00
Richard Henderson
820c5eaa60 re PR middle-end/70240 (ICE: in gimplify_modify_expr, at gimplify.c:4854 with -ftree-vectorize)
PR middle-end/70240

  * gcc.c-torture/compile/pr70240.c: New.

From-SVN: r234273
2016-03-16 16:53:18 -07:00
Richard Henderson
8f66e7dc9e Revert r231575
PR middle-end/70240
  PR middle-end/68215
  2015-12-11  Eric Botcazou  <ebotcazou@adacore.com>
  * tree-vect-generic.c (tree_vec_extract): Remove GSI parameter.
  Do not gimplify the result.
  (do_unop): Adjust call to tree_vec_extract.
  (do_binop): Likewise.
  (do_compare): Likewise.
  (do_plus_minus): Likewise.
  (do_negate): Likewise.
  (expand_vector_condition): Likewise.
  (do_cond): Likewise.

Co-Authored-By: Richard Biener <rguenther@suse.de>

From-SVN: r234272
2016-03-16 16:53:10 -07:00
Richard Henderson
e93ed60e7b Gimplify vec_cond_expr with condition inside
PR middle-end/70240
  PR middle-end/68215
  PR tree-opt/68714
  * gimplify.c (gimplify_expr) [VEC_COND_EXPR]: Gimplify the
  first operand as is_gimple_condexpr.

Co-Authored-By: Richard Biener <rguenther@suse.de>

From-SVN: r234271
2016-03-16 16:53:01 -07:00
Richard Henderson
9e0218fcbe re PR target/70048 ([AArch64] Inefficient local array addressing)
PR target/70048

  * config/aarch64/aarch64.c (virt_or_elim_regno_p): New.
  (aarch64_classify_address): Use it.
  (aarch64_legitimize_address): Force all subexpressions of PLUS
  into registers.  Simplify as (sfp+const)+reg or (reg+reg)+const.

From-SVN: r234269
2016-03-16 14:23:05 -07:00
Jason Merrill
c5e003cfe4 re PR c++/70259 (-flifetime-dse=2 bug with empty bases)
PR c++/70259
	* decl.c (start_preparsed_function): Don't clobber an empty base.

From-SVN: r234267
2016-03-16 15:37:22 -04:00
Senthil Kumar Selvaraj
da0ad26300 20151204.c: Skip for avr.
2016-03-16  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>

    * gcc.c-torture/compile/20151204.c: Skip for avr.

From-SVN: r234266
2016-03-16 12:09:51 -06:00
Jakub Jelinek
c73d295c48 re PR middle-end/70245 (Miscompilation of ICU on i386 with atom tuning starting with r227382)
PR target/70245
	* rtlanal.c (replace_rtx): For REG, if from is a REG,
	return to even if only REGNO is equal, and assert
	mode is the same.

	* g++.dg/opt/pr70245.C: New test.
	* g++.dg/opt/pr70245.h: New file.
	* g++.dg/opt/pr70245-aux.cc: New file.

Co-Authored-By: Richard Biener <rguenther@suse.de>

From-SVN: r234265
2016-03-16 18:52:20 +01:00
Martin Sebor
b2794066f3 g++.dg/cpp1y/constexpr-instantiate.C: Correct DejaGnu directives.
From-SVN: r234264
2016-03-16 11:42:41 -06:00
Jeff Law
6ab71a0161 Fix bug ID in last commit
From-SVN: r234263
2016-03-16 11:03:45 -06:00
Jeff Law
4a276c32c1 re PR rtl-optimization/70224 (ICE: RTL flag check: CROSSING_JUMP_P used with unexpected rtx code 'insn' in relax_delay_slots, at reorg.c:3310)
PR rtl-optimization/70024
	* reorg.c (relax_delay_slots): Pass right argument to CROSSING_JUMP_P.

From-SVN: r234262
2016-03-16 10:58:12 -06:00
Richard Henderson
aa43616c59 re PR middle-end/70199 (Crash at -O2 when using labels.)
PR middle-end/70199

 * function.h (struct function): Add has_forced_label_in_static.
 * gimplify.c (force_labels_r): Set it.
 * lto-streamer-in.c (input_struct_function_base): Read it.
 * lto-streamer-out.c (output_struct_function_base): Write it.
 * tree-inline.c (has_label_address_in_static_1): Remove.
 (copy_forbidden): Remove fndecl parameter; test
 has_forced_label_in_static.
 (inline_forbidden_p): Update call to copy_forbidden.
 (tree_versionable_function_p): Likewise.
 * ipa-chkp.c (chkp_instrumentable_p): Likewise.
 (chkp_versioning): Likewise.
 * tree-inline.h (copy_forbidden): Update decl.

testsuite/
 * gcc.c-torture/compile/pr70199.c: New.

From-SVN: r234261
2016-03-16 09:50:18 -07:00
H.J. Lu
59608fe587 Run dos2unix on gcc.dg/uninit-19.c
* gcc.dg/uninit-19.c: Run dos2unix.

From-SVN: r234260
2016-03-16 09:14:34 -07:00
Marek Polacek
ab4c578f0c re PR c/70093 (Instancing function with VM return type cases internal compiler error in 'assign_stack_temp_for_type'.)
PR c/70093
	* c-typeck.c (build_function_call_vec): Create a TARGET_EXPR for
	nested functions returning VM types.

	* cgraphunit.c (cgraph_node::expand_thunk): Also build call to the
	function being thunked if the result type doesn't have fixed size.
	* gimplify.c (gimplify_modify_expr): Also set LHS if the result type
	doesn't have fixed size.

	* gcc.dg/nested-func-10.c: New test.
	* gcc.dg/nested-func-9.c: New test.

From-SVN: r234259
2016-03-16 15:51:47 +00:00
Jakub Jelinek
f5387e76b7 re PR tree-optimization/68714 (less folding of vector comparison)
PR tree-optimization/68714
	* gcc.dg/tree-ssa/pr68714.c: Add -w -Wno-psabi to dg-options.

From-SVN: r234258
2016-03-16 14:34:36 +01:00
Thomas Schwinge
ee2e7d5147 Nowadays, we use plain -fopenacc to enable OpenACC kernels processing
libgomp/
	* testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
	-ftree-parallelize-loops/-fopenacc changes.
	* testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
	Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
	* testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.

From-SVN: r234257
2016-03-16 14:10:20 +01:00
Rainer Orth
a5046f48b3 Save call-clobbered registers in _mcount on 32-bit Solaris/x86 (PR target/38239)
PR target/38239
	* config/sol2/gmon.c [__i386__] (_mcount): Save and restore
	call-clobbered registers.
	(internal_mcount): Remove __i386__ handling.

From-SVN: r234256
2016-03-16 11:57:02 +00:00
Andreas Schwab
197adb6983 Summary: boehm-gc: add support for aarch64 ILP32
* include/private/gcconfig.h [AARCH64] (ALIGNMENT, CPP_WORDSZ):
Define for __ILP32__.

From-SVN: r234255
2016-03-16 11:44:36 +00:00
Bin Cheng
446fd64280 tree-vect-loop.c (vect_analyze_loop_2): Fix wrong dump info by reporting malformed loop nest.
* tree-vect-loop.c (vect_analyze_loop_2): Fix wrong dump info by
	reporting malformed loop nest.

From-SVN: r234254
2016-03-16 10:57:34 +00:00
Tom de Vries
448476ff53 Safely use nodes[0] in possible_polymorphic_call_targets
2016-03-16  Tom de Vries  <tom@codesourcery.com>

	PR lto/70187
	* ipa-devirt.c (possible_polymorphic_call_targets): Move
	nodes.length () == 1 test to before first nodes[0] access.

From-SVN: r234253
2016-03-16 10:21:27 +00:00
Svante Signell
b462f86075 Makefile.in: Add support for x86 GNU/Hurd.
* gcc-interface/Makefile.in: Add support for x86 GNU/Hurd.
	* s-osinte-gnu.ads: New file.

From-SVN: r234252
2016-03-16 10:04:01 +00:00
Tom de Vries
7662b718e1 Add missing single_pred_p test in scop_detection::merge_sese
2016-03-16  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/68715
	* graphite-scop-detection.c (scop_detection::merge_sese): Add missing
	single_pred_p test.

	* gcc.dg/graphite/pr68715-2.c: New test.
	* gcc.dg/graphite/pr68715.c: New test.
	* gfortran.dg/graphite/pr68715.f90: New test.

From-SVN: r234251
2016-03-16 09:19:23 +00:00
Tom de Vries
be7ce7aefd Fix same_close_phi_node
2016-03-16  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/68809
	* graphite-scop-detection.c (same_close_phi_node): Test if result types
	are the same.

	* gcc.dg/graphite/pr68809-2.c: New test.
	* gcc.dg/graphite/pr68809.c: New test.

From-SVN: r234250
2016-03-16 09:19:12 +00:00
Jakub Jelinek
6651c93e42 re PR sanitizer/70147 (testcase from hana testsuite gets miscompiled with -fsanitize=undefined)
PR c++/70147
	* cp-ubsan.c (cp_ubsan_dfs_initialize_vtbl_ptrs): Conditionalize
	BINFO_VIRTUAL_P vtable clearing on current_in_charge_parm.

	* g++.dg/ubsan/pr70147-2.C (C::C): Initialize A base with invalid
	method call to i () as argument.  Adjust expected output.

From-SVN: r234249
2016-03-16 08:02:30 +01:00
Jakub Jelinek
1935f2506e re PR sanitizer/70147 (testcase from hana testsuite gets miscompiled with -fsanitize=undefined)
PR c++/70147
	* cp-ubsan.c (cp_ubsan_maybe_initialize_vtbl_ptrs): Temporarily
	set in_base_initializer.

	* g++.dg/ubsan/pr70147-1.C: New test.
	* g++.dg/ubsan/pr70147-2.C: New test.

From-SVN: r234248
2016-03-16 08:01:36 +01:00
Carlos O'Donell
b2de4950df Cleanup and expand on the 'leaf' function attribute documentation.
Describe the problems that a user might face with indirect functions
and ELF symbol interposition.

gcc/ChangeLog:

2016-03-16  Carlos O'Donell  <carlos@redhat.com>
	    Sandra Loosemore  <sandra@codesourcery.com>

	* doc/extend.texi (Common Function Attributes): Describe ifunc impact
	on leaf attribute. Mention ELF interposition problems.


Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>

From-SVN: r234247
2016-03-16 05:00:58 +00:00
Martin Sebor
ab1caa6e04 PR c++/58281 - Problem with explicitly instantiated constexpr template
PR c++/58281 - Problem with explicitly instantiated constexpr template
	functions

gcc/testsuite/ChangeLog:
2016-03-15  Martin Sebor  <msebor@redhat.com>

	PR c++/58281
	* g++.dg/cpp1y/constexpr-instantiate.C: Add new test.

From-SVN: r234246
2016-03-15 21:00:02 -06:00
GCC Administrator
960fcebd93 Daily bump.
From-SVN: r234245
2016-03-16 00:16:18 +00:00
John David Anglin
cb5d8ad174 pr68532.c: Add -fno-common option on hppa*-*-hpux*.
* gcc.c-torture/execute/pr68532.c: Add -fno-common option on
	hppa*-*-hpux*.

From-SVN: r234242
2016-03-16 00:11:28 +00:00
John David Anglin
b440dd405d ifcvt-4.c: Add hppa*64*-*-* to skip list.
* gcc.dg/ifcvt-4.c: Add hppa*64*-*-* to skip list.

From-SVN: r234241
2016-03-15 23:49:40 +00:00
John David Anglin
5c2a1bbbc2 re PR libfortran/69799 (FAIL: gfortran.dg/coarray_allocate_3.f08 at -O1 and above)
PR libfortran/69799
	* gfortran.dg/coarray_allocate_5.f08: Add "-latomic" option if
	libatomic_available.

From-SVN: r234240
2016-03-15 23:34:49 +00:00
Richard Henderson
64567cfd1d Fix compiling large files
* line-map.c (new_linemap): Make alloc_size a size_t.

From-SVN: r234239
2016-03-15 16:08:45 -07:00
Alan Modra
6585b2e2dd Fix thinko in indirect_jump_optimize
PR rtl-optimization/69195
	PR rtl-optimization/47992
	* ira.c (indirect_jump_optimize): Ignore artificial defs.
	Add comments.

From-SVN: r234235
2016-03-16 08:34:42 +10:30
Marek Polacek
42c729c52e re PR c++/70209 (ICE in strip_typedefs, at cp/tree.c:1377)
PR c++/70209
	* tree.c (strip_typedefs): Call strip_typedefs again on the
	DECL_ORIGINAL_TYPE result.

	* g++.dg/ext/attribute-may-alias-4.C: New test.

From-SVN: r234234
2016-03-15 21:10:11 +00:00
Jason Merrill
d1ccf407da re PR c++/70095 ([C++14] Link error on partially specialized variable template)
PR c++/70095
	* pt.c (instantiate_decl): Fix call to variable_template_p.

From-SVN: r234231
2016-03-15 15:37:37 -04:00
Jason Merrill
d4db81a273 Fix more P0184R0 references.
From-SVN: r234230
2016-03-15 15:37:32 -04:00
Jason Merrill
3f91db69ca re PR c++/70141 (template parameter not deducible in partial specialization of template inside template)
PR c++/70141
	* pt.c (for_each_template_parm_r): Always walk into TYPENAME_TYPE.

From-SVN: r234228
2016-03-15 15:21:44 -04:00
Alexander Monakov
82b1c550ee pr63384.C: Add -w to dg-options.
* g++.dg/pr63384.C: Add -w to dg-options.  Remove '-toggle'
	in -fvar-tracking-assignments-toggle flag.

From-SVN: r234227
2016-03-15 21:11:14 +03:00
Eric Botcazou
2396a7b193 re PR middle-end/69513 (LTO bootstrap fails with bootstrap-profiled during linking gnat1 in stagefeedback)
PR bootstrap/69513
	* dwarf2out.c (flush_limbo_die_list): Really flush the limbo list.

From-SVN: r234226
2016-03-15 17:55:39 +00:00
Pat Haugen
4ccbf3a66d ifcvt-4.c: Add -misel for powerpc*.
* gcc.dg/ifcvt-4.c: Add -misel for powerpc*.

From-SVN: r234224
2016-03-15 17:45:13 +00:00
Senthil Kumar Selvaraj
79f15a768e avr.md (rotl<mode>3): Set mode for operand 2.
* config/avr/avr.md (rotl<mode>3): Set mode for operand 2.

From-SVN: r234223
2016-03-15 19:21:49 +03:00