platform/upstream/linaro-gcc.git
9 years agogcc/
wilson [Mon, 6 Jul 2015 20:37:44 +0000 (20:37 +0000)]
gcc/
* graphite-blocking.c (HAVE_isl): Include <stddef.h>.
* graphite-dependencies.c, graphite-interchange.c,
graphite-isl-ast-to-gimple.c, graphite-optimize-isl.c, graphite-poly.c,
graphite-scop-detection.c, graphite-sese-to-poly.c, graphite.c:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225478 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-06 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 6 Jul 2015 18:19:41 +0000 (18:19 +0000)]
2015-07-06  Marc Glisse  <marc.glisse@inria.fr>

* match.pd: Remove element_mode inside HONOR_*.
(~ (-A) -> A - 1, ~ (A - 1) -> -A): Handle complex types.
(~X | X -> -1, ~X ^ X -> -1): Merge.
* tree.c (build_each_one_cst): New function.
* tree.h (build_each_one_cst): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225473 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoHandle PROCESSOR_IAMCU in ix86_target_macros_internal
hjl [Mon, 6 Jul 2015 17:51:12 +0000 (17:51 +0000)]
Handle PROCESSOR_IAMCU in ix86_target_macros_internal

Define __i586__/__pentium__ for -march=iamcu and __tune_iamcu__ for
-mtune=iamcu.

* config/i386/i386-c.c (ix86_target_macros_internal): Handle
PROCESSOR_IAMCU.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225471 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-06 Steve Ellcey <sellcey@imgtec.com>
sje [Mon, 6 Jul 2015 17:29:33 +0000 (17:29 +0000)]
2015-07-06  Steve Ellcey  <sellcey@imgtec.com>

* config.gcc <mips*-*-*>: Add fused-madd.opt.
* config/mips/mips.opt (mfused-madd): Remove.
* config/mips/mips.c (mips_rtx_costs): Update cost calculations.
* config/mips/mips.h (TARGET_MIPS8000): New.
(ISA_HAS_FP_MADD4_MSUB4): Remove.
(ISA_HAS_FP_MADDF_MSUBF): Remove.
(ISA_HAS_FP_MADD3_MSUB3): Remove.
(ISA_HAS_NMADD4_NMSUB4): Remove.
(ISA_HAS_NMADD3_NMSUB3): Remove.
(ISA_HAS_FUSED_MADD4): New.
(ISA_HAS_UNFUSED_MADD4): New.
(ISA_HAS_FUSED_MADDF): New.
(ISA_HAS_FUSED_MADD3): New.
* config/mips/mips.md: (fma<mode>4) Change from insn to expand.
(*fma<mode>4_madd3) New.
(*fma<mode>4_madd4) New.
(*fma<mode>4_maddf) New.
(fms<mode>4) New.
(*fms<mode>4_msub3) New.
(*fms<mode>4_msub4) New.
(fnma<mode>4) New.
(*fnma<mode>4_nmadd3) New.
(*fnma<mode>4_nmadd4) New.
(fnms<mode>4) New.
(*fnms<mode>4_nmsub3) New.
(*fnms<mode>4_nmsub4) New.
(*madd4<mode>) Modify to be unfused only.
(*msub4<mode>) Modify to be unfused only.
(*nmadd4<mode>) Modify to be unfused only.
(*nmsub4<mode>) Modify to be unfused only.
(*madd3<mode>) Remove.
(*msub3<mode>) Remove.
(*nmadd3<mode>) Remove.
(*nmsub3<mode>) Remove.
(*nmadd3<mode>_fastmath) Remove.
(*nmsub3<mode>_fastmath) Remove.
(*nmadd4<mode>_fastmath) Update condition.
(*nmsub4<mode>_fastmath) Update condition.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225468 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix eipa_src AAPCS issue (PR target/65956)
alalaw01 [Mon, 6 Jul 2015 17:06:00 +0000 (17:06 +0000)]
Fix eipa_src AAPCS issue (PR target/65956)

2015-05-05  Jakub Jelinek  <jakub@redhat.com>

PR target/65956
* gcc.c-torture/execute/pr65956.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225466 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM] PR/65956 AAPCS update for alignment attribute
alalaw01 [Mon, 6 Jul 2015 16:58:16 +0000 (16:58 +0000)]
[ARM] PR/65956 AAPCS update for alignment attribute

gcc/:
PR target/65956
* config/arm/arm.c (arm_needs_doubleword_align): Drop any outer
alignment attribute, exploring one level down for records and arrays.

gcc/testsuite/:

* gcc.target/arm/aapcs/align1.c: New.
* gcc.target/arm/aapcs/align_rec1.c: New.
* gcc.target/arm/aapcs/align2.c: New.
* gcc.target/arm/aapcs/align_rec2.c: New.
* gcc.target/arm/aapcs/align3.c: New.
* gcc.target/arm/aapcs/align_rec3.c: New.
* gcc.target/arm/aapcs/align4.c: New.
* gcc.target/arm/aapcs/align_rec4.c: New.
* gcc.target/arm/aapcs/align_vararg1.c: New.
* gcc.target/arm/aapcs/align_vararg2.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225465 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoOptimize i?86-*-elfiamcu for iamcu by default
hjl [Mon, 6 Jul 2015 16:56:11 +0000 (16:56 +0000)]
Optimize i?86-*-elfiamcu for iamcu by default

Default -mtune=/-march= to iamcu for i[34567]86-*-elfiamcu targets.

* config.gcc (x86_archs): Add iamcu.
(with_cpu): Default to iamcu for i[34567]86-*-elfiamcu.
(with_arch): Likewise.
* doc/invoke.texi: Add iamcu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225464 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/i386/i386.md (extv<mode>): Rename from extv. Use SWI24
uros [Mon, 6 Jul 2015 16:43:33 +0000 (16:43 +0000)]
* config/i386/i386.md (extv<mode>): Rename from extv.  Use SWI24
modes for operands 0 and 1.  Use SImode for operands 2 and 3.
Copy operand 1 to a temporary if !ext_register_operand.  Remove
ancient extract_bit_field workaround.
(*extv<mode>): Rename from *mov<mode>_extv_1.
(*extvqi): Rename from *movqi_extv_q.
(extzv<mode>): Rename from extzv.  Use SWI248 modes for
operands 0 and 1.  Use SImode for operands 2 and 3. Copy operand 1
to a temporary if !ext_register_operand.  Remove ancient
extract_bit_field workaround.
(*extzv<mode>): Rename from *mov<mode>_extzv_1.
(*extzvqi): Rename from *movqi_extzv_1.
(*testqi_ext_3): Remove modes from const_int_operand predicated
operands.  Add "n" constraint.
(*btsq, *btrq, *btcq): Remove mode from const_0_to_63 predicated
operand.  Add "J" constraint.
(*btsq, *btrq, *btcq peephole2s): Remove mode from
const_0_to_63 predicated operand.
(regmode): New insn attribute.
(*bt<mode>): Use SImode for operand 1.  Change operand 1 predicate
to nonmemory_operand.  Use regmode insn attribute.
(*jcc_bt<mode>_1): Convert operand 2 to SImode.
(*jcc_bt<mode>_mask): Remove mode from operand 3.
(*jcc_btsi_1, *jcc_btsi_mask_1): Remove patterns.
(tbm_bextri_<mode>): Remove modes from const_0_to_255 predicated
operands.  Use "N" constraint instead of "n".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225463 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-06 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 6 Jul 2015 16:33:38 +0000 (16:33 +0000)]
2015-07-06  Steven G. Kargl  <kargl@gcc.gnu.org>

* io.c (check_char_variable): New function.
(match_open_element, match_close_element, match_file_element,
match_dt_element, match_inquire_element, match_wait_element): Use it.

2015-07-06  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/iomsg_2.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225462 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM] fix movdi expander to avoid illegal ldrd/strd
alalaw01 [Mon, 6 Jul 2015 16:21:55 +0000 (16:21 +0000)]
[ARM] fix movdi expander to avoid illegal ldrd/strd

        * config/arm/arm.md (movdi): Avoid odd-number ldrd/strd in ARM state.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225461 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd -march=iamcu to optimize for IA MCU
hjl [Mon, 6 Jul 2015 15:17:44 +0000 (15:17 +0000)]
Add -march=iamcu to optimize for IA MCU

IA MCU is based on Intel Pentium ISA without x87 and passing parameters
in registers.  We want to optimize for IA MCU without changing existing
Pentium codegen.  This patch adds PROCESSOR_IAMCU for -march=iamcu,
which is based on -march=pentium with updated cost tables.

gcc/

PR target/66749
* config/i386/i386.c (iamcu_cost): New.
(m_IAMCU): Likewise.
(initial_ix86_arch_features): Disable X86_ARCH_CMOV for m_IAMCU.
(processor_target_table): Add an entry for "iamcu".
(processor_alias_table): Likewise.
(ix86_issue_rate): Handle PROCESSOR_IAMCU.
(ix86_adjust_cost): Likewise.
(ia32_multipass_dfa_lookahead): Likewise.
* config/i386/i386.h (processor_type): Add PROCESSOR_IAMCU.
* config/i386/x86-tune.def: Updated for m_IAMCU.

gcc/testsuite/

PR target/66749
* gcc.target/i386/pr66749.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225460 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-06 Richard Biener <rguenther@suse.de>
rguenth [Mon, 6 Jul 2015 14:41:22 +0000 (14:41 +0000)]
2015-07-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66772
* tree-ssa-ccp.c (ccp_visit_phi_node): Make sure that copy
values are available in the PHI node BB when there are
still unexecutable edges.

* gcc.dg/torture/pr66772-1.c: New testcase.
* gcc.dg/torture/pr66772-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225459 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMIPS: For micromips allow the near-far-3.c test to use the jals instruction to call...
abennett [Mon, 6 Jul 2015 14:16:14 +0000 (14:16 +0000)]
MIPS: For micromips allow the near-far-3.c test to use the jals instruction to call near_func.

testsuite/
* gcc.target/mips/near-far-3.c: Allow the call to near_func to use
the jals instruction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225457 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-06 Richard Biener <rguenther@suse.de>
rguenth [Mon, 6 Jul 2015 13:12:39 +0000 (13:12 +0000)]
2015-07-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66767
* tree-vect-loop-manip.c (vect_create_cond_for_align_checks):
Make sure to build the alignment test on a SSA name without
final alignment info valid only if the alignment test
evaluates to true.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225454 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix assert caused by bad cfg manipulation in bfin.
bernds [Mon, 6 Jul 2015 12:49:26 +0000 (12:49 +0000)]
Fix assert caused by bad cfg manipulation in bfin.

PR target/66620
* config/bfin/bfin.c (hwloop_optimize): Create new bb between jump and
loop start when inserting LSETUP.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225453 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAllow -mincoming-stack-boundary=3 with -mno-sse
hjl [Mon, 6 Jul 2015 11:50:47 +0000 (11:50 +0000)]
Allow -mincoming-stack-boundary=3 with -mno-sse

Similar to -mpreferred-stack-boundary=3, -mincoming-stack-boundary=3 is
allowed with -mno-sse in 64-bit mode.

gcc/

PR target/53383
* config/i386/i386.c (ix86_option_override_internal): Allow
-mincoming-stack-boundary=3 for 64-bit if SSE is disabled.

gcc/testsuite/

PR target/53383
* gcc.target/i386/pr53383-1.c: New file.
* gcc.target/i386/pr53383-2.c: Likewise.
* gcc.target/i386/pr53383-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225452 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRename read-md.c:decimal_string
ro [Mon, 6 Jul 2015 11:43:07 +0000 (11:43 +0000)]
Rename read-md.c:decimal_string

* read-md.c (decimal_string): Rename to ...
(md_decimal_string): ... this.
(handle_enum): Reflect this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225451 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] PR target/66731 Fix fnmul insn with -frounding-math
nsz [Mon, 6 Jul 2015 11:00:03 +0000 (11:00 +0000)]
[AArch64] PR target/66731 Fix fnmul insn with -frounding-math

gcc/Changelog:

2015-07-03  Szabolcs Nagy  <szabolcs.nagy@arm.com>

PR target/66731
* config/aarch64/aarch64.md (fnmul<mode>3): Handle -frounding-math.

gcc/testsuite/Changelog:

2015-07-03  Szabolcs Nagy  <szabolcs.nagy@arm.com>

* gcc.target/aarch64/fnmul-1.c: New.
* gcc.target/aarch64/fnmul-2.c: New.
* gcc.target/aarch64/fnmul-3.c: New.
* gcc.target/aarch64/fnmul-4.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225450 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-06 Richard Biener <rguenther@suse.de>
rguenth [Mon, 6 Jul 2015 10:37:33 +0000 (10:37 +0000)]
2015-07-06  Richard Biener  <rguenther@suse.de>

PR middle-end/66759
* match.pd: Add missing constraint of y to REAL_CST in
REAL_CST - x CMP y to y - CST CMP x simplification.

* gcc.dg/torture/pr66759.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225449 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdded missing Changelog entry for testsuite.
vehre [Mon, 6 Jul 2015 10:27:38 +0000 (10:27 +0000)]
Added missing Changelog entry for testsuite.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225448 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/testsuite/ChangeLog:
vehre [Mon, 6 Jul 2015 10:26:12 +0000 (10:26 +0000)]
gcc/testsuite/ChangeLog:

2015-07-06  Andre Vehreschild  <vehre@gmx.de>

PR fortran/58586
* gfortran.dg/alloc_comp_class_3.f03: New test.
* gfortran.dg/alloc_comp_class_4.f03: New test.

gcc/fortran/ChangeLog:

2015-07-06  Andre Vehreschild  <vehre@gmx.de>

PR fortran/58586
* resolve.c (resolve_symbol): Non-private functions in modules
with allocatable or pointer components are marked referenced
now. Furthermore is the default init especially for those
components now done in gfc_conf_procedure_call preventing
duplicate code.
* trans-decl.c (gfc_generate_function_code): Generate a fake
result decl for functions returning an object with allocatable
components and initialize them.
* trans-expr.c (gfc_conv_procedure_call): For value typed trees
use the tree without indirect ref. And for non-decl trees
add a temporary variable to prevent evaluating the tree
multiple times (prevent multiple function evaluations).
* trans.h: Made gfc_trans_structure_assign () protoype
available, which is now needed by trans-decl.c:gfc_generate_
function_code(), too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225447 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/66757
ebotcazou [Mon, 6 Jul 2015 08:43:58 +0000 (08:43 +0000)]
PR tree-optimization/66757
* match.pd: Add missing condition to ~X ^ C -> X ^ ~C.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225446 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libfortran/40267
fxcoudert [Mon, 6 Jul 2015 08:22:34 +0000 (08:22 +0000)]
PR libfortran/40267
* Makefile.am: Remove libgfortranbegin targets.
* Makefile.in: Regenerate.
* fmain.c: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225445 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibgomp: Add comment to clarify last_team usage
sh [Mon, 6 Jul 2015 07:21:48 +0000 (07:21 +0000)]
libgomp: Add comment to clarify last_team usage

libgomp/ChangeLog
2015-07-06  Sebastian Huber  <sebastian.huber@embedded-brains.de>

* libgomp.h (gomp_thread_pool): Comment last_team field.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225444 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/66720
amker [Mon, 6 Jul 2015 05:57:56 +0000 (05:57 +0000)]
PR tree-optimization/66720
* gcc.dg/vect/pr48052.c: Use dg-require-effective-target
vect_int_mult.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225443 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Mon, 6 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225440 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-05 Chung-Lin Tang <cltang@codesourcery.com>
sandra [Sun, 5 Jul 2015 21:49:08 +0000 (21:49 +0000)]
2015-07-05  Chung-Lin Tang  <cltang@codesourcery.com>
    Sandra Loosemore <sandra@codesourcery.com>

gcc/
* config/nios2/nios2-protos.h (nios2_symbol_ref_in_small_data_p):
Delete extern declaration.
(gprel_constant_p): Add extern declaration.
* config/nios2/constraints.md ("S"): Use gprel_constant_p
instead of nios2_symbol_ref_in_small_data_p.
* config/nios2/nios2.c (nios2_legitimate_address_p): Likewise.
(nios2_symbol_ref_in_small_data_p): Make static.
(gprel_constant_p): Make non-static.

gcc/testsuite/
* gcc.target/nios2/gprel-offset.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225437 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-05 François Dumont <fdumont@gcc.gnu.org>
fdumont [Sun, 5 Jul 2015 21:16:07 +0000 (21:16 +0000)]
2015-07-05  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Do not
rehash container.
* testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
Adapt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225436 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/fragments.texi (Target Fragment): Convert debian.org
gerald [Sun, 5 Jul 2015 20:36:22 +0000 (20:36 +0000)]
* doc/fragments.texi (Target Fragment): Convert debian.org
link to use https.
* doc/install.texi (Configuration): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225435 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/66718
jakub [Sun, 5 Jul 2015 12:14:41 +0000 (12:14 +0000)]
PR tree-optimization/66718
* tree-vect-stmts.c (vectorizable_call): Replace uses of
GOMP_SIMD_LANE outside of loop with vf - 1 rather than 0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225434 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/66718
jakub [Sun, 5 Jul 2015 12:11:57 +0000 (12:11 +0000)]
PR tree-optimization/66718
* tree-vect-stmts.c (vectorizable_assignment, vectorizable_store,
vectorizable_load, vectorizable_condition): Move vectype,
nunits, ncopies computation after checking what kind of statement
stmt is.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225433 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 08:02:59 +0000 (08:02 +0000)]
gcc/
* target-insns.def (extv, extzv, insv): New targetm instruction
patterns.
* optabs.c (get_extraction_insn): Use them instead of HAVE_*/gen_*
interface.
* recog.c (simplify_while_replacing): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225432 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 08:01:48 +0000 (08:01 +0000)]
gcc/
* target-insns.def (doloop_begin, doloop_end): New targetm
instruction patterns.
* loop-init.c: Include target.h.
(pass_loop2::gate): Use the new targetm patterns instead of
HAVE_*/gen_* interface.
(pass_rtl_doloop::gate): Likewise.
(pass_rtl_doloop::execute): Remove preprocessor condition.
* hw-doloop.c: Build unconditionally.
* loop-doloop.c: Likewise.
(doloop_optimize): Use the new targetm patterns instead of
HAVE_*/gen_* interface.
(doloop_modify): Likewise. Change type of doloop_seq to rtx_insn *.
* modulo-sched.c (doloop_register_get): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225431 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:59:14 +0000 (07:59 +0000)]
gcc/
* target-insns.def (clear_cache): New targetm instruction pattern.
* builtins.c (expand_builtin___clear_cache): Use it instead of
HAVE_*/gen_* interface.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225430 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:58:30 +0000 (07:58 +0000)]
gcc/
* target-insns.def (allocate_stack, check_stack, probe_stack)
(probe_stack_address, split_stack_prologue, split_stack_space_check):
New targetm instruction patterns.
* explow.c (allocate_dynamic_stack_space): Use them instead of
HAVE_*/gen_* interface.
(emit_stack_probe): Likewise.
(probe_stack_range): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225429 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:56:45 +0000 (07:56 +0000)]
gcc/
* target-insns.def (stack_protect_set, stack_protect_test): New
targetm instruction patterns.
* cfgexpand.c (stack_protect_prologue): Use them instead of
HAVE_*/gen_* interface.
* function.c (stack_protect_epilogue): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225428 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:55:03 +0000 (07:55 +0000)]
gcc/
* expr.h (gen_move_insn_uncast): Delete.
* expr.c (gen_move_insn_uncast): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225427 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:52:32 +0000 (07:52 +0000)]
gcc/
* target-insns.def (restore_stack_block, restore_stack_function)
(restore_stack_nonlocal, save_stack_block, save_stack_function)
(save_stack_nonlocal): New targetm instruction patterns.
* builtins.c (expand_builtin_apply): Use them instead of
HAVE_*/gen_* interface.
* explow.c (emit_stack_save, emit_stack_restore): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225426 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:51:07 +0000 (07:51 +0000)]
gcc/
* target-insns.def (trap): New targetm instruction pattern.
* builtins.c (expand_builtin_trap): Use it instead of HAVE_*/gen_*
interface.
* explow.c (allocate_dynamic_stack_space): Likewise.
* ifcvt.c (find_if_header): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225425 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:50:31 +0000 (07:50 +0000)]
gcc/
* target-insns.def (prefetch): New targetm instruction pattern.
* tree-ssa-loop-prefetch.c: Include targeth.
(tree_ssa_prefetch_arrays): Use prefetch targetm pattern instead
of HAVE_*/gen_* interface.
* builtins.c (expand_builtin_prefetch): Likewise.
* toplev.c (process_options): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225424 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:49:16 +0000 (07:49 +0000)]
gcc/
* target-insns.def (untyped_call, untyped_return): New targetm
instruction patterns.
* builtins.c (expand_builtin_apply): Use them instead of
HAVE_*/gen_* interface.
(result_vector): Define unconditionally.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225423 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:48:04 +0000 (07:48 +0000)]
gcc/
* target-insns.def (builtin_longjmp, builtin_setjmp_receiver)
(builtin_setjmp_setup, exception_receiver, nonlocal_goto)
(nonlocal_goto_receiver): New targetm instruction patterns.
* builtins.c (expand_builtin_setjmp_setup): Use them instead
of HAVE_*/gen_* interface.
(expand_builtin_setjmp_receiver): Likewise.
(expand_builtin_longjmp, expand_builtin_nonlocal_goto): Likewise.
* except.c (expand_dw2_landing_pad_for_region): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225422 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Sun, 5 Jul 2015 07:44:45 +0000 (07:44 +0000)]
gcc/
* target.def: Add code_for_* hooks.
* gentarget-def.c (def_target_insn): Add TARGET_CODE_FOR_* macros.
* defaults.h (HAVE_tablejump, gen_tablejump): Delete.
* target-insns.def (casesi, tablejump): New targetm instruction
patterns.
* expr.c (try_casesi): Use them instead of HAVE_*/gen_* interface.
(do_tablejump): Likewise.
* stmt.c (expand_switch_as_decision_tree_p): Likewise.
(expand_sjlj_dispatch_table): Likewise.
* targhooks.c (default_case_values_threshold): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225421 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-04 Sandra Loosemore <sandra@codesourcery.com>
sandra [Sun, 5 Jul 2015 02:56:18 +0000 (02:56 +0000)]
2015-07-04  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.c (save_reg, restore_reg): Use plus_constant.
Use rtx_insn * instead of rtx.
(nios2_emit_add_constant): Use rtx_insn * instead of rtx.
(nios2_expand_prologue, nios2_expand_epilogue): Likewise.
(nios2_call_tls_get_addr): Likewise.
(nios2_emit_expensive_div): Likewise.
(nios2_emit_move_sequence): Change return type to bool.
* config/nios2/nios2-protos.h (nios2_emit_move_sequence):
Change return type to bool.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225420 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sun, 5 Jul 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225419 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-04 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Sat, 4 Jul 2015 19:02:18 +0000 (19:02 +0000)]
2015-07-04  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR target/66747
        * config/mips/mips.c (mips_find_gp_ref): Handle instruction sequences.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225416 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-04 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Sat, 4 Jul 2015 15:37:04 +0000 (15:37 +0000)]
2015-07-04  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66725
* io.c (is_char_type): New function to test for BT_CHARACTER
(gfc_match_open, gfc_match_close, match_dt_element): Use it.

2015-07-03  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/66725
* gfortran.dg/pr66725.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225415 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/66114
danglin [Sat, 4 Jul 2015 13:42:55 +0000 (13:42 +0000)]
PR target/66114
* config/pa/pa.md (indirect_jump): Use pmode_register_operand instead
of register_operand.  Remove constraint.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225412 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-04 Marc Glisse <marc.glisse@inria.fr>
glisse [Sat, 4 Jul 2015 11:15:33 +0000 (11:15 +0000)]
2015-07-04  Marc Glisse  <marc.glisse@inria.fr>

* tree-cfg.c (verify_gimple_assign_ternary) <VEC_COND_EXPR>: Check
the first argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225411 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sat, 4 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225409 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 3 Jul 2015 18:56:40 +0000 (18:56 +0000)]
2015-07-03  Paolo Carlini  <paolo.carlini@oracle.com>

* attribs.c (decl_attributes): Guard inform with the return value
of the preceding warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225402 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
mrs [Fri, 3 Jul 2015 17:28:43 +0000 (17:28 +0000)]
2015-07-03  Carlos Sánchez de La Lama  <csanchezdll@gmail.com>

PR target/52482
* config/powerpc/sjlj.S: Port to Xcode 2.5.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225388 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch docs obvious AArch64] Fix position of -moverride documentation
jgreenhalgh [Fri, 3 Jul 2015 14:49:05 +0000 (14:49 +0000)]
[Patch docs obvious AArch64] Fix position of -moverride documentation

gcc/

* doc/invoke.texi (moverride): Move to correct section.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225384 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.dg/plugin/wide-int_plugin.c (test_double_int_round_udiv):
jason [Fri, 3 Jul 2015 14:42:21 +0000 (14:42 +0000)]
* gcc.dg/plugin/wide-int_plugin.c (test_double_int_round_udiv):
Avoid narrowing error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225383 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/66706
segher [Fri, 3 Jul 2015 14:37:26 +0000 (14:37 +0000)]
PR rtl-optimization/66706
* gcc.target/powerpc/shift-int.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225382 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/xml/manual/status_cxx2017.xml: Update status table.
redi [Fri, 3 Jul 2015 14:08:48 +0000 (14:08 +0000)]
* doc/xml/manual/status_cxx2017.xml: Update status table.
* doc/html/manual/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225380 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Ville Voutilainen <ville.voutilainen@gmail.com>
redi [Fri, 3 Jul 2015 14:08:37 +0000 (14:08 +0000)]
2015-07-03  Ville Voutilainen  <ville.voutilainen@gmail.com>

Implement std::experimental::fundamentals_v2::propagate_const.
* include/Makefile.am: Add propagate_const.
* include/Makefile.in: Regenerate.
* include/experimental/propagate_const: New.
* testsuite/experimental/propagate_const/assignment/copy.cc: Likewise.
* testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
* testsuite/experimental/propagate_const/assignment/move_neg.cc:
Likewise.
* testsuite/experimental/propagate_const/cons/copy.cc: Likewise.
* testsuite/experimental/propagate_const/cons/default.cc: Likewise.
* testsuite/experimental/propagate_const/cons/move.cc: Likewise.
* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
* testsuite/experimental/propagate_const/hash/1.cc: Likewise.
* testsuite/experimental/propagate_const/observers/1.cc: Likewise.
* testsuite/experimental/propagate_const/relops/1.cc: Likewise.
* testsuite/experimental/propagate_const/requirements1.cc: Likewise.
* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
* testsuite/experimental/propagate_const/swap/1.cc: Likewise.
* testsuite/experimental/propagate_const/typedefs.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225379 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Richard Biener <rguenther@suse.de>
rguenth [Fri, 3 Jul 2015 13:46:34 +0000 (13:46 +0000)]
2015-07-03  Richard Biener  <rguenther@suse.de>

* genmatch.c (commutative_tree_code, commutative_ternary_tree_code):
Copy from tree.c
(dt_operand::gen_gimple_expr): After valueizing operands
re-canonicalize operand order for commutative tree codes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225378 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd the missing file
hjl [Fri, 3 Jul 2015 13:08:35 +0000 (13:08 +0000)]
Add the missing file

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225377 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd IA MCU support to x86intrin.h
hjl [Fri, 3 Jul 2015 12:25:10 +0000 (12:25 +0000)]
Add IA MCU support to x86intrin.h

x86intrin.h has useful intrinsics for instructions for IA MCU.  This
patch adds __iamcu__ check to x86intrin.h and ia32intrin.h.

gcc/

PR target/66746.
* config/i386/ia32intrin.h (__crc32b): Don't define if __iamcu__
is defined.
(__crc32w): Likewise.
(__crc32d): Likewise.
(__rdpmc): Likewise.
(__rdtscp): Likewise.
(_rdpmc): Likewise.
(_rdtscp): Likewise.
* config/i386/x86intrin.h: Only include ia32intrin.h if __iamcu__
is defined.

gcc/testsuite/

PR target/66746.
* gcc.target/i386/pr66746.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225376 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Richard Biener <rguenther@suse.de>
rguenth [Fri, 3 Jul 2015 12:02:35 +0000 (12:02 +0000)]
2015-07-03  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_mathfn_compare): Remove.
(fold_inf_compare): Likewise.
(fold_comparison): Move floating point comparison simplifications...
* match.pd: ... to patterns here.  Introduce simple_comparisons
operator list and use it for patterns formerly in fold_comparison.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225375 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Fri, 3 Jul 2015 10:52:03 +0000 (10:52 +0000)]
2015-07-03  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/aarch64/advsimd-intrinsics/vget_lane.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225374 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 3 Jul 2015 09:42:52 +0000 (09:42 +0000)]
2015-07-03  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix component of my last ChangeLog entries.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225371 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch SRA] Fix PR66119 by calling get_move_ratio in SRA
jgreenhalgh [Fri, 3 Jul 2015 09:25:54 +0000 (09:25 +0000)]
[Patch SRA] Fix PR66119 by calling get_move_ratio in SRA

gcc/

PR tree-optimization/66119
* toplev.c (process_options): Don't set up default values for
the sra_max_scalarization_size_{speed,size} parameters.
* tree-sra (analyze_all_variable_accesses): If no values
have been set for the sra_max_scalarization_size_{speed,size}
parameters, call get_move_ratio to get target defaults.

gcc/testsuite/

PR tree-optimization/66119
* g++.dg/opt/pr66119.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225369 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-03 Richard Biener <rguenther@suse.de>
rguenth [Fri, 3 Jul 2015 07:55:10 +0000 (07:55 +0000)]
2015-07-03  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_binary_loc): Move (T)ptr & CST folding...
* match.pd: ... here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225368 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/37072
gerald [Fri, 3 Jul 2015 01:35:18 +0000 (01:35 +0000)]
PR target/37072
* doc/invoke.texi (i386 and x86-64 Options): -mno-fancy-math-387
is not actually the default on FreeBSD.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225367 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/66743
jason [Fri, 3 Jul 2015 00:45:34 +0000 (00:45 +0000)]
PR c++/66743
* pt.c (for_each_template_parm_r) [UNDERLYING_TYPE]: Use
TYPE_VALUES_RAW rather than TYPE_FIELDS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225365 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Fri, 3 Jul 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225364 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * pt.c (type_dependent_expression_p): Handle expressions
jason [Thu, 2 Jul 2015 23:16:51 +0000 (23:16 +0000)]
* pt.c (type_dependent_expression_p): Handle expressions
that refer to variable templates.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225361 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * trans-common.c: Include <map> after system.h.
dje [Thu, 2 Jul 2015 22:01:36 +0000 (22:01 +0000)]
    * trans-common.c: Include <map> after system.h.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225358 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for
redi [Thu, 2 Jul 2015 21:52:38 +0000 (21:52 +0000)]
* acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for
--with-default-libstdcxx-abi
* configure: Regenerate.
* doc/xml/manual/configure.xml: Document valid arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225356 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-02 Paul Thomas <pault@gcc.gnu.org>
pault [Thu, 2 Jul 2015 20:39:56 +0000 (20:39 +0000)]
2015-07-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/52846
* decl.c (get_proc_name): Make a partially populated interface
symbol to carry the characteristics of a module procedure and
its result.
(variable_decl): Declarations of dummies or results in the
abreviated form of module procedure is an error.
(gfc_match_import): IMPORT is not permitted in the interface
declaration of module procedures.
(match_attr_spec): Submodule variables have implicit save
attribute for F2008 onwards.
(gfc_match_prefix): Add 'module' as the a prefix and set the
module_procedure attribute.
(gfc_match_formal_arglist): For a module procedure keep the
interface formal_arglist from the interface, match new the
formal arguments and then compare the number and names of each.
(gfc_match_procedure): Add case COMP_SUBMODULE.
(gfc_match_function_decl, gfc_match_subroutine_decl): Set the
module_procedure attribute.
(gfc_match_entry, gfc_match_end):  Add case COMP_SUBMODULE. If
attr abr_modproc_decl is set, switch the message accordingly
for subroutines and functions.
(gfc_match_submod_proc): New function to match the abbreviated
style of submodule declaration.
* gfortran.h : Add ST_SUBMODULE and ST_END_SUBMODULE. Add the
attribute bits 'used_in_submodule' and 'module_procedure'. Add
the bit field 'abr_modproc_decl' to gfc_symbol. Add prototypes
for 'gfc_copy_dummy_sym', 'gfc_check_dummy_characteristics' and
'gfc_check_result_characteristics'.
* interface.c : Add the prefix 'gfc_' to the names of functions
'check_dummy(result)_characteristics' and all their references.
* match.h : Add prototype for 'gfc_match_submod_proc' and
'gfc_match_submodule'.
(check_sym_interfaces): A module procedure is not an error in
a module procedure statment in a generic interface.
* module.c (gfc_match_submodule): New function. Add handling
for the 'module_procedure' attribute bit.
(gfc_use_module): Make sure that a submodule cannot use itself.
* parse.c (decode_statement): Set attr has_'import_set' for
the interface declaration of module procedures. Handle a match
occurring in 'gfc_match_submod_proc' and a match for
'submodule'.
(gfc_enclosing_unit): Include the state COMP_SUBMODULE.
(gfc_ascii_statement): Add END SUBMODULE.
(accept_statement): Add ST_SUBMODULE.
(parse_spec): Disallow statement functions in a submodule
specification part.
(parse_contained): Add ST_END_SUBMODULE and COMP_SUBMODULE
twice each.
(get_modproc_result): Copy the result symbol of the interface.
(parse_progunit): Call it.
(set_syms_host_assoc): Make symbols from the ancestor module
and submodules use associated, as required by the standard and
set all private components public. Module procedures 'external'
attribute bit is reset and the 'used_in_submodule' bit is set.
(parse_module): If this is a submodule, use the ancestor module
and submodules. Traverse the namespace, calling
'set_syms_host_assoc'. Add ST_END_SUBMODULE and COMP_SUBMODULE.
* parse.h : Add COMP_SUBMODULE.
* primary.c (match_variable): Add COMP_SUBMODULE.
* resolve.c (compare_fsyms): New function to compare the dummy
characteristics of a module procedure with its interface.
(resolve_fl_procedure): Compare the procedure, result and dummy
characteristics of a module_procedure with its interface, using
'compare_fsyms' for the dummy arguments.
* symbol.c (gfc_add_procedure): Suppress the check for existing
procedures in the case of a module procedure.
(gfc_add_explicit_interface): Skip checks that must fail for
module procedures.
(gfc_add_type): Allow a new type to be added to module
procedures, their results or their dummy arguments.
(gfc_copy_dummy_sym): New function to generate new dummy args
and copy the characteristics from the interface.
* trans-decl.c (gfc_sym_mangled_function_id): Module procedures
must always have their names mangled as if they are symbols
coming from a declaration in a module.
(gfc_get_symbol_decl): Add 'used_in_submodule' to the assert.
(gfc_finish_var_decl): Symbols with the 'used_in_submodule' bit
set are set DECL_EXTERNAL as if they were use associated.

2015-07-02  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/52846
* gfortran.dg/submodule_1.f90: New test
* gfortran.dg/submodule_2.f90: New test
* gfortran.dg/submodule_3.f90: New test
* gfortran.dg/submodule_4.f90: New test
* gfortran.dg/submodule_5.f90: New test
* gfortran.dg/submodule_6.f90: New test
* gfortran.dg/submodule_7.f90: New test

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225354 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago/libcpp
paolo [Thu, 2 Jul 2015 18:54:41 +0000 (18:54 +0000)]
/libcpp
2015-07-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53690
* charset.c (_cpp_valid_ucn): Add cppchar_t * parameter and change
return type to bool.  Fix encoding of \u0000 and \U00000000 in C++.
(convert_ucn): Adjust call.
* lex.c (forms_identifier_p): Likewise.
* internal.h (_cpp_valid_ucn): Adjust declaration.

/gcc/testsuite
2015-07-02  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53690
* g++.dg/cpp/pr53690.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225353 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[gcc]
wschmidt [Thu, 2 Jul 2015 18:30:35 +0000 (18:30 +0000)]
[gcc]

2015-07-02  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000-builtin.def (CMPGE_16QI): New built-in
definition.
(CMPGE_8HI): Likewise.
(CMPGE_4SI): Likewise.
(CMPGE_2DI): Likewise.
(CMPGE_U16QI): Likewise.
(CMPGE_U8HI): Likewise.
(CMPGE_U4SI): Likewise.
(CMPGE_U2DI): Likewise.
(CMPLE_16QI): Likewise.
(CMPLE_8HI): Likewise.
(CMPLE_4SI): Likewise.
(CMPLE_2DI): Likewise.
(CMPLE_U16QI): Likewise.
(CMPLE_U8HI): Likewise.
(CMPLE_U4SI): Likewise.
(CMPLE_U2DI): Likewise.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
overloads for ALTIVEC_BUILTIN_VEC_CMPGE and
ALTIVEC_BUILTIN_VEC_CMPLE.
* config/rs6000/vector.md (vector_ge<mode>): Restrict to
floating-point vector modes.
(vector_nlt<mode>): New define_expand.
(vector_nltu<mode>): Likewise.
(vector_ngt<mode>): Likewise.
(vector_ngtu<mode>): Likewise.

[gcc/testsuite]

2015-07-02  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/vec-cmp.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225351 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Thu, 2 Jul 2015 17:29:04 +0000 (17:29 +0000)]
2015-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/56520
* match.c (gfc_match_name): Special case unary minus and plus.

2015-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/56520
* gfortran.dg/pr56520.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225349 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Thu, 2 Jul 2015 17:02:10 +0000 (17:02 +0000)]
2015-07-02  Steven G. Kargl   <kargl@gcc.gnu.org>

PR fortran/66545
* primary.c (match_sym_complex_part): Do not dereference NULL pointer.

2015-07-02  Steven G. Kargl   <kargl@gcc.gnu.org>

PR fortran/66545
* gfortran.dg/pr66545_1.f90: New test.
* gfortran.dg/pr66545_2.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225348 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/66706
segher [Thu, 2 Jul 2015 16:27:11 +0000 (16:27 +0000)]
PR rtl-optimization/66706
* combine.c (make_compound_operation): If an AND of SUBREG of
LSHIFTRT does not simplify, see if just the AND of SUBREG does.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225344 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRegenerate .pot files.
jsm28 [Thu, 2 Jul 2015 12:04:27 +0000 (12:04 +0000)]
Regenerate .pot files.

gcc/po:
* gcc.pot: Regenerate.

libcpp/po:
* cpplib.pot: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225313 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/:
alalaw01 [Thu, 2 Jul 2015 11:47:31 +0000 (11:47 +0000)]
gcc/:

* tree-pass.h (make_pass_ch_vect): New.
* passes.def: Add pass_ch_vect just before pass_if_conversion.

* tree-ssa-loop-ch.c (ch_base, pass_ch_vect, pass_data_ch_vect,
pass_ch::process_loop_p, pass_ch_vect::process_loop_p,
make_pass_ch_vect): New.
(pass_ch): Extend ch_base.

(pass_ch::execute): Move all but loop_optimizer_init/finalize to...
(ch_base::copy_headers): ...here.

gcc/testsuite/:

* gcc.dg/vect/vect-strided-a-u16-i4.c (main1): Narrow scope of x,y,z,w.
* gcc.dg/vect/vect-ifcvt-11.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225311 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-02 Richard Biener <rguenther@suse.de>
rguenth [Thu, 2 Jul 2015 11:33:16 +0000 (11:33 +0000)]
2015-07-02  Richard Biener  <rguenther@suse.de>

* builtins.c (get_pointer_alignment_1): Handle POINTER_PLUS_EXPR.
* fold-const.c (get_pointer_modulus_and_residue): Remove.
(fold_binary_loc): Implement (T)ptr & CST in terms of
get_pointer_alignment_1.
* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop):
Make sure to build the alignment test on a SSA name without
final alignment info valid only after the prologue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225310 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/cris/cris.md ("epilogue"): Remove condition.
hp [Thu, 2 Jul 2015 11:25:04 +0000 (11:25 +0000)]
* config/cris/cris.md ("epilogue"): Remove condition.
("prologue"): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225308 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-02 Richard Biener <rguenther@suse.de>
rguenth [Thu, 2 Jul 2015 08:38:42 +0000 (08:38 +0000)]
2015-07-02  Richard Biener  <rguenther@suse.de>

PR testsuite/66719
* gcc.dg/vect/bb-slp-32.c: Re-add XFAIL for targets not supporting
unaligned loads.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225303 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
uros [Thu, 2 Jul 2015 08:30:07 +0000 (08:30 +0000)]
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
* configure: Regenerate.
* config.h.in: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225302 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * testsuite/libgomp.c++/pr66702-1.C: Require
uros [Thu, 2 Jul 2015 08:17:20 +0000 (08:17 +0000)]
* testsuite/libgomp.c++/pr66702-1.C: Require
vect_simd_clones effective target.
* testsuite/libgomp.c++/pr66702-2.C: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225301 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-02 Richard Biener <rguenther@suse.de>
rguenth [Thu, 2 Jul 2015 07:37:35 +0000 (07:37 +0000)]
2015-07-02  Richard Biener  <rguenther@suse.de>

* tree-ssa-dom.c (build_and_record_new_cond): Add optional
parameter to record a condition that is false.
(record_conditions): When recording an extra NE_EXPR that is
true also record a EQ_EXPR that is false.

* gcc.dg/tree-ssa/ssa-dom-cse-4.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225299 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * libsupc++/guard.cc (__test_and_acquire): Use __p after __atomic_load
uros [Thu, 2 Jul 2015 05:58:12 +0000 (05:58 +0000)]
* libsupc++/guard.cc (__test_and_acquire): Use __p after __atomic_load
to avoid unused variable warning.
(__set_and_release): Use __p after __atomic_store to avoid unused
variable warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225298 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd prototype for exit
hjl [Thu, 2 Jul 2015 05:03:34 +0000 (05:03 +0000)]
Add prototype for exit

* gcc.target/i386/mpx/pr66568.c (exit): New prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225296 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * tree-ssa-loop-ivopts.c (struct ivopts_data): New field iv_obstack.
amker [Thu, 2 Jul 2015 04:32:05 +0000 (04:32 +0000)]
* tree-ssa-loop-ivopts.c (struct ivopts_data): New field iv_obstack.
(tree_ssa_iv_optimize_init): Initialize iv_obstack.
(alloc_iv): New parameter.  Allocate struct iv using obstack_alloc.
(set_iv, find_interesting_uses_address, add_candidate_1): New
argument to alloc_iv.
(find_interesting_uses_op, find_interesting_uses_cond): Don't
duplicate struct iv.
(free_loop_data): Don't free struct iv explicitly.
(tree_ssa_iv_optimize_finalize): Free iv_obstack.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225293 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Thu, 2 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225286 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* config/s390/tpf.h (LIBSTDCXX): Change to CPP1.
dj [Wed, 1 Jul 2015 20:18:59 +0000 (20:18 +0000)]
* config/s390/tpf.h (LIBSTDCXX): Change to CPP1.
(LIB_SPEC): Add.
(SUPPORTS_DISCRIMINATOR): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225278 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/c-family/
jason [Wed, 1 Jul 2015 19:25:50 +0000 (19:25 +0000)]
gcc/c-family/
* c-common.h (D_CXX11): Rename from D_CXX0X.
(RID_FIRST_CXX11, RID_LAST_CXX11): Rename from *_CXX0X.
* c-common.c: Adjust.
gcc/cp/
* lex.c (init_reswords): s/CXX0X/CXX11/.
* parser.c (cp_lexer_get_preprocessor_token): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225273 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/c-family/
jason [Wed, 1 Jul 2015 18:27:12 +0000 (18:27 +0000)]
gcc/c-family/
* c-opts.c (c_common_post_options): Default to C++14.
gcc/testsuite/
* lib/target-supports.exp (cxx_default): Set to C++14.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225272 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/c-family/
jason [Wed, 1 Jul 2015 17:59:25 +0000 (17:59 +0000)]
gcc/c-family/
* c-opts.c (c_common_post_options): Highest ABI level is now 10.
gcc/cp/
* mangle.c (write_CV_qualifiers_for_type, write_nested_name):
Attribute mangling is now -fabi-version=10.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225271 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/65945
jason [Wed, 1 Jul 2015 17:59:19 +0000 (17:59 +0000)]
PR c++/65945
* decl.c (cxx_init_decl_processing): Set TYPE_ALIGN of nullptr_t.
* class.c (layout_nonempty_base_or_field): Warn if that affects
the offset of a field.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225270 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/pa/linux-atomic.c (__kernel_cmpxchg): Reorder arguments to
danglin [Wed, 1 Jul 2015 17:42:20 +0000 (17:42 +0000)]
* config/pa/linux-atomic.c (__kernel_cmpxchg): Reorder arguments to
better match light-weight syscall argument order.
(__kernel_cmpxchg2): Likewise.
Adjust callers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225267 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoUse scan-rtl-dump in i386/vararg-loc.c
vries [Wed, 1 Jul 2015 17:33:01 +0000 (17:33 +0000)]
Use scan-rtl-dump in i386/vararg-loc.c

2015-07-01  Tom de Vries  <tom@codesourcery.com>

PR testsuite/66723
* gcc.target/i386/vararg-loc.c: Use scan-rtl-dump instead of
scan-assembler.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225266 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
rsandifo [Wed, 1 Jul 2015 16:48:30 +0000 (16:48 +0000)]
gcc/
PR bootstrap/66685
* rtl.c (classify_insn): Only return JUMP_INSN for parallel returns if
there are no CALLs in the same pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225263 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-01 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Wed, 1 Jul 2015 16:43:53 +0000 (16:43 +0000)]
2015-07-01  Thomas Koenig  <tkoenig@gcc.gnu.org>

* arith.c (gfc_arith_divide):  With -Winteger-division,
warn about contant integer division if there is a non-zero
remainder.
* invoke.texi:  Document -Winteger-division.
* lang.opt:  Add -Winteger-division.

2015-07-01  Thomas Koenig  <tkoenig@gcc.gnu.org>

* gfortran.dg/warn_conversion_8.f90:  New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225262 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/ChangeLog:
edlinger [Wed, 1 Jul 2015 16:10:30 +0000 (16:10 +0000)]
gcc/ChangeLog:
2015-07-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR rtl-optimization/61047
        * rtlanal.c (get_initial_register_offset): New function.
        (rtx_addr_can_trap_p_1): Check offsets of stack references.

testsuite/ChangeLog:
2015-07-01  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR rtl-optimization/61047
        * gcc.c-torture/execute/20150611-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225260 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-07-01 Richard Biener <rguenther@suse.de>
rguenth [Wed, 1 Jul 2015 13:18:49 +0000 (13:18 +0000)]
2015-07-01  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_comparison): Move X - Y CMP 0 -> X CMP Y,
X * C1 CMP 0 -> X CMP 0, X CMP X, ~X CMP ~Y -> Y CMP X and
~X CMP C -> X CMP' ~C to ...
* match.pd: ... patterns here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@225249 138bc75d-0d04-0410-961f-82ee72b054a4